资讯|

MCP被判死刑了?一个开发者说CLI才是AI Agent的未来,HN 300人吵翻了

HN 上一篇「MCP is dead, Long live the CLI」引发 300 人大讨论。作者认为 LLM 根本不需要 MCP,给一个 CLI 就够了。评论区吵翻天,两派各执一词。

前两天 Hacker News 上有一篇文章炸了锅:「MCP is dead. Long live the CLI.」

作者 Eric Holmes 直接把 MCP(Model Context Protocol)判了死刑,然后洋洋洒洒写了一大篇论证为什么 CLI 才是 AI Agent 的正确姿势。

292 个 upvotes,198 条评论。这热度,在 HN 上算是顶级了。

先说 MCP 是啥

如果你还不知道 MCP,简单说:这是 Anthropic 在 2024 年推出的一个协议,让 LLM 能用标准化的方式调用外部工具。比如连 Jira、查邮件、操作数据库,都走 MCP 统一接口。

推出的时候,整个行业都疯了。每家公司都急着做 MCP server,生怕别人觉得自己不够"AI first"。

作者的核心论点

Eric Holmes 的观点很简单粗暴:LLM 根本不需要一个专门的协议来调用工具,给它一个 CLI 就够了。

他列了几个理由,我觉得都挺实在:

1. LLM 天生就会用命令行

大模型训练数据里有海量的 man page、Stack Overflow、GitHub 上的 shell 脚本。你让 Claude 跑一个 gh pr view 123,它直接就会。不需要什么中间协议。

2. 可组合性差距太大

CLI 的精髓在于管道。terraform show -json plan.out | jq '.resource_changes[]' 这种操作,在 MCP 里几乎不可能。你要么把整个输出塞进上下文窗口(贵,而且可能放不下),要么在 MCP server 里手写过滤逻辑。

3. 调试的噩梦

用 CLI,出了问题我直接跑同样的命令看输出。用 MCP?你得去扒 JSON transport 日志,像考古一样。

4. MCP 进程管理是个坑

MCP server 本质上是一个需要常驻的进程。它要启动、保持运行、不能默默挂掉。而 CLI?就是磁盘上的一个二进制文件,用完就走,不占资源。

作者说他用 Claude Code 的时候,MCP server 启动失败的次数已经数不清了。

HN 评论区更精彩

评论区基本分成两派。

CLI 派占了大多数,很多人现身说法:

"我的 AI agent 通过 shell 命令控制整个开发流程,效果好得吓人。agent 就凭 --help 输出就能搞定从没见过的 CLI flag。而我用过的每个 MCP server 都需要人盯着。"

"试过 Jira MCP,一团糟。还不如让 LLM 直接调 API、自己写脚本。写出来的脚本还能复用,上下文消耗也少得多。"

MCP 派虽然少数,但也有几个不错的反驳:

"MCP 的好处是你可以控制输出。CLI 输出太多照样烧 token。但 MCP 可以分页,可以让 agent 先看有多少结果,再决定怎么拿。"

"MCP 更像 REST 或 gRPC 的封装层。如果 CLI 不是你自己写的,你很难保证 agent 不会用到危险的 flag。MCP 至少能做白名单。"

还有一个特别有意思的评论,一针见血:

"MCP 是在 LLM 还没那么强的时候搞出来的。现在 coding agent 进化了,回头看 MCP 确实有点多此一举。"

我怎么看

说实话,这个争论的本质不是 MCP vs CLI,而是 「给 AI 一个精心设计的接口」vs「让 AI 自己搞定」

两年前,LLM 调用工具还不太稳定,MCP 的标准化确实有价值。但现在?Claude、GPT-4 这些模型用 CLI 已经像老手程序员一样熟练了。

有个评论说得特别好:有人让 Claude 下载了 ffmpeg 和 Blender 的源码,然后自己读代码理解那些文档里没写的功能。这种级别的「自学能力」,确实让 MCP 的「标准化文档」显得有点多余。

但 MCP 不会完全死掉。在企业环境里,安全控制、权限管理、审计追踪,这些都是 CLI 天然缺失的。你不可能让 AI agent 在生产环境里随便跑 shell 命令。

最终的赢家大概是某种混合方案:日常开发用 CLI,企业级部署用 MCP 做一层安全封装。不是非此即彼,而是看场景选武器。

不过有一点是确定的:那些纯粹为了「AI first」营销而做的 MCP server,可以准备入土了。

准备好了吗?

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