AI DAILY / 2026-09-22
MCP从一开始就是个坏主意?
MCP was always a bad idea?
全文中文翻译 · AI 生成,仅供学习交流
MCP 一直是个糟糕的主意?
我最近参加了一个全天活动,主题是 MCP 领域最新最热的东西。讲者都很厉害,看起来也都对自己做的那摊事充满热情。但说老实话,我已经烦 MCP 了。这个协议很糟糕,是给 LLM 还不算太聪明的年代设计的,现在我们已经不需要它了。

简史
MCP 是 Anthropic 团队在 2024 年 11 月发布的,定位是一种帮智能体(agent)对接外部服务和数据源的协议。
那会儿的模型还相当原始,跟现在没法比。当时连 Claude Code 都还没出来,通用智能体工作流(agentic workflow)的可靠性也差得多。
用户开始意识到,让 AI 模型去访问外部服务是有用的。这把生产力拉到了一个前所未有的高度。MCP 的采用量开始爆发,几乎同一时间,LLM 在整个经济领域的采用量也在以同样甚至更猛的势头增长。
MCP 在 Anthropic 的管理下继续演进,到了 2025 年被捐给了 Linux 基金会旗下的 Agentic AI Foundation。
MCP 工业复合体
(译注:化用自「军工复合体」,指围绕 MCP 形成并不断扩张的商业生态。)
采用量一上来,用户就开始往自己的环境里塞一堆 MCP 服务器,随之撞上了上下文膨胀(context bloat)的问题。每个服务器都带好几个工具,每个工具都有自己的模式(schema),模型的上下文就这么被撑爆了。智能体编排框架(harness)的开发者们想了不少绕过去的办法,包括现在 Composio、MintMCP、Pipedream 这些平台提供的通用搜索/执行模式。这些东西干的事其实都差不多,就是把各类外部服务的凭据集中到一个地方,再给智能体一套最小的工具集(为了压住上下文膨胀),让智能体去访问这些服务。我得讲清楚,短期内这是好事。
我们围着 MCP 造了这么多东西,但模型本身在变强这件事,我们没算进去,又或者说是故意忽略掉了。现在有整套系统专门盯 MCP 服务器的响应质量,盯智能体能不能顺利拿到工具,盯模式(schema)该怎么梳理,盯到底要给智能体喂什么,它才能在对的时机做出对的调用。
毫不意外,大实验室们是对的
模型变强了。它们现在能在电脑上跑代码,能对大型代码库做推理,整体自主性远超以往。这些工作里有相当一部分是写脚本和跑脚本,用来搞编程。一个副作用(不过这真的只是副作用吗?)是,它们现在很擅长直接调 API 了。能写脚本,能把好几个服务串起来,能调从来没见过的 API,全都在用户几乎不用插手的情况下跑出能用的工作流。
LLM 在这方面已经强到 Cloudflare 都专门推出了 Code Mode,一种更好的用 MCP 的方式,让 LLM 把各种调用编排成脚本,放进沙箱(sandbox)里执行。
但更厉害的是,LLM 已经学会用 --help 命令去发现 CLI(命令行界面)了,所以根本不用 MCP 服务器,就能拿到一大堆通过文档化 API 或 CLI 暴露的服务。绝大多数远程服务的 MCP 服务器,归根结底就是在已有的 API 外面包了一层。
那现在怎么办?
把大部分 MCP 服务器删掉。就这样。能拿到终端的智能体可以顶替大多数 MCP 服务器,而且往往更胜一筹。还是有一些问题,比如 CLI 返回的机器可读响应(JSON/XML 之类)特别啰嗦,token 消耗很猛,但我们有办法治。
替代方案的大部分其实已经在了,包括文档化的 HTTP API、标准的内容协商(content negotiation)、成熟的认证机制。
我们该开始给「智能体怎么直接用 HTTP API」定个标准了。比如智能体客户端可以挂个标头表明自己是个智能体,服务器收到就能自动返回 Markdown 或纯文本,而不是 HTML 或者一坨啰嗦的 JSON。
一些真实例子
Accept Markdown 标头
越来越多的 LLM 友好型服务器在认 Accept: text/markdown 这个标头了,尤其是文档站点这种文本密集型的网站。这些服务器能自动返回渲染好的 Markdown 文件,而不是它们平时会返回的那种 HTML 响应。这个媒体类型本身就是标准化的,把它用在面向智能体的内容协商上,正在被越来越多人接受。
文档站点用 Accept-Language 标头
最近一位 Vercel 工程师喊话智能体编排框架,让它们把客户端偏好的编程语言带上,这样文档站点就能给出更具体的例子。比如带上 Python,就可以优先返回 Python SDK 的文档,而不是甩一份通用的。Shopify 的 Tobi Lutke 特别认可这个主意,现在它已经落地到 Shopify 的文档里了。
> Malte Ubl(@cramforce)说,他很高兴大家现在会发「Accept: text/markdown」。下一步,是把你们偏好的编程语言塞进 Accept-Language 标头里。
>
> Tobi Lutke(@tobi)回,好主意,Shopify 文档会支持这个。
写在最后
围绕通用协议做标准化,才有了今天的互联网。MCP 已经是一个属于旧时代的协议。智能体已经够聪明了,能写脚本,能精确地拿到自己想要的。与其在 MCP 这条路上越钻越深,我觉得现在就该让它寿终正寝(end-of-life),直接去用那些早就把接口做好的 HTTP API 和 CLI。