MCP

别名:Model Context Protocol / 模型上下文协议

把工具、数据和提示以统一协议暴露给模型客户端的开放标准。

更新于 2026/11/08
协议工具调用集成

一句话定义

MCP 是一套客户端与服务器之间的标准协议,让模型应用可以用统一方式发现和调用外部工具、读取资源和获取提示模板。

它解决什么

没有统一协议时,每个模型客户端都要为每个工具单独写适配,形成 M×N 的集成爆炸。MCP 把工具提供方抽象成服务器,把模型应用抽象成客户端,双方只需实现一套协议,就能互相组合。

核心概念

  • Tools:可执行的动作,带参数 schema,模型可以请求调用。
  • Resources:可读取的数据,例如文件、数据库记录、文档片段。
  • Prompts:可复用的提示模板,由服务器提供给客户端。
  • 传输层:本地常用标准输入输出,远程常用 HTTP 等传输方式。
  • 能力协商:客户端和服务器在连接时声明各自支持的能力。

MCP:Host / Client / Server 与 JSON-RPC

与函数调用的区别

函数调用是模型的一种能力:模型输出结构化参数,由应用执行。MCP 是集成协议:它规定工具如何被发现、描述和调用。两者互补——模型通过函数调用表达意图,客户端通过 MCP 找到并执行对应工具。

工程要点

  • 工具描述要清晰,参数和返回值尽量结构化。
  • 服务器应遵循最小权限,敏感操作需要用户确认。
  • 远程服务器要处理认证、超时和错误传播。
  • 工具结果会进入 上下文窗口,需要控制体积,避免挤占有效信息。

用在哪里

  • 一个客户端要接入多种工具/数据源,想避免重复写适配层时。
  • 需要把本地文件、数据库或第三方 API 以统一方式暴露给 Agent。

常见误区

  • MCP 不是模型本身的推理能力,它只是接入层。
  • 接入 MCP 不等于 Agent 一定可靠,工具质量和编排逻辑仍然是关键。
  • MCP 不能替代 RAG:检索策略和知识组织仍需单独设计。

相关概念

  • Agent:MCP 的主要使用场景。
  • 提示工程:工具描述和提示模板的设计基础。
  • RAG:另一类外部知识与上下文接入方式。