MCP Server Runner
一个用于运行 Model Context Protocol (MCP) 服务器的 WebSocket 服务器实现。此应用程序使 MCP 服务器能够通过 WebSocket 连接访问,从而便于与 Web 应用程序和其他网络客户端集成。
MCP 服务器运行器 Quick Start
注意:此项目处于积极开发中 (WIP),API 可能会有变化。
概述
MCP 服务器运行器是一个 WebSocket 服务器实现,用于运行 模型上下文协议 (MCP) 服务器,便于与 Web 应用程序集成。
快速开始
前提条件
- Rust 1.70+
- MCP 服务器实现可执行文件
配置方式
1. 使用环境变量
export PROGRAM=npx
export ARGS=-y,@modelcontextprotocol/server-github
export PORT=8080
export GITHUB_PERSONAL_ACCESS_TOKEN=github_pat_***
cargo run
2. 使用配置文件 (推荐)
创建 config.json
:
{
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/workspace"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
}
}
},
"default_server": "filesystem",
"host": "0.0.0.0",
"port": 8080
}
运行:
# 作为参数指定
cargo run config.json
# 或使用环境变量
CONFIG_FILE=config.json cargo run
使用 Docker
docker-compose up --build
连接到 WebSocket 服务器
const ws = new WebSocket("ws://localhost:8080");
// 监听消息
ws.onmessage = (event) => {
console.log('收到消息:', event.data);
};
// 发送消息
ws.send(JSON.stringify({/* MCP 消息 */}));
主要功能
- WebSocket 服务器实现(单客户端)
- MCP 服务器进程管理
- 双向消息传递
- 跨平台支持(Unix/Windows)
限制
- 一次只支持一个客户端连接
- 不支持 WebSocket SSL/TLS(请使用反向代理)
- 无内置身份验证机制