README
🚀 MetaMCP MCP 服务器
MetaMCP MCP 服务器是一个强大的代理服务器,它能将多个 MCP 服务器整合为一体。通过从 MetaMCP 应用获取工具、提示和资源配置,该服务器可精准地将各类请求路由到对应的底层服务器,为用户提供一站式的 MCP 管理体验。点击访问
MetaMCP 应用仓库: https://github.com/metatool-ai/metatool-app
🚀 快速开始
MetaMCP MCP Server 是一个代理服务器,可将多个 MCP 服务器整合为一个。它从 MetaMCP 应用获取工具/提示/资源配置,并将工具/提示/资源请求路由到相应的底层服务器。
✨ 主要特性
- 多功能代理:MetaMCP MCP Server 支持多种传输协议,包括标准输入输出和 SSE。
- 易于集成:通过简单的配置即可将多个 MCP 服务整合为一个统一的接口。
- 高性能:优化了请求路由机制,确保高效处理大量并发请求。
📦 安装指南
使用 Smithery 安装
有时 Smithery 可能正常工作(在 Windsurf 本地测试通过),但因为 MetaMCP 具有特殊性,运行其他 MCP 在其上,因此如果出现不稳定情况,请考虑使用手动安装。
通过 Smithery 自动安装 MetaMCP MCP Server for Claude Desktop:
npx -y @smithery/cli install @metatool-ai/mcp-server-metamcp --client claude
手动安装
export METAMCP_API_KEY=<env>
npx -y @metamcp/mcp-server-metamcp@latest
{
"mcpServers": {
"MetaMCP": {
"command": "npx",
"args": ["-y", "@metamcp/mcp-server-metamcp@latest"],
"env": {
"METAMCP_API_KEY": "<your api key>"
}
}
}
}
💻 使用示例
基础用法
以标准输入输出模式使用(默认)
mcp-server-metamcp --metamcp-api-key <你的 API 密钥>
高级用法
以 SSE 模式使用
mcp-server-metamcp --metamcp-api-key <你的 API 密钥> --transport sse --port 12006
启用 SSE 运输选项后,服务器将启动一个 Express.js 网络服务器,在 /sse 端点监听 SSE 连接,并在 /messages 端点接受消息。
命令行选项
--metamcp-api-key: 指定 MetaMCP API 的访问密钥。--transport: 选择传输协议(默认为stdio)。--port: 指定服务器绑定的端口(默认为3000)。
环境变量
通过设置以下环境变量来配置服务器行为:
METAMCP_API_KEY: 必填,MetaMCP API 的访问密钥。TRANSPORT: 可选,默认为stdio,支持的值包括http和sse。
🔧 技术细节
依赖项
- Node.js: 版本要求:14.18.0 或更高
- npm: 版本要求:6.14.0 或更高
安装
使用以下命令安装项目及其依赖项:
npm install
启动
启动服务器:
npm start
架构概述
图表
graph TD
A[MetaMCP MCP Server] --> B[Client]
A --> C[Target MCP Servers]
B -> A: Call Tool
A -> C: call_tool to target MCP Server
C -> A: Return tool response
A -> B: Return tool response
描述
- 客户端请求:客户端向 MetaMCP MCP Server 发送工具调用请求。
- 路由逻辑:MetaMCP MCP Server 根据预设的路由规则,将请求转发到相应的目标 MCP 服务器。
- 响应处理:目标 MCP 服务器返回响应,MetaMCP MCP Server 收到后将其传递给客户端。
📄 许可证
文档中未提及许可证相关信息。
致谢
启发和部分代码(在本项目中进行了重构)来自 https://github.com/adamwattis/mcp-proxy-server/
Scan to contact