完整题目
什么是 Model Context Protocol(MCP)?它解决哪些接入问题,与 Function Calling 如何配合,又不能替代什么?
本文目录
MCP 的定位
Model Context Protocol(MCP)是一套开放协议,用来让 AI 应用以一致方式连接提供上下文或动作的服务。它规定消息和生命周期、能力协商,以及工具(Tools)、资源(Resources)、提示模板(Prompts)等能力如何被列出和调用。它降低了重复适配成本,但不会让任意 Server 自动安全、可靠或兼容所有 Host。
Host、Client 与 Server
- Host:面向用户的 AI 应用,负责模型、权限策略、用户同意和整体编排。
- Client:Host 内与某个 Server 建立有状态连接的协议组件,协商能力并交换消息。
- Server:提供工具、资源或提示等能力,可以是本地进程,也可以通过受支持的远程传输连接。
Host 会控制哪些 Server 可连接、哪些能力能呈现给模型,以及调用前是否需要用户确认。Server 暴露能力不等于获得 Host 或用户的全部权限。
它解决什么,不保证什么
没有共同协议时,每个应用与每个服务往往需要单独约定发现、schema、请求和响应。MCP 复用这些协议层契约,因此常用 M×N 到 M+N 解释潜在收益。但这只是理想化心智模型:认证、授权、数据模型、错误语义、版本、用户体验和业务适配仍可能需要逐个实现,不能把 5×10 必然降为 15 套。