模型 / 数据集
mcp-router/mcp-router avatar
mcp-router/mcp-router

MCP Router:把散落的 MCP 服务器收进一个桌面面板

A Unified MCP Server Management App (MCP Manager).

2,143 个 Star175 个 ForkTypeScriptNOASSERTION

秒懂

它是什么?
MCP Router 是一个用 TypeScript 写的桌面应用,把本地与远程 MCP 服务器、工具开关、项目与工作区分组、请求日志集中到一个界面里。它的核心判断很简单:MCP 服务器数量一多,配置文件就会失控,而它选择用 GUI 加一个 CLI 连接层来接管这件事。
适合谁用?
如果你同时挂载了多个 MCP 服务器,并且经常要在不同项目之间切换工具集合,MCP Router 的分组与工具级开关是有实际价值的;如果你的客户端本身已经能管理服务器列表,或者你只在命令行里跑一两个本地服务器,引入一个常驻桌面应用并不划算。上手前先确认三件事:第一,打开 LICENSE.md 读清楚 Sustainable Use License 的具体条款,仓库的 License 字段显示为 NOASSERTION,说明 GitHub 无法自动识别为标准许可,商用前必须自己看原文;第二,确认你的平台在发布页上有对应的构建产物,README 只写了 Windows 和 macOS;第三,确认你使用的客户端是否在 README 列出的集成名单里,名单之外要靠自定义客户端加 token 接入。
能商用吗?
请先确认。这个仓库使用的许可证不在我们自动归类的范围内,商用前请阅读仓库里的 LICENSE 文件。
还在维护吗?
在维护。仓库最近一次提交在 43 天前。
用什么语言写的?
主要是 TypeScript(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

MCP 服务器变多之后,配置文件先崩溃

Model Context Protocol 的客户端通常各自维护一份服务器配置。一个本地 stdio 服务器、一个远程 HTTP 服务器、再加几个只在特定项目里用的服务器,很快就会变成多份 JSON 文件里的重复条目。更麻烦的是工具粒度:某个服务器提供二十个工具,你当前任务只用到其中三个,但客户端往往把二十个全部塞进上下文。MCP Router 针对的就是这个场景。README 把它定位为管理 MCP 服务器的桌面应用,核心卖点写在功能列表里:把服务器分组进 Projects,用 Workspaces 管理不同模式,并且可以按服务器逐个开关工具。它面向的是同时使用多个 MCP 服务器、并且需要在不同工作场景之间切换的那类用户,而不是只连一个本地服务器的轻量使用者。

路由器这个名字的含义:一个中间连接层

从 README 给出的安装流程可以反推出它的数据流。你需要在应用里添加自定义 app,应用会签发一个形如 mcpr_ 前缀的 token,然后通过 CLI 连接到 MCP Router:export MCPR_TOKEN="mcpr_your_token",再执行 npx -y @mcp_router/cli connect。也就是说,客户端并不直接连接各个 MCP 服务器,而是先连到 MCP Router,由后者持有真实服务器列表、项目归属和工具开关状态。README 里 connect 命令还支持 --project <project-name> 参数,说明项目选择发生在连接阶段,而不是在客户端配置里写死。这个设计的好处是切换项目只需要换一个连接参数,坏处是 MCP Router 成了链路上的单点,它没运行,下游客户端就取不到任何工具。README 没有说明连接使用的是 stdio 还是别的传输方式,也没有给出多客户端并发连接时的行为描述,这两点需要自己验证。

Projects 与 Workspaces 是两层不同粒度的分组

README 把分组拆成了两个概念,容易混淆。Projects 用来把 MCP 服务器归拢到一起,对应的是「这批服务器属于同一个项目」;Workspaces 被描述为类似浏览器配置文件,用来管理不同模式。前者是服务器的归属关系,后者更像是一套可切换的全局状态。再往下还有第三层:单个服务器内部的工具可以逐个开关。三层叠加之后,实际生效的工具集合是三者共同作用的结果。README 提供了 toggle、tool-toggle、project-management、workspace 四张界面截图来展示这套结构,但没有给出优先级规则,比如同一个服务器被两个 Project 同时引用时会发生什么,或者切换 Workspace 是否会覆盖 Project 内的工具开关。这类交互细节只能靠实际使用确认。

安装与接入:从发布页到一条 npx 命令

安装路径很直接:从 releases 页面下载桌面应用。README 没有提供包管理器安装方式,也没有给出 Homebrew 或 winget 之类的命令,所以初始分发依赖手动下载。装好之后,接入流程是先在应用内添加自定义 app 并拿到 token,然后在终端里设置环境变量并连接。README 给出的两条命令分别是 npx -y @mcp_router/cli connect 和 npx -y @mcp_router/cli connect --project <project-name>。除了自定义客户端,README 还列出了 Claude、Cline、Windsurf、Cursor 的一键集成,但没有说明这个「一键」具体做了什么,是写入各客户端的配置文件,还是生成一段可粘贴的配置片段。如果这一点对你的部署方式重要,最好在文档站 mcp-router.net 上确认,而不是假设它一定会改写你现有的配置文件。

本地存储的隐私承诺与它的边界

README 在隐私部分给出了三条明确声明:请求日志、配置和服务器数据全部保存在本地;API key 与认证凭据保存在本地且不向外传输;桌面应用源码公开在 GitHub 上,可以自行审阅。这些是项目方的声明,不是第三方审计结论,README 也把安全审计描述为「欢迎社区参与」,意味着目前没有可引用的独立审计报告。另外要注意「桌面应用源码公开」这个措辞的边界:仓库里公开的是桌面应用部分,而 CLI 以 @mcp_router/cli 的 npm 包形式分发,README 没有说明该包的源码是否同样在仓库内。如果你所在的环境要求整条链路可审计,这一点需要先查清楚再决定是否采用。

什么时候它反而是多余的

MCP Router 引入了常驻进程和额外一层连接,这在某些场景下是净负担。如果你只用一个本地 stdio 服务器,客户端的配置文件里加一行就够了,多装一个桌面应用只会增加一个需要保持运行的依赖。如果你在无图形界面的服务器或容器里跑 agent,README 只提到 Windows 和 macOS 两个平台,没有给出 Linux 构建或纯 headless 的用法,这个方向目前没有依据。如果你的团队已经用配置管理工具统一分发客户端的 MCP 配置,那么把配置来源从文件转移到某个人的桌面应用里,反而会让配置变得不可版本化。判断标准不复杂:需要按项目切换工具集合、且使用图形界面的个人开发者,收益明显;以脚本和 CI 为主的工作流,收益接近零。

与直接手写客户端配置相比,差别在哪

最直接的对照物不是另一个路由器,而是「每个客户端各自维护 MCP 配置」这种默认做法。手写配置的方式下,每个客户端各有一份服务器列表,新增一个服务器要在多处重复;工具过滤通常只能做到服务器级别,做不到单个工具级别;切换工作场景靠手动注释掉配置行。MCP Router 把这三件事分别对应到集中式服务器管理、工具级开关和 Workspace 切换。代价是配置的权威来源从可 diff 的文本文件变成了应用内部状态,README 没有说明应用是否导出可读的配置文件,也没有说明能否导入现有的 JSON 配置。如果你的工作流依赖配置即代码,这个代价需要认真权衡;如果你的痛点是上下文被无关工具占满,工具级开关就是它最实在的功能。

版本节奏与许可带来的长期成本

从发布记录看,v0.6.1 在 2025 年 11 月,v0.6.2 在 2026 年 1 月,v0.6.3 在 2026 年 6 月,版本号仍停留在 0.6.x,说明接口和功能都还在变动期,升级时不能假设配置格式向后兼容。README 没有提供迁移指南或变更日志说明,所以跨版本升级前建议先备份本地数据目录。许可方面,README 写明采用 Sustainable Use License,并指向 LICENSE.md。仓库的 License 字段显示为 NOASSERTION,表示 GitHub 未能识别为标准许可,这类自定义许可通常带有使用范围限制,具体条款必须读原文。这里不给法律意见,只提醒一点:如果要在公司内部或产品中分发使用,先让法务看 LICENSE.md,而不是根据「源码公开」这一条推断它可以随意使用。

编辑结论

如果你同时挂载了多个 MCP 服务器,并且经常要在不同项目之间切换工具集合,MCP Router 的分组与工具级开关是有实际价值的;如果你的客户端本身已经能管理服务器列表,或者你只在命令行里跑一两个本地服务器,引入一个常驻桌面应用并不划算。上手前先确认三件事:第一,打开 LICENSE.md 读清楚 Sustainable Use License 的具体条款,仓库的 License 字段显示为 NOASSERTION,说明 GitHub 无法自动识别为标准许可,商用前必须自己看原文;第二,确认你的平台在发布页上有对应的构建产物,README 只写了 Windows 和 macOS;第三,确认你使用的客户端是否在 README 列出的集成名单里,名单之外要靠自定义客户端加 token 接入。

官方来源

  1. Issues
  2. mcp-router/mcp-router on GitHub
  3. Project website
  4. README
  5. Releases
社区笔记

社区笔记