使用说明
项目简介
McGravity 是一个 MCP (Model Context Protocol) 服务器的代理工具。它允许你将多个独立的 MCP 服务器连接到一个统一的服务入口。客户端只需连接 McGravity,即可访问后端多个 MCP 服务器提供的资源、工具和 Prompt,从而简化了客户端配置和管理,并为 MCP 服务提供了潜在的扩展性和负载均衡能力。McGravity 类似于 Web 服务器中的 Nginx 反向代理,但专为 MCP 协议设计。
主要功能点
- 统一接入点: 通过 McGravity 访问多个后端 MCP 服务器,客户端只需配置一个连接点。
- MCP 协议代理: 完整代理后端 MCP 服务器的 Resources, Tools, Prompts 等能力。
- 简化配置: 集中管理后端 MCP 服务器连接,减少客户端配置复杂性。
- 潜在的负载均衡: (当前版本可能为基础功能)为后端 MCP 服务器提供负载均衡,提高服务可用性。
- 灵活配置: 支持命令行参数和 YAML 配置文件进行服务器和后端 MCP 服务器配置。
安装步骤
- 安装 Bun: 确保你的系统已安装 Bun 运行时环境 (https://bun.sh/)。
- 克隆仓库: 将 McGravity 仓库克隆到本地。
- 安装依赖: 在仓库根目录下运行 'bun install' 命令安装项目依赖。
- 构建 (可选): 如果需要构建可执行文件,运行 'bun build src/index.ts --compile --outfile mcgravity'。你也可以直接使用 'bun run src/index.ts' 运行。
- Docker (可选): 可以使用 Docker 镜像 'tigranbs/mcgravity',无需本地构建。
服务器配置
MCP 客户端需要配置连接 McGravity 服务器的信息。以下是配置示例,假设 McGravity 运行在 'localhost:3001',并代理了两个 MCP 服务器 'http://mcp1.example.com' 和 'http://mcp2.example.com'。
配置示例 1: 命令行启动
{ "serverName": "McGravityProxy", "command": "./mcgravity", "args": [ "--host", "localhost", "--port", "3001", "http://mcp1.example.com", "http://mcp2.example.com" ], "notes": "请将 'http://mcp1.example.com' 和 'http://mcp2.example.com' 替换为你的后端 MCP 服务器地址。可以根据需要调整 host 和 port 参数。" }
配置示例 2: 使用配置文件启动 (config.yaml)
首先,创建 'config.yaml' 文件,配置后端 MCP 服务器信息,例如:
name: mcgravity-proxy version: 1.0.0 description: McGravity MCP Proxy Server servers: mcp-server-1: url: http://mcp1.example.com name: mcp1 version: 1.0.0 description: Backend MCP Server 1 mcp-server-2: url: http://mcp2.example.com name: mcp2 version: 1.0.0 description: Backend MCP Server 2
然后,MCP 客户端配置连接 McGravity:
{ "serverName": "McGravityProxy", "command": "./mcgravity", "args": ["--config", "config.yaml"], "notes": "确保 'config.yaml' 文件与 mcgravity 可执行文件在同一目录下,或者提供正确的配置文件路径。" }
基本使用方法
- 启动 McGravity 服务器: 根据你的配置选择命令行或配置文件方式启动 McGravity。例如,使用命令行 './mcgravity http://mcp1.example.com http://mcp2.example.com' 或使用配置文件 './mcgravity --config config.yaml'。
- 配置 MCP 客户端: 将你的 MCP 客户端连接到 McGravity 服务器的地址 (例如 'http://localhost:3001/')。
- 访问 MCP 服务: 客户端即可通过 McGravity 访问后端所有配置的 MCP 服务器提供的服务,例如列出工具、调用工具、读取资源、获取 Prompt 等。
信息
分类
网页与API