发现 AI 代理的未来arrow_forward

mcp2cli

calendar_today收录于 2026年4月23日
category智能体与应用工具
code开源
PythonMCPAI代理CLI智能体与应用工具开发者工具/代码协议/API/集成

运行时将 MCP Server、OpenAPI Spec、GraphQL Endpoint 零代码生成为 CLI 工具,专为 AI Agent 场景压缩 tool schema token 开销。

mcp2cli 是一个 Python CLI 工具,能够在运行时将任意 MCP Server(HTTP/SSE/stdio)、OpenAPI Spec(JSON/YAML)或 GraphQL Endpoint 动态转换为命令行接口,无需生成中间代码。其核心价值在于解决 AI Agent 调用工具时每轮对话需携带完整 tool schema 导致的 token 浪费问题,声称可节省 96–99% 的 schema token。

协议接入能力#

支持四种接入模式:--mcp URL(MCP HTTP/SSE,支持 auto/sse/streamable 传输)、--mcp-stdio CMD(stdio 子进程通信)、--spec URL|FILE(本地或远程 OpenAPI JSON/YAML)、--graphql URL(自动 introspection 发现 queries/mutations 并生成 selection sets)。

Token 优化机制#

  • Schema 免传输:Agent 无需携带完整 tool schema,仅传递 CLI 命令行
  • 工具列表压缩--list --top N --compact 可将 96 个工具压缩至约 20 token
  • TOON 输出:面向 LLM 消费的高效编码格式,大数组场景比 JSON 节省 40–60% token

认证与安全#

内置 OAuth Authorization Code + PKCE 及 Client Credentials 两种流程,自动 token 缓存与刷新。env:file: 前缀可从环境变量或文件读取敏感值,避免出现在进程参数列表中。

用户体验特性#

  • Bake 模式:将 spec URL + auth 配置持久化为命名工具(如 @petstore),一键调用
  • Usage-aware 排序:本地追踪调用频率,--list 默认按使用频率排序
  • 搜索与过滤--search 模糊搜索;--include/--exclude glob 白/黑名单
  • 缓存机制:spec 与工具列表缓存于 ~/.cache/mcp2cli/,默认 TTL 1 小时
  • AI Agent Skill:提供 skills.sh 格式的可安装 skill,支持 Claude Code、Cursor、Codex 等代理

架构要点#

入口点为 mcp2cli:main,核心代码位于 src/mcp2cli/,测试位于 tests/(96 个测试用例)。核心依赖仅 httpx、mcp>=1.0、PyYAML 三库,Python >= 3.10,通过 PyPI 分发(当前版本 3.0.2,MIT 许可证,构建工具 uv_build)。所有子命令构建在内存中完成,不生成中间代码文件。配置持久化路径包括 ~/.config/mcp2cli/baked.json(Bake 配置)、~/.cache/mcp2cli/oauth/(OAuth token)、~/.cache/mcp2cli/usage.json(Usage 数据),均可通过环境变量覆盖。

安装与快速上手#

# 直接运行
uvx mcp2cli --help

# 全局安装
uv tool install mcp2cli

# pip 安装
pip install mcp2cli
# 列出 MCP server 工具
mcp2cli --mcp https://mcp.example.com/sse --list

# 调用 OpenAPI 端点
mcp2cli --spec https://petstore3.swagger.io/api/v3/openapi.json list-pets --status available

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

# MCP stdio 模式
mcp2cli --mcp-stdio "npx @modelcontextprotocol/server-filesystem /tmp" --list

待确认事项#

  • "96–99% token 节省"的具体基准测试方法和数据未在 README 中详细展示
  • TOON 格式的具体编码规范未在 README 中说明
  • 项目暂未发布正式 GitHub Release,版本通过 PyPI 分发
  • Bake 模式中持久化 auth 配置的加密或权限保护机制未说明

保持更新

获取最新的 AI 工具和趋势,直接发送到您的收件箱。没有垃圾邮件,只有智能。

rocket_launch