MCP 为 AI 应用创建了标准化的双向连接,使 LLM 能够轻松连接各种数据源和工具。MCP 建立在工具使用和函数调用等现有概念之上,并对其进行标准化。这样就无需为每个新的 AI 模型和外部系统创建自定义连接。它使 LLM 能够使用最新的真实数据、执行操作,并访问其原始训练中未包含的专业功能。
Model Context Protocol 具有清晰的结构,各组件协同工作,帮助 LLM 与外部系统轻松交互。
LLM 包含在 MCP 主机中,也就是 AI 应用或环境,例如由 AI 赋能的 IDE 或对话式 AI。这通常是用户的交互点,MCP 主机会在此使用 LLM 处理可能需要外部数据或工具的请求。
MCP 客户端位于 MCP 主机内,帮助 LLM 与 MCP 服务器进行通信。它将 LLM 的请求转换为 MCP 可处理的格式,并将 MCP 的回复转换为 LLM 可理解的格式。它还会发现并调用可用的 MCP 服务器。
MCP 服务器是为 LLM 提供上下文、数据和功能的外部服务。它通过连接数据库和 Web 服务等外部系统来帮助 LLM,将这些系统的响应转换为 LLM 可理解的格式,从而协助开发者提供多样化的功能。
传输层通过 JSON-RPC 2.0 消息在客户端和服务器之间通信,主要采用以下两种传输方式:
Model Context Protocol 的核心功能是允许 LLM 请求外部工具协助回答查询或完成任务。假设您向 AI 助理发出以下指令:“在我们的数据库中查找最新的销售报告,并将其通过电子邮件发送给我的经理。”
以下简要说明 MCP 将如何处理这种情况:
Model Context Protocol (MCP) 和检索增强生成 (RAG) 都通过外部信息来增强 LLM,但方式不同,目的各异。RAG 用于查找和使用信息以生成文本,而 MCP 是一个更广泛的交互与操作系统。
功能 | Model Context Protocol (MCP) | 检索增强生成 (RAG) |
主要目标 | 标准化 LLM 的双向通信,使其能够访问并与外部工具、数据源和服务交互,从而在检索信息的同时执行操作。 | 在生成回答之前,从权威知识库中检索相关信息,以增强 LLM 的回答。 |
机制 | 定义了用于 LLM 应用调用外部函数或从专用服务器请求结构化数据的标准化协议,从而实现操作和动态上下文集成。 | 包含一个信息检索组件,用于根据用户查询从知识库或数据源中拉取信息。然后,检索到的信息将增强 LLM 的提示内容。 |
输出类型 | 使 LLM 能够生成结构化调用以调用工具、接收结果,并根据这些结果和操作生成可供人类阅读的文本。也可以涉及实时数据和函数。 | LLM 根据其训练数据生成回答,该数据已通过外部文档中与查询相关的文本进行增强。通常重点关注事实准确性。 |
互动 | 专为主动交互和在外部系统中执行任务而设计,为 LLM“使用”外部功能提供“语法”。 | 主要用于被动检索信息,为文本生成提供依据;通常不用于在外部系统中执行操作。 |
标准化 | 这是一种开放标准,规范 AI 应用为 LLM 提供上下文的方式,从而实现集成标准化并减少对自定义 API 的依赖。 | 这是一种用于改进 LLM 的技术或框架,但并非适用于不同供应商或系统之间工具交互的通用协议。 |
使用场景 | AI 智能体可执行任务(例如预订航班、更新 CRM、运行代码)、提取实时数据,并实现高级集成。 | 问答系统、能提供最新事实信息的聊天机器人、文档摘要功能,以及降低文本生成中幻觉内容的出现。 |
功能
Model Context Protocol (MCP)
检索增强生成 (RAG)
主要目标
标准化 LLM 的双向通信,使其能够访问并与外部工具、数据源和服务交互,从而在检索信息的同时执行操作。
在生成回答之前,从权威知识库中检索相关信息,以增强 LLM 的回答。
机制
定义了用于 LLM 应用调用外部函数或从专用服务器请求结构化数据的标准化协议,从而实现操作和动态上下文集成。
包含一个信息检索组件,用于根据用户查询从知识库或数据源中拉取信息。然后,检索到的信息将增强 LLM 的提示内容。
输出类型
使 LLM 能够生成结构化调用以调用工具、接收结果,并根据这些结果和操作生成可供人类阅读的文本。也可以涉及实时数据和函数。
LLM 根据其训练数据生成回答,该数据已通过外部文档中与查询相关的文本进行增强。通常重点关注事实准确性。
互动
专为主动交互和在外部系统中执行任务而设计,为 LLM“使用”外部功能提供“语法”。
主要用于被动检索信息,为文本生成提供依据;通常不用于在外部系统中执行操作。
标准化
这是一种开放标准,规范 AI 应用为 LLM 提供上下文的方式,从而实现集成标准化并减少对自定义 API 的依赖。
这是一种用于改进 LLM 的技术或框架,但并非适用于不同供应商或系统之间工具交互的通用协议。
使用场景
AI 智能体可执行任务(例如预订航班、更新 CRM、运行代码)、提取实时数据,并实现高级集成。
问答系统、能提供最新事实信息的聊天机器人、文档摘要功能,以及降低文本生成中幻觉内容的出现。
Model Context Protocol 为开发和部署 AI 驱动的应用带来多项潜在优势,使 LLM 更加多功能、可靠且高效。
LLM 本质上可能会编造事实,或生成看似合理但实则错误的信息(产生幻觉),因为其回答基于训练数据而非实时信息。MCP 提供清晰路径,使 LLM 能访问外部可靠数据源,从而提高回答的真实性并减少幻觉。
该协议可扩展 AI 的能力,并实现其自主运行。通常,LLM 仅了解其训练数据,而这些数据可能很快变得过时。不过,借助 MCP,LLM 可以连接多个现成工具与集成,如业务软件、内容存储库和开发环境。这意味着 AI 能胜任更复杂的任务,例如更新 CRM 系统中的客户信息、在线查询时事或执行特定计算。通过直接连接这些外部工具,LLM 不再是单一的聊天程序,而是具备自主行为能力的智能体,从而实现更大程度的自动化。
在 MCP 推出之前,LLM 要连接到不同的外部数据源和工具非常困难,通常需要专用连接或供应商专属方法。这导致系统变得极其复杂且混乱,通常称为“N x M”问题,因为每新增一个模型或工具,所需的自定义连接数量都会快速增长。MCP 提供了一个通用的开放标准,简化了连接过程,就像 USB-C 接口让设备连接更轻松一样。这种简化的方法有助于降低开发成本,加快 AI 应用开发,并构建更互联的 AI 环境。开发者还可以更轻松地在不同 LLM 提供商之间切换,并添加新工具,无需大幅修改。
虽然 Model Context Protocol 通过连接外部系统提升了 LLM 的能力,但也带来了关键的安全考量。由于 MCP 可访问任意数据,且可能通过连接工具运行代码,因此必须具备强大的安全机制。
MCP 的核心安全原则包括:
开发者遵循这些原则,即可充分发挥 MCP 的能力,同时防范潜在风险。
要实现 Model Context Protocol,您需要一套强大且可靠的基础架构,以支持 LLM、MCP 服务器和底层数据源的高效运行。云平台提供构建完整解决方案所需的可扩缩、安全组件。您可以按照以下方式着手实施:
MCP 服务器是连接您外部工具的桥梁。您可以根据自身需求选择:
统一的 AI 平台对于整合所有组件至关重要。Vertex AI 可帮助您管理由 MCP 提供支持的应用的整个生命周期: