🔧 工具、MCP 与 Agent 协议
MCP 深入
工具、MCP 与 Agent 协议专题:用 2 个核心问题讲清原理、取舍与落地。
一句话定位
工具契约、注册发现、执行网关、MCP、A2A 与网络安全。 模型只负责提出调用;宿主负责发现、校验、授权、执行、重试、审计和返回结果。
核心原理与问题解析
MCP 的 Tools、Resources、Prompts 谁控制?
Tools 通常由模型选择,Resources 由应用选择加入上下文,Prompts 由用户显式选择。具体客户端可有差异,但控制边界有助于设计同意与权限。
继续想: Sampling 是谁发起?;Roots 解决什么?
MCP 的 Host、Client、Server 如何通信?
Host 内为每个 Server 管理 Client 会话,协议使用请求、响应和通知交换能力;传输可本地 stdio 或远程 HTTP。Host 负责用户体验和最终安全边界。
继续想: 本地 Server 就一定可信?;能力变化如何发现?
工程落地检查
- Schema 清楚表达必填、枚举与互斥
- 读写工具分权并标记副作用
- call_id、幂等键和超时贯穿链路
- 第三方工具输出一律视为不可信
- 协议互通之外仍做认证、授权和审计
常见误区
- 把 Function Calling 误解成模型直接执行
- 把 MCP 当成安全边界
- 为方便把全部工具和高权限一次暴露
对应面试题
U12 MCP 的 Tools、Resources、Prompts 谁控制? · U13 MCP 的 Host、Client、Server 如何通信?
延伸资料
Model Context Protocol · A2A Protocol · OpenAI Function Calling