← 返回目录
M

MCP Hub

社区
集中管理多个 MCP 服务器的中枢服务,提供统一端点与实时监控
GitHub 源仓库 ↗
★ 517 Stars 分类 · 开发工具 热门
63FMRS · C

MCP Hub 是一个聚焦于多 MCP 服务器集中编排与监控的工具,亮点是单一 /mcp 端点聚合所有能力、自动命名空间防冲突、实时 SSE 事件与 VS Code 配置兼容。它并不实现 Roots、Sampling、Completion 能力,也不托管任何具体的业务工具;使用前需注意 ${cmd:} 命令执行与密钥注入带来的安全面。

可靠性
10/20
安全与权限
9/20
维护活跃度
14/20
文档质量
16/20
安装易用性
14/20
查看 FMRS 评分方法 →

MCP Hub 是 MCP 服务器与客户端之间的中央协调器,提供两个关键接口:管理接口(/api/*)通过统一的 REST API 和 Web UI 管理多个 MCP 服务器;MCP 服务器接口(/mcp)让任意 MCP 客户端通过单一端点访问所有服务器的能力。它实现了 MCP 2025-03-26 规范,支持 stdio、streamable-http 与 SSE 传输,支持 OAuth 2.0(PKCE)与基于 Header 的令牌认证,并具备服务器生命周期管理、健康监控、自动重连、热重载、实时事件推送(SSE)以及 VS Code 配置兼容等能力。

安装接入

  1. 使用 npm 全局安装:npm install -g mcp-hub。
  2. 准备 JSON 配置文件(支持 JSON5、VS Code 的 servers/mcpServers 键以及 ${} 占位符语法)。
  3. 启动服务:mcp-hub --port 3000 --config path/to/config.json(可多次指定 --config,按顺序合并)。
  4. 将 MCP 客户端配置为连接单一端点,例如 Claude Desktop 的配置:{"mcpServers":{"Hub":{"url":"http://localhost:37373/mcp"}}}。

要求 Node.js >= 18.0.0。

claude_desktop_config.json
{
  "mcpServers": {
    "Hub": {
      "url": "http://localhost:37373/mcp"
    }
  }
}

选型与风险

适合谁

  • 需要同时编排多个 MCP 服务器的开发者
  • 希望客户端只配置一个端点的用户
  • 需要实时状态与能力变更通知的自动化工作流

不适合谁

  • 只需要连接单个简单 MCP 服务器、不想引入中间层的用户
  • 需要 Roots、Sampling 或 Completion 能力的客户端(当前不支持)
  • 无法运行 Node.js 18+ 环境的使用者

所需权限

  • 读取并解析指定的 JSON 配置文件
  • 通过 ${cmd:} 占位符执行本机命令以获取配置值
  • 注入 MCP_HUB_ENV 及服务器级 env 环境变量到受管子进程
  • 以配置中的 command/args 在本机启动 stdio 子进程
  • 向配置的远程 URL 发起网络请求并携带自定义认证 Header
  • 在 XDG 状态目录写入日志与工作区缓存文件

风险与副作用

  • ${cmd: command args} 会在配置解析时执行任意本机命令,配置被篡改时风险较高
  • 启动本地 stdio 服务器等同于以当前用户权限运行任意命令
  • MCP_HUB_ENV 与服务器 env 中可能包含密钥,若配置文件或日志被他人读取可能泄露
  • 远程服务器凭据(OAuth、Bearer Token)需妥善保管
  • --auto-shutdown 关闭不当可能导致服务意外退出

常见排障

  1. 服务无法启动时检查 Node.js 版本是否 >= 18.0.0
  2. 客户端连接失败时确认端口与 /mcp 路径一致(默认示例为 37373)
  3. 配置未生效时确认 --config 路径正确,并注意多个配置文件按顺序后覆盖前
  4. 环境变量或命令未解析时检查 ${} 占位符写法与 `${cmd:}` 的输出
  5. 端口冲突可查看工作区缓存 $XDG_STATE_HOME/mcp-hub/workspaces.json,必要时清理失效条目
  6. 排查问题时查看日志 $XDG_STATE_HOME/mcp-hub/logs/mcp-hub.log

使用场景

通过一个端点把多个 MCP 服务器接入 Claude Desktop 等客户端
统一管理本地(stdio)和远程(streamable-http/SSE)MCP 服务器的启停与配置
用 REST API 或 SSE 事件实时监控服务器状态与能力变化
在 VS Code 与 MCP Hub 之间复用同一份 mcp.json 配置
在 Neovim 中通过 mcphub.nvim 调用 MCP 工具与资源

支持客户端

Claude Desktop完整支持
Cline完整支持
Neovim (mcphub.nvim)完整支持