mcpField
M
MCP Local Router

MCP Local Router

本地服务
github.com/kaichen开发工具1957 周前更新

关于 MCP Local Router

MCP Local Router 是一个本地 MCP 聚合代理,可连接多个上游 MCP 服务,并将其功能汇总为单一接口供下游客户端使用。适合需要统一管理多个 MCP 服务的开发者。

主要功能

  1. 01通过命令行参数指定配置文件
  2. 02配置多个上游 MCP 服务
  3. 03支持 stdio 传输并可注入环境变量
  4. 04支持 SSE 传输的聚合与单服务端点

适用场景

  1. 01将多个 MCP 服务的工具汇总到一个入口
  2. 02仅向客户端暴露某个上游服务的工具

MCP 相关

该项目作为 MCP 代理运行,连接多个上游 MCP 服务,并向下游 MCP 客户端提供聚合后的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP Local Router

该项目是一个 MCP(Model Context Protocol)本地路由器,充当 MCP 服务的聚合代理。它可以连接多个上游 MCP 服务,并将其功能聚合到一个供下游客户端使用的接口中。

功能

  • 支持通过命令行参数指定配置文件
  • 支持配置多个上游 MCP 服务
  • 支持 stdio 传输
  • 支持向 stdio 传输注入环境变量
  • 支持 SSE 传输,并提供聚合的 /sse 端点和针对各上游服务的 /sse/{serverName} 端点

用法

运行

必须使用配置文件运行:

cargo run -- --config mcp-config.json --transport sse
SSE 路由

路由器以 --transport sse 运行时,会公开两种端点:

  • /sse 会流式传输所有已配置上游服务聚合后的工具集合。
  • /sse/{serverName} 只会流式传输单个上游服务的工具。{serverName} 部分必须与配置文件中 mcpServers 的键匹配(例如 /sse/filesystem 或 /sse/workspace-search)。

服务名称键应当适合用于 URL,因为它们会直接用作路径部分。

每个 SSE 连接都会发出一个初始 endpoint 事件,其中包含客户端应当用于发送 POST 请求的 HTTP 路径。所有流式端点都共用同一个 POST /message?sessionId=… 通道。

配置文件格式

配置文件采用 JSON 格式,示例如下:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/username/Desktop"
      ],
      "env": {
        "LINEAR_ACCESS_TOKEN": "your_personal_access_token"
      }
    },
    "workspace-search": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-everything"
      ],
      "env": {}
    }
  }
}

说明:

  • mcpServers:多个服务配置的映射
    • 每个键是服务名称(用于日志记录和 /sse/{serverName} 路径)
    • 每个值是一个包含以下字段的对象:
      • command:要执行的命令
      • args:命令参数数组
      • env:要注入的环境变量映射

构建和安装

# Build the project
cargo build --release

# Run
cargo run --release -- --config mcp-config.json --transport stdio

依赖项

  • Rust 2021 Edition
  • tokio 异步运行时
  • MCP 相关库:rmcp

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。