MCP(Model Context Protocol) 是由 Anthropic 在 2024 年 11 月提出并开源的一个协议标准,目的是统一 AI 模型(尤其是大语言模型) 与外部资源 / 工具 / 数据源之间的交互方式。
MCP 被比喻为 AI 的 “USB-C 接口” —— 就像 USB-C 为各种外设提供统一接口一样,MCP 为 AI 模型与各类资源之间提供统一、标准化的接口。
OpenAI 在 2025 年 3 月宣布其 Agents SDK 已支持 MCP,从而使 OpenAI 的生态也兼容该协议。
多家厂商和工具也在采纳 MCP,包括 IDE、插件、代理框架、知识库 / 应用平台等。
大模型为什么要调用外部工具
LLM(大语言模型)不是万能的。
- 模型的能力有限
-
知识更新滞后:模型训练完成后,参数里包含的知识是静态的,无法获取最新的新闻、股价、天气等动态信息。
-
算力与精度限制:模型并不适合做精确计算,比如数学运算、大规模检索、逻辑推理,容易出错。
👉 解决办法:通过调用计算器、数据库、搜索引擎等外部工具,弥补模型本身的短板。
- 任务需要与现实世界交互
-
大模型本身只会“生成文本”,但很多任务需要 操作:
发邮件、写入文件、调用API、控制机器人、调度容器等等。
-
这些操作必须通过 外部系统/工具接口 完成,而不是靠模型“猜测”。
👉 工具调用让 LLM 能够变成 智能代理(Agent),主动影响现实世界。
- 增强可靠性和可控性
-
大模型容易出现幻想,从而编造看似合理的错误答案。
-
工具调用能把关键步骤交给专业模块(如代码执行器、数据库查询器),从而提高准确性。
例如:
-
模型生成 SQL → 工具执行 → 返回真实数据。
-
模型生成 Python → 运行 → 输出结果。
这样就能减少“幻觉”。
- 扩展性强
-
模型本身不用无限增大参数,只需要学会调用工具。
-
类似于人类:不需要什么都会,而是 知道何时去查书、用计算器、找朋友帮忙。
-
LLM + 工具 = 可无限扩展的智能系统。
- 现实应用场景需要
-
智能客服:调用数据库/API 获取订单信息。
-
法律/金融助手:检索法规、计算利率。
-
AI 编程助手:生成并运行代码。
-
AI 办公助手:操作 Excel、日历、邮件。
大模型调用外部工具是因为 大模型并不是全知全能,而是作为一个“语言中枢”,通过调用 外部算力、数据源和服务 来弥补自身局限,使其更准确、更实用、更可控。
MCP简介
MCP的主要目标是解决大模型与各种工具的交互问题,如果大模型和工具服务都遵循MCP实现,那么网络上各式各样的大模型和工具就可以肆意协同工作了。
MCP 遵循客户端-服务器架构(client-server),其中包含以下几个核心概念:
- MCP 主机(MCP Hosts):发起请求的 LLM 应用程序(例如 Claude Desktop、IDE 或 AI 工具)。
- MCP 客户端(MCP Clients):在主机程序内部,与 MCP server 保持 一对一 的连接。
- MCP 服务器(MCP Servers):为 MCP client 提供上下文、工具和 prompt 信息。
- 本地资源(Local Resources):本地计算机中可供 MCP server 安全访问的资源(例如文件、数据库)。
- 远程资源(Remote Resources):MCP server 可以连接到的远程资源(例如通过 API)。
MCP 的设计目标与价值
-
标准化集成
过去每个 AI + 外部资源集成,往往要写专属对接代码(N × M 问题)。MCP 的目标是用一个统一协议,降低这样的对接成本。 -
双向交互 & 安全访问
模型不仅能读取数据,还能调用工具、执行操作(如数据库查询、函数调用、文件操作等),并把结果反馈回来。与此同时,协议需要设计访问控制、身份验证、权限隔离等机制。 -
模块化 / 可组合的系统
MCP 支持按需启用协议组件(功能模块),使得 AI 应用可以根据自身需求,只实现部分功能(工具调用、资源访问、提示上下文管理等)。 -
多种传输方式支持
MCP 协议定义了协议层(消息格式、方法名称、参数结构等)与传输层(如何发送消息)之间的分离。它支持标准输入/输出(stdio)、HTTP + SSE 等作为传输方式。
MCP与普通API的区别
大模型与工具之间的调用显然不一定非得用MCP,那么MCP与普通API的区别是什么呢?请参见下图:
从上图可以看出,MCP和普通API通信模式不同:
- MCP:基于 双向流式通信(例如 WebSocket、JSON-RPC over stdio)
- 普通API:基于 HTTP 请求/响应
MCP是面向 大模型和 Agent 的 工具调用协议,更适合模型驱动的自动化调用。
从使用场景上来看:
- MCP
- 用于大模型插件生态(比如 Claude MCP、未来 OpenAI 插件生态)。
- 适合 AI Agent 自动调用工具,不需要开发者手写调用逻辑。
- 普通API
- 用于传统 Web 系统、微服务、开放 API 平台。
- 适合开发者在一般场景使用。
总结
MCP 是为大模型设计的“统一插件协议”。 它让模型像一个“智能操作系统用户”,可以安全、可控地访问外部世界的资源与工具。
🪐祝好运🪐