模型上下文协议 (MCP) 使 AI 代理能够访问外部工具和数据源,以便能够更有效地采取行动。
阅读本文后,您将能够:
复制文章链接
模型上下文协议是一种向大型语言模型 (LLM) 提供信息的标准方式。与应用编程接口 (API) 的工作方式有点类似,MCP 为计算机程序提供了一种文档化、标准化的方法,以集成来自外部来源的服务。它支持代理式 AI:即能够自主追求目标并采取行动的智能程序。
MCP 本质上是让 AI 程序超越其训练水平。MCP 使 AI 程序能够将新的信息来源纳入它们的决策和内容生成,并帮助它们连接到外部工具。
想象一下,一位助理需要为上司在餐厅订座。助理会拨打餐厅的电话号码,询问他们有空位的时间并要求留座。MCP 的作用,就是为 AI 代理提供类似"电话号码"的标准化接口,使其能够获得必要的信息来执行任务。
MCP 由 AI 公司 Anthropic 开发,后转为开源项目。自从 2024 年底开源以来,MCP 迅速成为行业标准,推动了 AI 代理技术的更广泛应用。
AI 代理是基于 LLM 而构建的 AI 程序。它们使用 LLM 的信息处理能力代表人类用户获取数据、做出决策和采取行动。
MCP 是 AI 代理查找所需信息并采取行动的一种方式。它帮助 AI 代理连接所谓的"外部世界"——即超越 LLM 训练数据范围的真实世界。(其他方法包括 API 集成和无头浏览。)
MCP 是一种协议,即一套预先约定的步骤与指令集,用于在通过网络连接的不同计算设备之间进行通信。MCP 假定采用客户端-服务器架构,其中一个客户端实体(AI 代理或辅助程序)向服务器发送请求,服务器响应请求。
MCP 客户端在 MCP 主机内运行。客户端与 MCP 服务器保持一对一连接,但多个客户端可在同一 MCP 主机上运行。因此,MCP 主机可以同时从多个 MCP 服务器提取数据。而 MCP 服务器则可以使用 API 集成从其他来源获取数据。
这意味着,一个 AI 代理可以使用 MCP 同时连接到多个服务器,但每个连接相互独立运作。这可以比作报社的记者团队——各自独立联系消息来源,然后整合信息完成新闻报道。
在 MCP 中使用四种类型的消息:
MCP 连接可分为远程和本地两种:远程连接通过互联网在 AI 代理与 MCP 服务器之间建立。在同一设备内完成(MCP 客户端与 MCP 服务器作为彼此独立的软件程序运行)。
MCP 网络通信分为三个阶段:
为了提高 MCP 的安全性,在这三个阶段之前可能会执行额外的身份验证和授权步骤。
MCP 服务器是托管在服务器或云端的程序,通过 MCP 公开各种功能供 AI 代理使用。MCP 服务器可以为 AI 代理提供访问新数据集或其他所需工具的权限。例如,MCP 服务器可能允许 AI 代理使用电子邮件服务,以便代理能代表其协助的人类用户发送电子邮件。
MCP 没有原生内置身份验证、授权或加密,因此开发人员需自行实现这些安全措施,或借助相关服务来实现。
MCP 不强制要求使用 HTTPS,许多实现中仍基于 HTTP 运行。因此,除非开发人员主动实施 Transport Layer Security (TLS),否则将会缺乏加密和身份验证。与任何网络协议一样,如果不使用 TLS,MCP 可能容易受到身份伪造或在途攻击。
由于 MCP 提供与 API 类似的功能(外部各方请求数据和服务),因此许多主要的 API 安全考虑因素也适用于 MCP 实施。提供 MCP 服务器的组织必须确保:机密数据不会泄露、资源受到保护,通过速率限制阻止过量的请求、AI 代理权限不过度开放,并对输入进行验证和净化处理。
一些 MCP 服务器提供库来简化 OAuth 实施。Cloudflare 提供了一个 OAuth 提供商库,它实现 OAuth 2.1 协议的提供商端,让您可以轻松向 MCP 服务器添加授权机制。
开发人员可以通过三种方式使用该 OAuth 提供商库:
Cloudflare 提供多个 MCP 服务器,供构建代理式 AI 的开发人员使用。Cloudflare 还允许开发人员构建和部署自己的 MCP 服务器来支持 AI 代理。了解如何在 Cloudflare 上开始使用 MCP。
入门
人工智能
机器学习
大数据
词汇