什么是 MCP?模型上下文协议详解
MCP,即模型上下文协议(Model Context Protocol),是一个开放标准,用于将 AI 助手连接到它们所需的工具和数据,例如文件、数据库、业务应用和开发者平台。每个 AI 应用无需为每项服务单独构建定制集成,服务方只需提供一个“MCP 服务器”,任何支持 MCP 的 AI 应用都能使用它。Anthropic 于 2024 年 11 月推出了 MCP,并在 2025 年 12 月将其捐赠给了 Linux 基金会下的 Agentic AI Foundation(智能体 AI 基金会)。
用 AI 构建时为什么它很重要
AI 智能体的作用取决于它能够调用的工具。一个无法看到你的项目文件、数据库或日历的模型,只能谈论这些内容。MCP 就是让智能体真正使用这些东西的底层管道,而且要经过你的许可。
对于用 AI 构建东西的人来说,这有两方面的意义。第一,它让你可以继续使用你喜欢的 AI 助手(例如 Claude、Cursor 等),并接入更多你的工具,而无需在不同应用之间切换。第二,如果你开发产品,提供 MCP 服务器就意味着 AI 助手可以直接与它协作。你会越来越多地在产品设置中看到“通过 MCP 连接”与“通过 API 连接”并列出现。
一个日常类比
想象一下出门旅行时的电源插头。每个国家的插座都不同,所以你要带一袋转换插头,每次出行都得备上。在 MCP 出现之前,把 AI 应用连接到各种服务就像这样:每一对 AI 应用和服务都需要一个专门的转换插头。
MCP 就像约定了一种统一的插座形状。服务方制作一种插头(MCP 服务器),AI 应用方制作一个插座(MCP 客户端)。任何带有这种插头的设备都能在任何插座里使用。真正的电力——也就是实际的数据和操作——仍然来自服务本身,而且你仍然要自己决定插上哪些设备。
MCP 如何工作
MCP 包含三种角色:
| 角色 | 含义 | 示例 |
|---|---|---|
| 宿主(Host) | 你使用的 AI 应用 | Claude、Cursor、AI 应用构建器 |
| 客户端(Client) | 宿主中负责与某一个 MCP 服务器通信的部分 | Claude 与你的项目工具之间的连接 |
| 服务器(Server) | 以 MCP 格式对外提供某项服务能力的程序 | 用于 GitHub、数据库或应用构建器的服务器 |
一个服务器可以提供三类主要内容:
- 工具(Tools):AI 可以执行的操作,例如
create_project、search_files或send_message。每个工具都有名称、描述和一组定义好的输入,因此 AI 知道何时以及如何使用它。 - 资源(Resources):AI 可以读取的数据,例如文件或记录。
- 提示词(Prompts):服务器提供的现成指令模板。
当你连接一个服务器时,宿主会询问它提供哪些功能。随后,AI 模型会看到一个可用工具的列表及其描述,并在对话过程中决定是否调用其中某个工具。宿主将调用请求发送给服务器,服务器完成工作,结果再返回给模型。
服务器可以通过两种方式运行。本地服务器运行在你自己的电脑上,由 AI 应用启动。远程服务器运行在互联网上,通过 URL 访问;远程服务器通常要求你登录并批准访问,使用的是 OAuth,这与你把应用连接到 Google 账户时看到的“允许访问?”页面是同一种机制。
实例:用你的 AI 助手构建应用
假设你使用 Claude,并希望它在一个提供远程 MCP 服务器的托管平台上构建并发布一个小应用。
- 连接。 在 Claude 的连接器设置中,添加该平台的 MCP URL。浏览器会打开平台的授权页面;你登录并点击允许访问。
- 发现。 现在 Claude 能看到该平台的工具:创建项目、写入文件、运行命令、启动预览、发布。
- 提问。 你输入:“创建一个简单的小费计算器应用并发布。”
- 执行。 Claude 调用
create_project,然后多次调用write_file写入应用代码,接着调用start_preview,检查预览是否正常,最后调用publish。 - 反馈。 它把上线链接告诉你。
你不需要在窗口之间复制代码,也不需要了解平台的 API。Claude 使用的是标准的 MCP 工具调用,而平台则在你的账户和规则之下完成工作。同一个平台服务器也能以同样的方式与其他兼容 MCP 的宿主配合使用。
关键术语说明
| 术语 | 含义 |
|---|---|
| MCP | 模型上下文协议,即连接 AI 应用与工具和数据的开放标准。 |
| MCP 服务器 | 通过 MCP 对外提供某项服务的工具和数据的程序。 |
| MCP 客户端 / 宿主 | 连接服务器并使用其工具的 AI 应用一侧。 |
| 工具(Tool) | 服务器提供的一项操作,带有名称、描述和输入。 |
| 资源(Resource) | 服务器提供的可读数据,例如文件或记录。 |
| 远程 vs 本地服务器 | 通过互联网以 URL 访问,还是运行在你自己的机器上。 |
| OAuth | 一种标准方式,可以在不共享密码的情况下授予应用访问你账户的权限。 |
| 连接器(Connector) | 许多 AI 应用对所添加集成的称呼,通常是一个 MCP 服务器。 |
| 提示词注入(Prompt injection) | 智能体读取的数据中夹带的文字,试图让它执行你并未要求的操作。 |
常见错误与误解
- “MCP 只属于 Claude。” 它由 Anthropic 创建,但现在已是由 Agentic AI Foundation 管理的开放标准,许多 AI 应用和开发者工具都支持它。
- “MCP 取代了 API。” 它是架在 API 之上的。大多数 MCP 服务器在后台都会调用服务自身的常规 API。MCP 所标准化的,是 AI 应用如何发现并使用这些功能。
- “连接一个服务器是无害的。” 服务器的工具可以读取并改变真实的内容。只连接你信任的服务器,并尽量选择服务方本身提供的服务器。
- 授予超出所需的访问权限。 如果服务器提供只读访问或范围更窄的权限,请从这里开始。
- 忽视智能体所读取的内容。 通过 MCP 获取的邮件、网页或文档中可能包含针对 AI 的指令。对于发送、删除或付款等操作,请保持审批开启。
- 为了“帮助”连接而把密钥粘贴到聊天中。 远程服务器应使用登录流程或安全存储的令牌,而不是在对话中粘贴密钥。参见如何妥善保管 API 密钥。
向你的 AI 构建器(或助手)提出的请求
- “目前连接了哪些 MCP 服务器?每个服务器提供哪些工具?”
- “在使用任何会更改或删除内容的工具之前,请先问我。”
- “这项任务只使用只读工具。”
- “这个服务器是以什么账户身份运行的?”
- “为我的应用添加一个 MCP 服务器,让 AI 助手可以[查询订单]。要求登录,并且只向已登录用户开放其自己数据的读取权限。”
MCP 与 Mythex
Mythex 在两个方向上都支持 MCP。它运行着自己的远程 MCP 服务器,地址为 https://mcp.mythex.ai/mcp:在 Claude、Cursor 或 Codex 中将该 URL 添加为自定义连接器,然后在 Mythex 上批准访问,助手就可以在你的 Mythex 云端沙盒中创建项目、编辑文件、运行命令、预览和发布。任何人都可以连接,但工具调用需要 Pro 套餐和积分,而外部助手自身的用量则由其服务商计费。在另一个方向上,Mythex 自己的智能体也可以使用外部 MCP 服务器:连接器 → 自定义 MCP 接受任何服务器的 URL,每个账户最多可添加十个。要了解更宏观的内容,参见什么是 API和什么是 AI 智能体。
常见问题
MCP 代表什么?
MCP 即 Model Context Protocol(模型上下文协议)。它是一个开放标准,定义了 AI 应用如何连接外部工具和数据源,因此一个工具只需构建一次,就能与多种不同的 AI 助手配合使用。
MCP 是谁创建的?
Anthropic 于 2024 年 11 月推出并开源了 MCP。2025 年 12 月,Anthropic 将其捐赠给了 Agentic AI Foundation(智能体 AI 基金会),这是 Linux 基金会下的一个基金,因此该标准现在由一个中立机构管理。
MCP 和 API 有什么区别?
API 是某个具体服务对外提供其功能的方式,每个 API 的工作方式各不相同。MCP 则是架在它们之上的一个通用层:MCP 服务器以标准化的方式把服务的功能封装为工具,因此任何兼容 MCP 的 AI 应用都可以发现并使用它们,而无需编写定制的集成代码。
MCP 安全吗?
MCP 本身只是一个协议,安全性取决于你连接了哪些服务器,以及这些服务器能做什么。只连接来自可信来源的服务器,授予能满足需求的最小访问权限,由你自己批准有风险的操作,并注意:智能体读取的数据中可能包含意在误导它的指令。
使用 MCP 需要是开发者吗?
使用并不需要。许多 AI 应用允许你粘贴远程 MCP 服务器的 URL,然后登录并批准访问即可添加。不过,构建你自己的 MCP 服务器则需要编程。