mcp2cli
Claude Code插件,将MCP服务器转换为独立的CLI工具——没有上下文膨胀,没有复杂的语法。
 
/mcp2cli chrome-devtools-mcp快速开始
- 安装插件:
/plugin install nicobailon/mcp2cli-plugin- 转换MCP服务器:
/mcp2cli chrome-devtools-mcp- 使用生成的工具:
chrome-snapshot --help
chrome-snapshot --selector "#main"问题
MCP工具模式在上下文窗口中打开
在Claude Code中安装MCP服务器时,它们的工具定义将加载到上下文窗口中 *在您发送单个消息之前*一个拥有20多个工具的服务器可以消耗数千个令牌。这在多台服务器上很快就会加起来。
未主动使用原始mcporter命令
即使有 麦克波特 安装后,Claude Code不会主动使用这些命令,因为:
- 复杂的100+字符语法容易出错
- 不
--help自我发现 - 感觉“外国”vs本地Bash工具
解决方案
将MCP工具转换为简单、自文档化的CLI脚本。Claude通过Bash获得了相同的功能,但是:
- 工具模式不会使上下文膨胀(仅在以下情况下加载
--help被称为) - 命令直观且简短
- 通过以下方式进行自我记录
--help - 架构已对齐:脚本名称、参数和文档反映了原始MCP模式——代理获得相同的结构化信息,但每个MCP工具都转换为bash可调用的脚本符号链接,以便于访问
| mcporter命令行界面 | mcp2cli已生成 |
|---|---|
| 100+个字符,试剂不可靠 | ~50个字符,可靠 |
没有 --help | 满 --help 举例说明 |
| 抽象入口点 | 一个工具=一个脚本 |
| 需要完整路径 | Symlinked才能直接调用 |
| 未主动使用 | 克劳德使用可靠 |
# Before: Complex mcporter command Claude won't use proactively
npx mcporter call --stdio "npx -y chrome-devtools-mcp" chrome-devtools.take_snapshot
# After: Simple script Claude uses reliably
chrome-snapshot --selector "#main"*有关此方法背后的基本原理,请参阅 如果你不需要MCP怎么办? Mario Zechner。*
运作原理
这是一个 仅提示插件--没有可执行代码,只有Claude的指令:
- 你调用 `/mcp2cli
` 或者自然地描述你想要什么
- Claude生成了一个子代理,其中包含详细的转换说明
- 子代理使用mcporter发现MCP工具
- 使用以下命令生成Node.js CLI包装器
--help支持 - 在中创建符号链接
~/.local/bin用于直接调用 - 将工具注册到
~/.claude/CLAUDE.md
用法
斜杠命令
/mcp2cli chrome-devtools-mcp
/mcp2cli mcp-server-fetch
/mcp2cli @anthropic-ai/some-mcp-server技能(自动调用)
描述一下你想要什么:
- “将chrome devtools mcp转换为CLI工具”
- “使mcp服务器获取代理就绪”
- “将文件系统MCP包装为bash命令”
输出
生成工具是为了 ~/agent-tools//:
~/agent-tools/chrome-devtools/
├── package.json
├── README.md
├── chrome-snapshot.js
├── chrome-navigate.js
└── chrome-click.js每个脚本都符号链接到 ~/agent-tools/bin (或 ~/.local/bin 作为后备),没有 .js 扩展,因此Claude可以按名称调用——不需要完整路径:
# Just the symlink name works
chrome-snapshot --help
chrome-navigate --url "https://example.com"需求
- 麦克波特 -MCP CLI网桥
- Node.js 18+
故障排除
| 问题 | 修复 |
|---|---|
| 找不到mcporter | 确保 npx mcporter 作品 |
| 发现失败 | 服务器可能是Python--mcporter自动尝试uvx |
| 不在PATH中的工具 | 添加 ~/agent-tools/bin 或 ~/.local/bin 到你的路径 |
鸣谢
- 麦克波特 -彼得·斯坦伯格的MCP CLI桥
- 如果你不需要MCP怎么办? -Mario Zechner关于基本原理的帖子
- 主控程序 -模型上下文协议
许可证
麻省理工学院
