
mcp-remote-server

2025.01.16
5
TypeScript动态配置远程 API 集成其它
mcp-remote-server 是一个可配置的模型上下文协议(MCP)服务器,能够从远程配置动态加载其功能。它充当 MCP 客户端和远程 API 之间的桥梁,通过解析远程托管的配置(通过 `MCP_CONTROL_PLANE_URL` 指定)来定义服务器功能,包括工具、资源和提示。
View on GitHub
Overview
基本能力
产品定位
mcp-remote-server 是一个动态配置的 MCP 服务器,用于连接 MCP 客户端和远程 API,支持远程配置的动态加载和自动刷新。
核心功能
- 动态配置:服务器功能通过远程 JSON 配置定义。
- 自动刷新:配置每 60 秒自动刷新一次。
- 支持所有 MCP 原语:
- 工具:通过远程 API 调用执行操作。
- 资源:将远程数据暴露为可读资源。
- 提示:定义可重用的提示模板。
适用场景
- 需要动态加载和更新服务器功能的场景。
- 需要将 MCP 客户端与远程 API 集成的场景。
- 需要支持多种 MCP 原语(工具、资源、提示)的场景。
工具列表
- 工具:通过远程 API 调用执行操作,输入和输出遵循 JSON Schema。
- 资源:将远程数据暴露为可读资源,支持多种 MIME 类型。
- 提示:定义可重用的提示模板,支持参数化输入。
常见问题解答
- 支持的协议:仅支持 HTTP/HTTPS 处理程序端点。
- 配置访问:配置必须通过 HTTP GET 请求访问。
- 响应格式:处理程序响应必须是 JSON 兼容的。
- 运行限制:仅限本地运行(标准 MCP 限制)。
使用教程
使用依赖
安装 Bun 运行时:
curl -fsSL https://bun.sh/install | bash
安装教程
- 克隆项目并安装依赖:
git clone <repository-url>
cd mcp-remote-server
bun install
- 设置控制平面 URL:
export MCP_CONTROL_PLANE_URL="https://your-config-endpoint"
- 运行服务器:
bun run index.ts
调试方式
- 检查控制平面 URL 是否设置正确:
echo $MCP_CONTROL_PLANE_URL
- 检查服务器是否正常运行:
curl http://localhost:<port>/health
- 查看日志输出以排查问题:
tail -f logs/server.log
许可证
None