Appearance
MCP 协议再认识:工具、资源与授权边界
2026-10-12 修订。原文“协议战争结束”等判断缺少可验证依据,现按官方规范重写。协议仍在演进,实施时应核对目标版本。
Model Context Protocol(MCP)为 AI 应用连接外部数据和工具提供协议。官方架构区分 Host、Client 和 Server:Host 是 AI 应用,Client 负责与一个 Server 通信,Server 提供上下文或能力。
MCP 能提供什么
服务端可提供 Resources(上下文数据)、Prompts(模板)和 Tools(可调用功能)。协议规定消息与能力发现等交互方式,不自动决定应用是否应调用某个工具,也不替应用完成用户授权、权限校验和数据保护。
本地与远程连接方式不同,认证方式也会不同。接入前应核对目标 Host、Server 和 SDK 支持的同一协议版本,避免把不同时期规范中的传输、会话或能力字段混用。
与 A2A 的范围
A2A 主要面向独立 Agent 之间的发现、任务协作和信息交换;MCP 主要解决 AI 应用如何接入上下文和工具。两者可以在系统中同时存在,但不是“谁取代谁”的简单关系。
接入检查
- 列出需要的工具和数据,优先使用只读、最小权限的接口。
- 审查工具说明与外部返回内容,把它们视为不可信输入。
- 对写操作明确用户授权、参数校验、审计与可撤销方式。
- 测试连接中断、超时、重复调用和服务端版本变化。
- 记录数据流向,避免把敏感上下文发送给不必要的服务端。