简介
mcptoon 是一个 189 KB、仅依赖 Python 标准库的命令行工具,充当本机 MCP 工具与 agent 技能的"管家"。它能发现各 AI 客户端里已安装的 MCP server,维护一份统一配置并同步到 Claude Desktop/Code、Cursor、Codex、opencode 等客户端,也可以把所有 server 聚合成一个 stdio MCP server 供 agent 调用。核心价值是 token 成本:工具清单默认只列工具名,JSON schema 按需拉取而非每轮注入。
主要特性
- 纯名称工具清单:列出 50 个 server 的 255 个工具只需 581 token,而原生 schema 需要 71,929 token(−99.2%,tiktoken
cl100k_base),schema 仅在真正需要时获取 - 在 MCP server 之外同时管理技能目录——371 个技能原生全文 926,232 token,常驻指针集只需 39 token,离线 BM25 短名单约 501 token 即可定位目标技能
- MCP 配置单一事实来源,同步到每个 agent 客户端;后续新增工具或技能即时生效,无需重启 agent
mcptoon serve将全部已配置 MCP server 聚合到同一个 stdio 端点mcptoon bench实测本机工具与技能目录的 token 开销,可选 tiktoken 校验的"measured"模式与估算模式区分- 技能视图以链接(Windows 上为 junction)分发,源目录一次修改处处生效,并遵循"归档而非删除"的安全规则
使用场景
- 在 Claude Desktop、Claude Code、Cursor、Codex、opencode 之间维护多份 MCP 配置、希望只保留一份同步配置的开发者
- 上下文窗口被数百个工具 schema 在会话开始前塞满的 agent
- 在大型技能目录中找到合适技能,而不必将每个
SKILL.md读入上下文 - 本地复现 token 成本数据——
mcptoon demo --quick启动官方 everything 参考服务器,约 30 秒打印 token 计算
技术特点
- 纯 Python 标准库实现,CI 强制零运行时依赖,wheel 仅 189 KB;Windows/macOS/Linux 同等支持,版本由 GitHub Actions 自动发布到 PyPI
- 清单分档换取 token:Compact(仅名称)节省 99.2%,Slim 节省 88.5%,Toon 结果压缩约 34%,以 JSON 为基线格式
- 技能检索用 BM25 排序,离线运行、无 LLM 调用、零 token;
--k 5针对"make a PDF"这类查询返回候选短名单 - 技能同步按真实路径去重,junction 指向的目录不会重复统计;
remove将技能移入带日期的归档而非直接删除 - 附带 Claude Code 插件(
/plugin marketplace add activeing123/mcptoon),SessionStart hook 自动安装 CLI,通过.mcp.json接入 stdio 桥接,并教 agent 何时压缩 - 已进入 MCP 官方 Registry(
server.json随发版自动发布),并被 numtide/llm-agents.nix 打包、有自动跟版机器人