AI技术|

MCP 太贵了?用 CLI 替代能省 94% 的 token 成本

MCP 会在会话开始时加载所有工具的完整 JSON Schema,消耗大量 token。用 CLI 替代 MCP,采用按需加载的方式,可以节省 94% 的 token 成本。

用 AI Agent 的都知道 MCP(Model Context Protocol),Anthropic 搞的这套工具协议现在挺火的。但有个问题很多人没注意到:MCP 在 token 消耗上其实挺浪费的

最近在 Hacker News 上看到一篇文章,作者做了个实验,用 CLI 替代 MCP 来调用同样的工具,结果 token 成本直接降了 94%。

MCP 的 token 税

问题出在 MCP 的设计上。

每次会话开始,MCP 会把所有可用工具的完整 JSON Schema 一股脑塞进上下文。每个工具的名称、描述、参数定义、类型约束……全部加载。

假设你接了 6 个 MCP 服务器,每个有 14 个工具,总共 84 个工具。光是工具定义就要吃掉大约 15,540 个 token

这还没开始干活呢,token 已经烧了一大截。

CLI 的思路:按需加载

作者的方案很简单:把 MCP 工具转成 CLI,然后用懒加载的方式。

会话开始时,不加载完整的工具定义,只加载一个轻量级的工具列表:

XML
<available_tools>
  <tool>
    <name>notion</name>
    <description>CLI for Notion</description>
    <location>~/bin/notion</location>
  </tool>
  <tool>
    <name>linear</name>
    <description>CLI for Linear</description>
    <location>~/bin/linear</location>
  </tool>
  <!-- ... -->
</available_tools>

6 个工具的列表大概只需要 300 个 token

当 Agent 真正需要用某个工具时,再通过 --help 获取详细参数。这样只有实际用到的工具才会消耗 token。

数据对比

场景MCPCLI节省
会话启动~15,540~30098%
用 1 个工具~15,570~91094%
用 10 个工具~15,840~96494%
用 100 个工具~18,540~1,50492%

即使用了 100 个工具,CLI 方案也只需要 1,504 token,而 MCP 要 18,540。差距是数量级的。

跟 Anthropic Tool Search 比呢?

Anthropic 自己也意识到了这个问题,推出了 Tool Search 功能,思路类似:先加载索引,按需获取工具定义。官方说能降低 85% 的 token 消耗。

但 CLI 方案更便宜:

场景Tool SearchCLICLI 额外节省
会话启动~500~30040%
用 1 个工具~3,530~91074%
用 10 个工具~3,800~96475%
用 100 个工具~12,500~1,50488%

而且 Tool Search 只能在 Anthropic 的模型上用,CLI 方案对任何模型都有效。

怎么把 MCP 转成 CLI?

作者开源了一个工具叫 CLIHub,一行命令就能把现有的 MCP 服务器转成 CLI。

他还搞了个 CLI 目录站 clihub.sh,收录了常用工具的 CLI 版本。

我的看法

这个思路其实不新鲜。OpenClaw 的 available_skills 格式就是类似的设计——轻量级列表 + 按需加载详情。

但作者把这个思路系统化了,而且给出了具体的数据对比,很有说服力。

对于跑 Agent 工作流的场景,token 成本是实打实的钱。一个任务可能要跑几十轮对话,每轮省 15,000 token,累积下来就是真金白银。

当然,CLI 方案也有代价:每次发现新工具要多一次 --help 调用。但从数据看,这个代价远小于 MCP 的预加载成本。

如果你在做 Agent 相关的项目,而且对成本敏感,这个方案值得试试。


原文:I Made MCP 94% Cheaper

CLIHub 项目:github.com/thellimist/clihub

准备好了吗?

免费注册,立即体验全部功能