MCP 管理器
灵活的模型上下文协议 (MCP) 管理服务器,支持 AI 模型和工具之间的通信。兼容 Claude、MCP Dockmaster 和其他 MCP 客户端。
特征
- MCP 服务器管理:运行多个 MCP 服务器并通过单一界面进行管理
- 工作模式:作为其他 MCP 客户端的工作器运行
- 自动发现:自动在 GitHub 和 Smithery 软件包中查找 MCP 服务器
- 工具注册表:从 MCP 工具注册表中浏览并安装工具
- WebSocket 通信:通过 WebSockets 进行 JSON-RPC 实时通信
- 无头模式:以无头模式运行,实现 API 优先操作
入门
先决条件
安装
# Clone the repository
git clone <your-repo-url>
cd <your-repo-directory>
# Install dependencies
npm install
# Create a .env file from the example
cp .env.example .env
# Edit .env to configure your MCP Manager
nano .env
运行服务器
# Run in development mode
npm run dev
# Build and run in production mode
npm run build
npm run start
配置选项
通过编辑.env
文件来配置您的 MCP 管理器:
# Server Configuration
PORT=5000 # Main server port
HOST=0.0.0.0 # Host to bind to
NODE_ENV=development # Environment (development/production)
REUSE_PORT=true # Whether to reuse the port
# MCP Port Range
MCP_PORT_RANGE_START=50050 # Start port for MCP servers
MCP_PORT_RANGE_END=50150 # End port for MCP servers
# MCP Compatibility Settings
MCP_WORKER_MODE=false # Enable worker mode
MCP_DISCOVERY_ENABLED=true # Enable auto-discovery of MCP servers
MCP_AUTOSTART_SERVERS=true # Automatically start MCP servers
# Smithery API Configuration
SMITHERY_API_KEY=your_smithery_api_key_here # API key for Smithery packages
将 MCP Manager 与 Claude 和其他 MCP 客户端结合使用
MCP 管理器旨在与各种 MCP 客户端兼容,包括:
连接到 Claude Desktop
- 在本地机器上运行 MCP 管理器
- 打开 Claude 桌面
- 前往“设置”>“高级”>“MCP 配置”
- 将 MCP 服务器 URL 设置为
http://localhost:5000/ws
- MCP 管理器将作为 Claude 中的可用服务器出现
连接到 MCP Dockmaster
- 在本地机器上运行 MCP 管理器
- 打开 MCP Dockmaster
- 点击“添加服务器”
- 输入服务器信息:
- 姓名:MCP 经理
- 地址:localhost
- 端口:5000
- 点击“连接”
使用工作模式
MCP 管理器可以作为其他 MCP 客户端的工作者运行:
- 在
.env
文件中设置MCP_WORKER_MODE=true
- 运行 MCP 管理器
- 从您的 MCP 客户端连接到 MCP 管理器
- MCP 管理器将自动发现并注册可用的工具
无头/API 优先操作
MCP 管理器支持 API-first 客户端的无头操作:
GET /?api_key=YOUR_API_KEY&headless=true&auto_connect=true
查询参数:
api_key
:您的 API 密钥(如果需要)headless
:启用无头模式auto_connect
:自动连接到可用的 MCP 服务器ws_url
:指定自定义 WebSocket URLserver_id
:连接到特定的服务器 ID
API 参考
MCP 管理器通过 WebSockets 实现 JSON-RPC 协议。主要的 API 接口如下:
可用方法
ping
:测试服务器连通性getServers
:获取所有已注册的服务器getServer
:通过 ID 获取服务器toggleWorker
:切换服务器的工作状态getTools
:获取所有工具getToolsByServer
:获取特定服务器的工具activateTool
:激活工具deactivateTool
:停用工具getStats
:获取服务器统计信息
执照
麻省理工学院