首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
mcp-proxy-server2025-05-210分享
github
一个核心枢纽,它将多个MCP资源服务器聚合到一个统一的界面中,使用户能够通过一个连接点访问来自多个后台服务器的工具和功能。
By adamwattis
2025-05-210
github
详情内容

MCP 代理服务器

一个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,以便您在浏览器中访问调试工具。

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档