欣淇
发布于 2026-05-18 / 0 阅读
0
0

🎯 mcp2cli:2.1k Stars,一个 CLI 统领所有 API,Token 省 96%

🎯 mcp2cli:2.1k Stars,一个 CLI 统领所有 API,Token 省 96%

English: mcp2cli is a Python CLI that turns any MCP server, OpenAPI spec, or GraphQL endpoint into a command-line tool — at runtime, zero codegen. It saves 96–99% of tokens wasted on tool schemas every turn.


痛点:AI Agent 的 Token 都浪费在哪了?

用过 Claude Code 或者 Codex 的人都知道,每次调一个 API 工具,LLM 得把整个工具的 schemas 读一遍。一个 MCP 服务器如果有 96 个工具,光列表就吃掉 1,400 tokens。Agent 每步都要重复加载这些元数据——一天下来,几千上万 tokens 就这么没了。

说的就是这玩意儿:每次调用都在浪费 schemas 的 token

mcp2cli 的思路:API 变 CLI

mcp2cli 的思路很简单:把一个 API 包装成本地 CLI 命令,这样 LLM 只需要调一个本地命令,不需要传 schemas。

# 一行命令安装
uv tool install mcp2cli

# 或者直接跑(不用安装)
uvx mcp2cli --help

三行命令上手

MCP 模式:连接任何 MCP 服务器

# 列出 MCP 服务器的所有工具
mcp2cli --mcp https://mcp.example.com/sse --list

# 调用某个工具
mcp2cli --mcp https://mcp.example.com/sse search --query "test"

OpenAPI 模式:把 Swagger 文档变成 CLI

# 从远程 spec 生成 CLI 命令
mcp2cli --spec https://petstore3.swagger.io/api/v3/openapi.json --list

# 调用端点
mcp2cli --spec ./openapi.json --base-url https://api.example.com list-pets --status available

GraphQL 模式:自省端点,自动生成查询

# 列出所有 query 和 mutation
mcp2cli --graphql https://api.example.com/graphql --list

# 执行查询
mcp2cli --graphql https://api.example.com/graphql users --limit 10

"Bake" 模式:一次配置,永久使用

最骚的操作是 bake ——把连接信息存成命名配置,后面直接用 @ 前缀调用:

# 创建一个 bake 配置
mcp2cli bake create petstore \
  --spec https://api.example.com/spec.json \
  --exclude "delete-*,update-*" \
  --methods GET,POST

# 用 @ 前缀调用,不需要再传连接参数
mcp2cli @petstore --list
mcp2cli @petstore list-pets --limit 10

# 安装成系统命令
mcp2cli bake install petstore
# 现在可以直接 petstore list-pets

真实 Token 节省数据

实测对比:96 个工具的 MCP 服务器:

方式 Token 消耗
原始 schemas ~1,400 tokens
mcp2cli + --list --top 10 --compact ~20 tokens

节省 96-99%。不是理论值,是实测数据。

AI Agent Skill 集成

mcp2cli 还自带一个 skill,安装后你的 AI coding agent 就能自动发现和调用任何 API:

npx skills add knowsuchagency/mcp2cli --skill mcp2cli

装完之后直接跟 agent 说:「帮我调那个 MCP 服务器的搜索工具」——它会自动走 mcp2cli 去调,不走 schemas 开销。

几点注意事项

  • 别踩的坑:敏感信息(auth header、OAuth secret)支持 env:file: 前缀,直接写在命令里
    bash # ✅ 安全做法 mcp2cli --mcp https://mcp.example.com/sse \ --auth-header "Authorization:env:MY_API_TOKEN" --list
  • OAuth 支持 authorization code + PKCE 和 client credentials 两种流程,token 自动缓存刷新
  • 本地 spec 文件不会被缓存,远程 spec 默认缓存 1 小时

总结

  • mcp2cli 把 MCP/OpenAPI/GraphQL 服务器变成 CLI 命令,LLM 调用零 schemas 开销
  • Token 节省 96-99%,实测 96 个工具从 1,400 tokens 降到 20
  • 支持 bake 模式一次配置永久使用
  • 自带 AI Agent skill,安装后 agent 自动集成
  • 一句话:API 变 CLI,省 token、省时间、省心思

评论