文章

AI 也需要 USB-C:一文看懂 MCP 到底是什么

用 USB-C 的类比讲清楚 MCP(模型上下文协议)是什么、为什么 AI 需要它,以及它如何统一 AI 与外部工具的连接方式。

AI 也需要 USB-C:一文看懂 MCP 到底是什么

2024 年 11 月,Anthropic 开源发布了 MCP。到今天,它已经逐渐成为 AI Agent 生态里一个绕不开的关键词。

但对大多数人来说,Model Context Protocol(模型上下文协议) 这个名字依然有些抽象。

其实,理解 MCP 并不难。

🔌 一句话:MCP 就是一套让 AI 连接外部数据和工具的标准协议。

如果觉得“标准协议”还是太抽象,可以再换一个更直观的理解——AI 世界里的 USB-C

AI 世界的 USB-C:MCP 概念图


01|为什么 AI 需要 MCP?

今天的大模型已经很聪明:会写代码、做分析、读文档、做推理。但如果你对 AI 说:

“帮我看看昨天 GitHub 上改了什么,再结合服务器日志分析一下为什么线上报错增加了。”

问题马上就来了。AI 可能很会分析,但它默认看不到你的 GitHub,也看不到服务器日志。它拥有一个聪明的“大脑”,却不一定拥有获取真实数据和调用外部工具的能力。

过去解决这个问题,只能一个个做集成:接 GitHub 写一套,接数据库写一套,接企业系统再写一套。

AI 应用和工具一多,中间就会出现大量重复的适配工作:

🧮 5 个 AI 应用 × 10 个工具 = 最坏情况要写 50 次集成

MCP 想做的,就是把这种连接方式标准化。

以前,是每个工具各接各的:

没有 MCP:每接一个,写一套

AI ↔ GitHub
AI ↔ 数据库
AI ↔ 文件系统
AI ↔ 企业系统

MCP 希望把它统一成:

有了 MCP:只接一次,处处可用

AI ↔ MCP ↔ 各种数据和工具

这和 USB-C 的思路很像:设备本身没有变,但连接方式统一了


02|MCP 到底是什么?

MCP 的全称是 Model Context Protocol。它不是大模型,不是 Agent,也不是某一种具体工具。它更像是一套大家约定好的“沟通规则”:外部工具按照这套规则提供能力,AI 应用也按照这套规则去发现和使用这些能力。

所以,MCP 并不会让 GPT、Claude 之类的大模型突然变聪明。它解决的是另一个问题:

一个已经足够聪明的 AI,怎样方便地拿到需要的信息,并调用需要的工具?

如果把大模型比作“大脑”,那么 MCP 做的,就是帮这个大脑接上外部的眼睛和手

👀 眼睛:读取文件、数据库、代码、业务信息

🖐️ :搜索、调用工具、操作软件、执行任务

最后澄清一个常见误解:

⚠️ MCP 并不是为了取代 API。

很多 MCP Server 背后调用的依然是传统 API、数据库或其他服务。MCP 真正统一的,是 AI 使用这些能力的方式


03|MCP 是怎么工作的?

理解 MCP,先搞清楚三个角色:

Host、Client、Server。

它们的基本关系是:

用户 → Host → MCP Client → MCP Server → 外部数据 / 工具

角色负责什么可以怎么理解
Host承载 AI 应用,协调模型和各种工具总指挥
Client负责和 MCP Server 通信联络员
Server提供具体的数据或工具能力服务提供方

Host、Client、Server 三者的关系

🏠 Host:AI 的工作台

Host 是用户真正使用的 AI 应用,比如 AI 助手、AI 编程工具或 Agent。

像 Claude Code、Codex 这类产品,在通过 MCP 连接外部工具时,扮演的就是 Host 的角色。

Host 负责接收任务、调用模型、管理工具,并决定某个工具应该怎么被执行。

📞 Client:负责通信

Client 位于 Host 一侧,负责和 MCP Server 建立连接、发送请求、拿回结果。

可以简单记成一句:

Host 决定找谁办事,Client 负责去联系。

🛠 Server:真正提供能力

Server 是站在外部、提供具体能力的一方。

比如 GitHub 的 MCP Server 提供代码仓库相关能力,数据库的 MCP Server 提供数据查询,文件系统的 MCP Server 让 AI 能读取指定文件。

⚙️ 一次工具调用是怎么发生的?

搞清楚三个角色之后,还要再往前走一步:这些工具到底是怎么被模型调用的?

一个典型的流程大致是这样的。

1️⃣ 第一步:Host 先知道 Server 会什么

Host 连接一个 MCP Server 后,会先了解这个 Server 提供了哪些工具。

比如一个 GitHub MCP Server 可能提供:

  • search_code(搜索代码)
  • get_issue(查看某个 Issue)
  • list_pull_requests(列出所有 PR)

这些工具的名称、用途和参数,会被注册到 Host 的“工具箱”里。

也就是说,不是模型自己跑到 Server 上寻找工具,而是 Host 先把“你现在可以用哪些工具”告诉模型。

2️⃣ 第二步:模型选择要用哪个工具

当用户提出任务后,大模型会根据问题和工具描述,判断自己是否需要调用工具。

比如用户说:

“帮我看看 123 号 Issue 具体是什么问题。”

模型可能判断需要调用:

get_issue(issue_number=123)

这里,大模型负责的是选择工具、给出参数,但并不负责真正执行。

3️⃣ 第三步:Host 负责路由

接下来轮到 Host。

Host 会判断这个工具来自哪里。如果是自己内置的工具,就直接调用;如果它来自某个 MCP Server,就交给对应的 MCP Client。

所以可以把这条链路理解成:

一次 MCP 工具调用的完整链路

例如你问:

“帮我看看昨天上线的代码,为什么会导致线上报错。”

Host 把可用工具提供给模型,模型判断需要查看代码和日志。如果这些能力来自 MCP Server,Host 就通过对应的 Client 发起调用;Server 返回代码提交和错误日志,再交给模型继续分析。

模型本身没有变,但它获取信息和调用工具的方式变了。

这就是 MCP 最核心的工作逻辑:

Server 提供能力,Host 注册工具,模型选择工具,Client 负责调用。


04|为什么 MCP 值得关注?

真正让 MCP 变得重要的,并不只是“统一接口”这件事,而是 AI 正在发生一个更大的变化:

从 Chatbot,走向 Agent。

Chatbot 和 Agent 的差别,用一张表看最清楚:

 ChatbotAgent
🗣️ 交互方式你问,它答你给一个目标,它自己找信息、调用工具,把事情做完
🔌 需要外部连接吗基本不需要必须连得上文件、数据库、系统

但 AI 真想“干活”,光有一个聪明的大模型显然不够。所以,一个真正能工作的 AI,更像是:

🧩 大模型 + 数据 + 工具 + 工作流

而 MCP 解决的,恰恰就是其中最关键的连接问题

🕐 过去我们最关注:这个 AI 聪不聪明?

🚀 接下来越来越重要:这个 AI 能不能真正把事情做完?

从这个角度看,MCP 的意义也就很清楚了。


写在最后

USB-C 并没有让电脑性能翻倍,但它让不同设备之间的连接简单了很多。

MCP 也是类似的角色。

🔌 它不负责让 AI 变聪明,而是让一个已经足够聪明的 AI,更方便地连接外部世界。

当 AI 既有一个强大的大脑,又能真正获取数据、调用工具、执行任务时,它才会从会聊天的 AI,变成能干活的 AI

而这,或许才是 MCP 最值得关注的地方。


💬 如果这篇文章帮你搞懂了 MCP,欢迎点赞、在看、转发给同样需要的朋友。

关注我,持续拆解 AI 领域的原理、工具与工程实践 👋

本文由作者按照 CC BY 4.0 进行授权