McpHub
MCP bridge -- folds the capabilities (tools / prompts / resources) of multiple MCP servers into 4 fixed tools, exposed uniformly to AI tools.
Quick Start
stdio mode (default)
dotnet run --project src/McpHub -- --config examples/mcp-hub.config.json
Configure in your AI tool's mcp.json:
{
"servers": {
"mcp-hub": {
"command": "dotnet",
"args": [
"run",
"--project", "path/to/McpHub",
"--", "--config", "path/to/mcp-hub.config.json"
]
}
}
}
HTTP mode
dotnet run --project src/McpHub -- --http --port 8080 --config examples/mcp-hub.config.json
Client connects to http://localhost:8080/ (Streamable HTTP).
CLI Options
--config | -c | Path to the MCP configuration file | Auto-discovered |
--http | - | Use HTTP (Streamable HTTP) transport | stdio |
--port | - | HTTP mode listening port | 8080 |
--workspace | -w | Workspace folder for ${workspaceFolder} substitution | Current directory |
--verbose | - | Output verbose diagnostic logs to stderr | Off |
暴露的 3 个 Tool
list_mcp_capabilities | 列出所有上游 MCP server 的可用能力(tools/prompts/resources),可选 kind 过滤 |
describe_mcp_capability | 查询某个能力的完整调用方式(参数 schema 等),输入限定名 serverName.capabilityName |
call_mcp_capability | 实际调用某个能力,传入限定名 + arguments |
配置文件格式
兼容 VS Code 族(servers 键)和 Claude/Cursor 族(mcpServers 键),自动推断 transport 类型:
{
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path"],
"env": { "API_KEY": "..." }
},
"remote-server": {
"type": "http",
"url": "https://example.com/mcp",
"headers": { "Authorization": "Bearer xxx" }
}
}
}
支持变量替换:
${workspaceFolder} — 工作区目录
${env:VAR_NAME} — 环境变量
配置文件发现顺序(未指定 --config 时):
--config 显式指定
- 当前目录
mcp.json
- 当前目录
.mcp.json
.vscode/mcp.json
claude_desktop_config.json
架构
AI 工具 ←stdio/http→ McpHub ←stdio/http→ 多个上游 MCP Server
│
├── list_mcp_capabilities → 聚合所有 server 的 tools/prompts/resources
├── describe_mcp_capability → 透传 schema 详情
└── call_mcp_capability → 透传调用
详见 设计文档。