Skip to content

MCP

概述

MCP(Model Context Protocol)是一种开放协议,它标准化了应用程序向 LLM 提供上下文的方式。可以将 MCP 视为 AI 应用程序的 USB-C 端口。正如 USB-C 提供了一种将设备连接到各种外围设备和配件的标准化方式一样,MCP 提供了一种将 AI 模型连接到不同数据源和工具的标准化方式。

alt text

现阶段很多 MCP 应用仍然是基于函数调用的方式实现的,从成本和适用性的考虑这显然是最佳选项,客观反应了在定位上 MCP 与函数调用就不是竞品关系。MCP 旨在为 AI 应用提供一种协议范式,其革新性在于构建了 AI 工具交互的分层解耦架构。

alt text

基本的调用流程如下:

  1. AI 软件将 用户问题 + 可用工具 封装成一个 context 输入给 LLM(支持函数调用的模型);
  2. LLM 即可根据情况分析出当前需要调用的工具,并生成 执行函数名 + 所需参数 的模型返回;
  3. API 将其封装成实际的函数调用,并再次将 返回结果 添加到 context 中;
  4. LLM 根据最终内容判断是否还需其他工具,直到 LLM 判断已获取到所有信息后,最终输出用户期望的回答。

MCP 的基本架构

MCP的官方文档中将架构中的基本结构分为:

  • MCP 主机(MCP Hosts):发起请求的 LLM 应用程序(例如 Claude Desktop、 煎蛋智能体)。
  • MCP 客户端(MCP Clients):在主机程序内部,与 MCP server 保持 1:1 的连接。
  • MCP 服务器(MCP Servers):为 MCP client 提供上下文、工具和 prompt 信息。
  • 本地数据源(Local Data Sources):本地计算机中可供 MCP server 安全访问的资源或服务。
  • 远程服务(Remote Services):MCP server 可以连接到的远程资源(例如通过 API)。

Last updated: