关于 MCP Proxy Server
MCP Proxy Server 将多个 MCP 资源服务器汇聚到统一接口,供需要集中访问多服务器能力的客户端使用。它统一转发资源、工具和提示词请求,并汇总响应。
主要功能
- 01连接并管理多个 MCP 服务
- 02汇总各服务器资源
- 03统一资源 URI 方案
- 04路由工具调用与提示词请求
- 05汇总多源响应
适用场景
- 01通过单一接口访问多个 MCP 服务
- 02将请求转发到对应后端
- 03集中获取不同服务器的资源与提示词
MCP 相关
该 MCP 服务连接多个 MCP 资源服务器,并向 MCP 客户端统一暴露其资源、工具和提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP Proxy 服务
一个 MCP 代理服务,可通过单一接口聚合并提供多个 MCP 资源服务。此服务充当中央枢纽,可以:
- 连接并管理多个 MCP 资源服务
- 通过统一接口提供它们合并后的功能
- 将请求路由到相应的后端服务
- 聚合来自多个来源的响应
功能
资源管理
- 发现并连接多个 MCP 资源服务
- 聚合所有已连接服务的资源
- 在各服务之间保持一致的 URI 方案
- 处理资源路由和解析
工具聚合
- 提供所有已连接服务的工具
- 将工具调用路由到相应的后端服务
- 维护工具状态并处理响应
提示词处理
- 聚合所有已连接服务的提示词
- 将提示词请求路由到相应的后端服务
- 处理来自多个服务的提示词响应
配置
此服务需要一个 JSON 配置文件,用于指定要连接的 MCP 服务。复制示例配置并根据需要进行修改:
cp config.example.json config.json
配置文件结构示例:
{
"servers": [
{
"name": "Server 1",
"transport": {
"command": "/path/to/server1/build/index.js"
}
},
{
"name": "Server 2",
"transport": {
"command": "server2-command",
"args": ["--option1", "value1"],
"env": ["SECRET_API_KEY"]
}
},
{
"name": "Example Server 3",
"transport": {
"type": "sse",
"url": "http://localhost:8080/sse"
}
}
]
}
运行服务时必须提供配置文件:
MCP_CONFIG_PATH=./config.json mcp-proxy-server
开发
安装依赖:
npm install
构建服务:
npm run build
开发时自动重新构建:
npm run watch
开发时持续运行:
# Stdio
npm run dev
# SSE
npm run dev:sse
安装
要与 Claude Desktop 配合使用,请添加服务配置:
MacOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-proxy": {
"command": "/path/to/mcp-proxy-server/build/index.js",
"env": {
"MCP_CONFIG_PATH": "/absolute/path/to/your/config.json",
"KEEP_SERVER_OPEN": "1"
}
}
}
}
KEEP_SERVER_OPEN会在客户端断开连接后继续运行 SSE。多个客户端连接到 MCP 代理时,这会很有用。
调试
由于 MCP 服务通过 stdio 通信,调试可能颇具挑战。我们建议使用 MCP Inspector,它可通过包脚本运行:
npm run inspector
Inspector 会提供一个 URL,供你在浏览器中访问调试工具。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。