Poketto

AI 界的 USB-C:MCP 让所有模型插上所有工具,也插进了新的攻击面

目录

统一工具接口与信任边界概念插画

配图:AI 生成的概念示意图,非论文原图、真实现场或实验数据。

TL;DR:Model Context Protocol(MCP)是 Anthropic 在 2024 年 11 月开源的协议,用一套统一接口把 AI 助手连到各种数据源和工具。2025 年春天,OpenAI 宣布在其 Agents SDK 中支持,Google DeepMind 也公开表示会把它加入 Gemini。统一接口降低了集成成本,但同年安全研究者就演示了“工具投毒”等攻击。这些攻击是已被演示的风险,并不等于 MCP 本身不可用。

这不是今天的新闻:MCP 发布于 2024 年 11 月 25 日,这篇文章是事后回看。

要解决什么问题

在 MCP 之前,想让 AI 助手读你的文件、查数据库、发消息,每接一个工具、每支持一个模型,几乎都要单独写一套对接代码。N 个模型乘以 M 个工具,就是 N×M 份重复劳动。Anthropic 的说法是:用一个统一协议取代这些零散的一次性集成。

发布时给了什么

据 Anthropic 当时的公告,首批内容包括:协议规范与 SDK、Claude 桌面应用对本地 MCP 服务器的支持,以及一个开源的服务器仓库,里面有 Google Drive、Slack、GitHub、Git、Postgres、Puppeteer 等预置服务器。早期采用者有 Block、Apollo,Zed、Replit、Codeium、Sourcegraph 等开发工具也在接入。

为什么叫“USB-C”

这个比喻很直观:设备只要有统一接口,就不必为每个外设单独配线。模型一端实现 MCP 客户端,工具一端实现 MCP 服务器,两边就能互相插上。

竞争对手也来了

2025 年 3 月,OpenAI 宣布 Agents SDK 支持 MCP,并表示 ChatGPT 桌面应用和 Responses API 随后跟进。约两周后的 4 月,Google DeepMind 的 Demis Hassabis 在 X 上表示 Gemini 模型和 SDK 将加入 MCP,当时没有给出时间表。能让对手主动采用,是 MCP 迅速成为事实标准的关键。

插得越多,口子越多

2025 年 4 月 1 日,安全公司 Invariant Labs 披露了“工具投毒”(Tool Poisoning):恶意服务器在工具描述里藏入给模型看的指令,用户界面却看不到。他们的演示是一个看似普通的计算器工具,其隐藏指令会诱导智能体读取 SSH 私钥和 MCP 配置文件,并通过工具调用参数带出去,在 Cursor 上演示成功。5 月,他们又展示了一条公开的恶意 GitHub issue 就可能劫持连接 GitHub MCP 服务器的智能体。

根源在于模型分不清“帮助它理解工具的描述”和“操控它的指令”。协议越通用,一个被污染的工具能影响的范围就越大。

小结

MCP 让“模型加工具”变成了即插即用,代价是信任边界变得更模糊。装第三方 MCP 服务器,和装来路不明的软件差不多:看清它要什么权限,再决定插不插。

来源:

关注这个空间,它的新文章会出现在你的关注动态里。