本文目录7 个章节
MCP 解决外部能力的连接与发现
Agents SDK 已经接管本地循环与 Session,搜索和读取工具仍由当前进程提供。每接一个资料系统都手写认证、能力列表和调用格式,Agent 应用会堆满专用适配器。MCP 用 Host、Client 与 Server 建立标准连接。
┌──────────────────── Host ────────────────────┐
│ Model + Agent Runtime + Permission + Approval│
│ │ │
│ MCP Client │
└──────────────────┼───────────────────────────┘
│ protocol / transport
▼
┌──────────────────┐
│ MCP Server │
│ Tools / Resources│
│ Prompts │
└──────────────────┘Server 暴露能力,Client 管理协议会话,Host 保留模型、用户交互、权限和多个连接的协调。MCP 不接管业务授权。
Tools、Resources、Prompts 的用法不同
Tool 是模型可请求的动作,例如搜索文档。Resource 是可读取对象,例如一份规范。Prompt 是可复用模板,例如技术调研提纲。
读取静态文档优先用 Resource,执行有参数的搜索用 Tool,固定工作方法可以由 Prompt 或第 8 篇的 Skill 承载。Skill 可以同时引用 MCP Tool 与 Resource。
接入过程分五步
- 核验 Server 身份与运营方。
- 初始化连接并协商协议能力。
- 列出 Server 能力,经过本地白名单过滤。
- 把允许能力映射到 Tool Registry,并设置审批、超时和结果上限。
- 缓存 Server 版本;版本或 Schema 改变时重新发现。
from dataclasses import dataclass
@dataclass(frozen=True)
class Capability:
name: str
description: str
input_schema: dict
def filter_capabilities(discovered: list[Capability],
allowed: set[str]) -> dict[str, Capability]:
return {
capability.name: capability
for capability in discovered
if capability.name in allowed
}远程返回内容继续按不可信证据处理。连接超时返回 mcp_unavailable,主循环可以使用本地资料或报告证据缺口,不能无限重连。
工具增加后是否要拆 Agent
MCP 可能带来更多工具,但工具多不等于必须多 Agent。先运行单 Agent 基线,观察工具选择错误、Prompt 冲突、权限隔离和团队维护成本。
出现下面任一情况时,拆分才值得试验:
- 研究和写作指令互相干扰,评测长期无法同时达标。
- 两组工具使用不同身份和数据边界。
- 专家上下文可以大幅缩小,减少无关资料。
- 两个团队需要独立发布和维护。
三种 Multi-Agent 关系
Manager Agent-as-Tool Handoff
用户 用户 用户
│ │ │
▼ ▼ ▼
中心 Agent ─▶ 专家 Manager ─call─▶ 专家 前台 Agent ──▶ 专家
│ │ ▲ │ 控制后续对话
└────汇总────┘ └────结果─────┘Manager 用代码统一编排。Agent-as-Tool 让中心 Agent 保留最终控制。Handoff 把当前对话交给专家,适合专家直接处理后续多轮交互。
用 Agents SDK 表示专家工具
from agents import Agent
researcher = Agent(
name="Researcher",
instructions="Return evidence with source IDs. Do not draft conclusions.",
)
manager = Agent(
name="Brief manager",
instructions="Collect evidence, draft, validate citations, then answer.",
tools=[
researcher.as_tool(
tool_name="collect_evidence",
tool_description="Collect bounded evidence for the topic.",
)
],
)专家只接收完成职责所需的上下文和工具,委派深度、并发专家数与预算都有上限。
保留单 Agent 对照组
同一任务集运行单 Agent、Manager 加专家、Handoff 三版,比较成功率、引用正确率、P95、token、费用和维护时间。Multi-Agent 版本如果只改善文风,却降低引用准确率或显著增加费用,就保留单 Agent。
第 12 篇用同一组任务比较单 Agent 与 Multi-Agent,建立正式评测和 Trace,再把通过门槛接到队列、Worker、灰度和发布流程。
REFERENCES
参考链接
所属系列
AI AGENT 入门教程