AI Study Online
AI新闻

为什么越来越多开发者在AI Agent开发中用CLI取代MCP

5 min read

CLI的竞争优势:Token效率与执行速度

1. 大幅降低Token消耗

Token使用量是与大语言模型(LLM)交互时的关键成本因素。MCP设计上需要向LLM发送大量元数据——包括工具名称、描述和参数模式。这种元数据膨胀可能非常惊人。

以查询OpenClaw项目的最新GitHub Issues为例。使用MCP时,你需要向LLM提供所有可用工具的列表(如list_issuescreate_branch等)及其完整规格。一个典型的GitHub集成MCP工具列表可能包含1,683行JSON,消耗高达14,268个token——仅工具元数据就需要约0.30美元(不包括LLM的输出成本)。

相比之下,像bash这样的CLI工具大幅减少了token使用量。以下是用CLI完成相同任务的方式:

gh issue list --repo openclaw/openclaw --limit 3

bash工具的元数据极小——只有几行描述command参数。相比之下,这几乎将token消耗降到了零。LLM已经训练过ghgitgrep等常见CLI工具,因此它们可以原生生成这些命令。对于小众CLI工具,只需向LLM提供简短的文档片段(通常称为Agent Skill),它就会适应。

2. 极速执行工作流

MCP工作流的瓶颈在于LLM作为中央调度器的角色。每次工具调用——从读取目录到处理图像——都需要往返LLM,导致缓慢的顺序执行。

让我们看一个实际任务:筛选风景照片(宽度大于高度)、添加水印并上传到服务器

  • MCP工作流(慢):
  • 调用read_directory获取文件名
  • 调用get_image_metadata获取每个文件的尺寸
  • 调用filter_landscape选择照片
  • 调用add_watermark处理每张选中的照片
  • 调用upload_files发送到服务器
  • 每一步都等待LLM调度下一个动作
  • CLI工作流(快): 使用单个bash命令链式调用工具:
exiftool -if '$ImageWidth > $ImageHeight' -p '$FileName' . | xargs -I {} magick {} -draw 'image over 0,0 0,0 watermark.png' -format png output/{}.png && scp output/*.png user@myserver.com:/var/www/photos/

这个命令:

  • 使用exiftool筛选风景照片
  • 使用magick(ImageMagick)添加水印
  • 使用scp上传文件
  • 所有步骤在本地按顺序运行,初始命令生成后无需LLM干预

这种Unix风格的"工具链式调用"(通过|管道和&&顺序执行等操作符实现)是CLI速度的秘诀。工具专注于单一任务(如exiftool处理元数据、magick处理图像)并无缝集成。

何时仍应使用MCP:控制与安全

虽然CLI在速度和成本上占优,但MCP在受控的安全环境(如企业系统或共享云平台)中表现出色。

1. 可预测的执行(更少错误)

CLI命令可能因意外的边缘情况而失败(例如,像Mark's Photo.png这样带撇号的文件名会使简单的CLI命令崩溃)。而MCP使用结构化的JSON输入,避免了此类语法冲突:

{
  "tool": "add_watermark",
  "input": {
    "file": "Mark's Photo.png",
    "watermark": "watermark.png"
  }
}

JSON完善的转义规则确保参数被正确解析,使MCP在关键任务中更可靠。

2. 共享环境的护栏

在云或企业环境中,让LLM运行任意CLI命令(如rm -rf /*)是一个安全噩梦。MCP工具是专门构建的——它们只做设计者允许的事情。这使得MCP在以下场景中不可或缺:

  • 多租户云工作流(例如,没有用户命令会崩溃共享服务器的风险)
  • 合规要求严格的行业(例如,医疗或金融领域,禁止未经批准的操作)

未来趋势:个人/敏捷项目用CLI,企业/安全项目用MCP

展望未来,CLI将成为个人开发者、爱好者和小型敏捷项目的首选——在这些场景中,速度和成本效率最重要。ffmpeg(视频转换)、grep(文本搜索)和magick(图像编辑)等工具将成为AI自动化的重要基础。

MCP将退回到企业和云环境——在那里,控制、安全性和可预测性是不可妥协的。它将继续为不能承受非结构化CLI命令风险的关键任务工作流提供动力。

开始在你的AI工作流中使用CLI

要开始使用CLI驱动的AI自动化:

  1. 选择常见CLI工具:gh(GitHub)、ffmpegmagickcurl开始
  2. 编写Agent Skill:对于小众工具,编写简短文档片段(例如:"my-custom-tool接受--input--output参数来处理数据")
  3. 测试链式命令:使用Unix哲学——组合简单工具构建复杂工作流

示例:用CLI自动化社交媒体流水线:

# 下载、调整大小并发布图片
curl -o image.jpg https://example.com/image.jpg && magick image.jpg -resize 1080x1080 output.jpg && twurl -X POST -H api.twitter.com -d "media_data=$(base64 output.jpg)" /1.1/media/upload.json && twurl -X POST -H api.twitter.com -d "status=Check out this image!&media_ids=MEDIA_ID" /1.1/statuses/update.json

通过拥抱CLI,你将构建更快、更便宜、更灵活的AI Agent——同时在最敏感的任务中仍然依赖MCP。这种混合方法是AI工具集成的未来。更多关于Agent架构的内容,请参考我们的Agent、Skill和Harness实用解释MCP配置指南

常见问题

问:为什么CLI比MCP更节省token?

MCP每次交互都需要向LLM发送大量元数据——工具名称、描述和参数模式。例如,一个GitHub MCP工具列表可能需要1,683行JSON,消耗14,268个token。而像'gh'这样的CLI工具元数据极少,因为LLM已经训练过常见的CLI命令。

问:什么时候应该使用MCP而不是CLI?

MCP更适合受控的安全环境,如企业系统或共享云平台。它通过结构化的JSON输入提供可预测的执行,避免语法冲突,且专有工具可以防范'rm -rf /'等危险命令。

问:如何开始使用CLI驱动的AI自动化?

从常见的CLI工具开始,如gh(GitHub)、ffmpeg、magick或curl。对于小众工具,为LLM编写简短的文档片段(Agent Skill)。练习使用Unix管道符|和&&等操作符将简单命令组合成复杂工作流。

分享这篇文章

相关文章

AI新闻中级

2026年开源AI模型:哪些可以在你的笔记本上运行

“开源AI”听起来很棒,直到你意识到大多数模型需要一台价值0,000的GPU。这里有4个真正能在普通笔记本上运行的开源模型——以及它们适合做什么。

5分钟阅读
开源本地AI笔记本