2026年,AI Agent的工具调用能力正经历一场静默但深刻的范式迁移。OpenAI在Responses API中嵌入Shell工具和托管容器,Anthropic推出Tool Search Tool实现85%的Token节省,Google则在Gemini 3中打通了Google Search、Maps与自定义函数的跨工具上下文循环。与此同时,MCP注册中心已收录超过12,000个MCP Server,月下载量突破9700万次——一个以工具发现、组合和编排为核心的新生态正在成型。本文将从协议演进、三厂API设计哲学、工具发现机制、Token经济优化、安全护栏五个维度,拆解Agent工具调用从"硬编码函数定义"到"动态工具生态"的完整进化路径。
要理解当前Agent工具调用的格局,首先需要看清其进化层级。从最底层的JSON Schema函数定义,到最顶层的自治工具发现生态,工具调用经历了五个清晰的阶段:
| 层级 | 阶段 | 代表实现 | 核心能力 | 时间 |
|---|---|---|---|---|
| L1 | 静态函数定义 | OpenAI Function Calling v1 | JSON Schema描述函数,模型输出结构化参数 | 2023 |
| L2 | 并行工具调用 | GPT-4 Turbo / Claude Tool Use | 单次响应发起多个工具调用,支持嵌套 | 2024 |
| L3 | 内置工具集成 | OpenAI Code Interpreter / Google Grounding | 平台提供预构建工具,无需定义Schema | 2024-2025 |
| L4 | 协议化工具接入 | MCP / OpenAI Responses API | 标准协议连接外部工具服务,工具即服务 | 2025 |
| L5 | 动态发现与编排 | MCP Registry / Anthropic Tool Search / Gemini Context Circulation | Agent运行时自动发现、选择、组合工具 | 2026 |
当前行业正处于L4到L5的过渡期。L4解决了"如何连接工具"的问题,L5要解决的是"如何找到合适的工具"以及"如何让多个工具协同工作"。
graph TB
subgraph "L5: 动态发现与编排"
A1["MCP Registry<br/>12,000+ Servers"]
A2["Anthropic Tool Search<br/>85% Token节省"]
A3["Gemini Context Circulation<br/>跨工具上下文"]
end
subgraph "L4: 协议化工具接入"
B1["MCP Protocol"]
B2["OpenAI Responses API"]
B3["Gemini Tool Combination"]
end
subgraph "L3: 内置工具集成"
C1["Code Interpreter"]
C2["Google Search Grounding"]
C3["Computer Use"]
end
subgraph "L2: 并行工具调用"
D1["Parallel Function Calling"]
end
subgraph "L1: 静态函数定义"
E1["JSON Schema"]
end
A1 --> B1
A2 --> B1
A3 --> B3
B1 --> C3
B2 --> C1
B3 --> C2
C1 --> D1
C2 --> D1
C3 --> D1
D1 --> E1
OpenAI的策略是"工具即平台能力"。2026年2月,OpenAI在Responses API中引入了三项关键升级:Shell Tool(托管Debian容器,root权限)、Code Interpreter(容器池化执行)、File Search(向量存储检索)。这些工具不需要开发者定义Schema——它们是API的原生能力。
# OpenAI Responses API: 平台内置工具 + 自定义工具
response = client.responses.create(
model="gpt-4.1",
tools=[
# 内置工具 — 无需定义Schema
{"type": "code_interpreter", "container": {"type": "auto"}},
{"type": "file_search", "vector_store_ids": ["vs_abc"]},
{"type": "web_search_preview"},
# 自定义工具 — 传统Function Calling
{
"type": "function",
"name": "query_database",
"description": "Query the analytics database",
"parameters": {
"type": "object",
"properties": {
"sql": {"type": "string"}
}
}
}
],
input="分析上季度的销售数据并生成可视化报告"
)
设计哲学核心:OpenAI将最常见的工具需求(代码执行、文件处理、网络搜索)内化为平台能力,开发者只需声明"type": "code_interpreter"即可使用。Shell Tool更进一步——模型获得一个完整的Linux终端环境,可以安装软件、运行脚本、操作文件系统。2026年3月,OpenAI增加了容器池化(Container Pools),将容器启动时间从秒级降至毫秒级,显著提升了多轮工具调用的响应速度。
优点:零配置、开箱即用、执行环境隔离。缺点:工具能力受限于OpenAI提供的内置类型,自定义工具仍需回退到传统Function Calling模式。
Anthropic的策略是"工具即协议"。MCP(Model Context Protocol)不提供具体工具,而是定义了一套标准协议,让任何外部服务都能成为Agent的工具。2025年11月,Anthropic推出了三项高级工具使用能力,彻底改变了Agent与工具交互的方式:
# Anthropic Tool Search Tool: 动态工具发现
# 不再需要把所有工具定义塞进context
response = client.messages.create(
model="claude-sonnet-4-20250514",
tools=[
# 只暴露一个搜索工具(~500 tokens)
{
"type": "tool_search_tool",
"name": "tool_search",
"max_results": 5
}
],
messages=[{"role": "user", "content": "帮我部署一个K8s集群"}]
)
# Claude会自动从数千个工具中搜索、选择合适的工具
# 再按需加载完整Schema — Token消耗降低85%
Tool Search Tool的突破性在于:当Agent面对数千个MCP Server提供的工具时,不再需要把所有工具定义塞入上下文(动辄消耗数万Token)。取而代之的是一个仅500 Token的元工具,Claude通过它搜索、筛选、按需加载工具定义。根据Anthropic的测试数据,这一机制可将Token消耗降低85%。
Programmatic Tool Calling允许开发者直接指定调用哪个工具、传什么参数,绕过模型的工具选择过程——适用于需要确定性执行的场景(如合规审计、自动化流水线)。
Token-Efficient Tool Use通过缓存工具Schema和优化工具定义编码,使工具调用的Token消耗进一步减半。配合Prompt Caching,连续调用的成本可降低至传统方式的1/10。
优点:协议开放、生态丰富(12,000+ MCP Server)、Token效率极高。缺点:需要MCP Server部署和维护,学习曲线陡峭。
Google的策略最为独特——"工具即组合"。2026年3月17日,Google发布了Gemini API三项工具能力升级,其中最引人注目的是Context Circulation(上下文循环)和Tool Combination(工具组合)。
# Gemini 3: 内置工具 + 自定义函数组合
# 一次API调用中同时使用Google Search、Maps和自定义函数
response = client.models.generate_content(
model="gemini-3.0-flash",
contents="找一家东京新宿附近的拉面店,查看最新评价和评分,并预订座位",
config=GenerateContentConfig(
tools=[
# 内置工具
{"google_search": {}},
{"google_maps": {}}, # 新增Maps Grounding
# 自定义工具
{"function_declarations": [{
"name": "book_restaurant",
"parameters": {
"restaurant_id": {"type": "string"},
"datetime": {"type": "string"},
"party_size": {"type": "integer"}
}
}]}
],
# Context Circulation: 工具间自动传递上下文
tool_config={
"context_circulation": True,
"parallel_tool_ids": True # 并行工具ID追踪
}
)
)
Context Circulation的精髓:当Google Search返回"一兰拉面新宿店"的结果后,这个结果自动作为上下文传递给Google Maps(查找位置),再传递给自定义的book_restaurant函数(执行预订)。整个链路中,每个工具的输出自动成为下一个工具的输入上下文——开发者不需要手动编写中间结果的传递逻辑。
Parallel Tool IDs为每个工具调用分配唯一标识符,使得模型可以在单次响应中发起多个并行工具调用,并准确追踪每个调用的结果。
优点:零代码编排、内置工具质量极高(Google Search + Maps的组合无出其右)、单次调用完成多步链路。缺点:深度绑定Google生态、仅Gemini 3模型支持、预览阶段稳定性待验证。
MCP Registry的上线标志着工具调用从"开发者手动定义"进入"生态自动发现"时代。截至2026年5月,Registry已收录超过12,000个MCP Server,覆盖数据库、云服务、开发工具、通信平台等数十个类别。
graph LR
subgraph "传统模式"
A1["开发者手动定义<br/>JSON Schema"] --> A2["硬编码到<br/>Agent配置"]
A2 --> A3["工具变更需<br/>重新部署"]
end
subgraph "MCP Registry模式"
B1["MCP Registry<br/>12,000+ Servers"] --> B2["Agent运行时<br/>自动发现"]
B2 --> B3["Tool Search<br/>按需加载"]
B3 --> B4["动态适配<br/>工具变更"]
end
A3 -.->|"进化"| B1
MCP Registry的架构包含三层:
Anthropic的Tool Search Tool正是基于Registry的发现能力。当Agent需要"操作Salesforce"时,Tool Search Tool会查询Registry中所有与Salesforce相关的MCP Server,按相关性排序返回前N个,再加载其工具定义。整个过程对开发者完全透明。
| 发现机制 | 厂商 | Token消耗 | 工具数量上限 | 动态性 |
|---|---|---|---|---|
| 手动定义Schema | 全部 | O(n×schema_size) | 受上下文窗口限制 | 静态 |
| MCP Registry + Tool Search | Anthropic | O(1) + O(k×schema_size) | 理论无上限 | 动态 |
| MCP Optimizer (Stacklok) | 第三方 | O(k×compressed_schema) | 受上下文窗口限制 | 半动态 |
| 内置工具自动发现 | OpenAI | O(1) | 受平台支持限制 | 平台控制 |
| Google Tool Combination | O(n×schema_size) | 受单次调用限制 | 静态+内置 |
关键数据:传统模式下,100个工具的定义约消耗15,000-30,000 Token;使用Tool Search Tool后,初始消耗仅500 Token,按需加载5个工具约3,000 Token,总计节省85%。
工具调用不是免费的。每次调用不仅消耗输出Token(模型生成的工具参数),还消耗输入Token(工具定义的重复传递)。在多轮Agent循环中,工具定义在每轮都会重复发送——这是Token通胀的主要来源。
策略一:Anthropic Tool Search Tool
原理:用500 Token的搜索元工具替代数万Token的完整工具定义。模型先搜索再加载,避免无关工具占用上下文。实测Token节省:85%。适用场景:工具数量 > 50。
策略二:Prompt Caching(OpenAI/Anthropic)
原理:缓存工具定义部分,后续调用只需发送缓存的引用ID。OpenAI和Anthropic均支持,缓存命中时输入成本降低90%。实测Token节省:50-90%(取决于缓存命中率)。适用场景:工具定义固定、多轮对话。
策略三:Schema压缩(Stacklok MCP Optimizer)
原理:通过静态分析工具定义,去除冗余描述、精简枚举值、压缩嵌套结构。实测Token节省:40-60%。适用场景:工具定义冗长但不可修改源码。
策略四:Google Context Circulation
原理:单次调用完成多步工具链路,减少总调用轮次。传统模式需要3次API调用(搜索→定位→预订),Context Circulation只需1次。实测API调用次数减少:60-70%。适用场景:多步编排链路。
graph TB
subgraph "传统模式: 3次调用"
C1["调用1: Google Search<br/>输入: 查询+工具定义<br/>~5K tokens"] --> C2["调用2: Maps API<br/>输入: 查询+工具定义+搜索结果<br/>~8K tokens"]
C2 --> C3["调用3: 预订函数<br/>输入: 查询+工具定义+搜索+位置<br/>~12K tokens"]
C3 --> C4["总计: ~25K tokens<br/>3次API调用"]
end
subgraph "Context Circulation: 1次调用"
D1["单次调用<br/>输入: 查询+所有工具定义<br/>~6K tokens"] --> D2["模型内部编排<br/>Search→Maps→Book<br/>自动传递上下文"]
D2 --> D3["总计: ~6K tokens<br/>1次API调用"]
end
以一个典型的"搜索+数据分析+生成报告"Agent任务为例,假设使用Claude Sonnet 4($3/M input, $15/M output):
| 策略 | 输入Token | 输出Token | API调用次数 | 估算成本 |
|---|---|---|---|---|
| 无优化 | 180,000 | 12,000 | 5 | $0.70 |
| Prompt Caching | 180,000 (90%缓存) | 12,000 | 5 | $0.13 |
| Tool Search | 45,000 | 8,000 | 5 | $0.16 |
| Tool Search + Caching | 45,000 (90%缓存) | 8,000 | 5 | $0.05 |
最佳实践:Tool Search + Prompt Caching的组合可将Agent工具调用成本降至无优化方案的7%。
工具调用的能力越强,安全风险越大。2026年,工具调用安全已经从"可选特性"升级为"必选项"。
┌──────────────────────────────────────┐
│ L3: 执行审批层 │
│ - 高危操作需人工确认 │
│ - 金额/权限变更双因素验证 │
│ - Human-in-the-Loop强制卡点 │
├──────────────────────────────────────┤
│ L2: 输出验证层 │
│ - 工具返回值Schema校验 │
│ - 敏感数据脱敏/过滤 │
│ - AgentDoG诊断式护栏 │
├──────────────────────────────────────┤
│ L1: 输入防护层 │
│ - 工具调用意图白名单 │
│ - 参数范围约束 │
│ - Prompt注入检测 │
└──────────────────────────────────────┘
L1: 输入防护 — 在模型决定调用工具之前,拦截不合法的工具调用意图。OpenAI Agents SDK提供了Input Guardrails机制,可以定义规则拦截特定模式。例如,禁止Agent调用删除数据库的工具。
L2: 输出验证 — 在工具返回结果后、模型处理结果前,校验返回值。Anthropic的Programmatic Tool Calling天然支持这一层——开发者可以在工具执行和结果传递之间插入验证逻辑。
L3: 执行审批 — 最严格的安全层。对于高危操作(资金转移、数据删除、权限变更),强制要求人工确认。OpenAI Agents SDK的Human Review机制和Anthropic的Tool Use Examples都支持这一模式。
2026年1月发表的AgentDoG(arXiv:2601.18491)提出了诊断式护栏框架,与传统的"拦截-拒绝"模式不同,它采用"诊断-修复"模式:当检测到潜在危险工具调用时,不直接拒绝,而是分析调用意图,提供安全替代方案。这一思路正在被多家Agent框架采纳。
Berkeley Function Calling Leaderboard v4(BFCL v4)是目前最全面的工具调用评测基准。它不再只测试"模型能否正确生成工具参数",而是评估完整的Agent工具使用能力:
| 测试维度 | 权重 | 核心评估 |
|---|---|---|
| Simple Function | 15% | 单函数调用,参数正确性 |
| Multiple Function | 15% | 多函数并行调用 |
| Parallel Function | 15% | 同一函数多组参数并行 |
| Parallel Multiple | 15% | 多函数+多参数组合 |
| Composite Function | 20% | 嵌套函数、链式调用 |
| Agentic Evaluation | 20% | 工具选择、错误恢复、动态适配 |
值得注意的变化是Agentic Evaluation维度的引入(20%权重),它测试模型在真实Agent场景中的工具使用能力:给定一组可用工具,模型需要自主决定使用哪些工具、以什么顺序、如何处理工具调用失败。这标志着工具调用评测从"语法正确性"走向"语义有效性"。
根据BFCL v4的公开排行榜,GPT-4.1、Claude Sonnet 4、Gemini 3 Pro在综合得分上非常接近(差距在3%以内),但在具体维度上各有优势:GPT-4.1在并行调用上领先,Claude在Agentic Evaluation上突出,Gemini在复合函数上表现优异。
| 场景 | 推荐方案 | 理由 |
|---|---|---|
| 快速原型/内部工具 | OpenAI Responses API | 内置工具零配置,Shell Tool开箱即用 |
| 大规模工具生态 | Anthropic MCP + Tool Search | 12,000+ Server,Token效率最高 |
| 本地化/搜索密集 | Google Gemini 3 Tool Combination | Search + Maps Grounding无可替代 |
| 企业合规/审计 | Anthropic Programmatic Tool Calling | 确定性执行,可追溯 |
| 成本敏感型 | Tool Search + Prompt Caching | Token消耗降至传统方案7% |
| 混合编排 | MCP + A2A双协议 | MCP管工具,A2A管Agent间通信 |
flowchart TD
START["Agent工具调用需求"] --> Q1{"工具来源?"}
Q1 -->|"平台内置足够"| Q2{"选哪个平台?"}
Q1 -->|"需要外部工具"| Q3{"工具数量?"}
Q2 -->|"代码执行+文件处理"| OAI["OpenAI Responses API<br/>Code Interpreter + Shell"]
Q2 -->|"搜索+地理数据"| GOO["Google Gemini 3<br/>Search + Maps Grounding"]
Q2 -->|"通用Agent"| ANT["Anthropic MCP<br/>协议化接入"]
Q3 -->|"≤20个"| TRAD["传统Function Calling<br/>+ Prompt Caching"]
Q3 -->|"20-100个"| MCP_OPT["MCP + Schema压缩<br/>或 MCP Optimizer"]
Q3 -->|"100+个"| TOOL_SEARCH["MCP + Tool Search Tool<br/>+ Prompt Caching"]
OAI --> SEC["加安全护栏"]
GOO --> SEC
ANT --> SEC
TRAD --> SEC
MCP_OPT --> SEC
TOOL_SEARCH --> SEC
SEC --> DONE["生产就绪"]
判断一:MCP将成为工具调用的TCP/IP。正如TCP/IP统一了网络通信,MCP正在统一Agent与工具的连接协议。12,000+ Server的生态规模和97M月下载量已经跨越了临界点。OpenAI虽未官方支持MCP,但其Responses API的"内置工具"模式本质上是在协议层之上做了一层封装——未来不排除兼容MCP的可能性。
判断二:Tool Search是解决工具爆炸的唯一可行路径。当工具数量从几十增长到几千,把所有工具定义塞进上下文在物理上不可行。Anthropic的Tool Search Tool和Google的Context Circulation分别从"按需加载"和"自动编排"两个角度解决了这个问题。这两种思路将在2026年下半年融合。
判断三:安全护栏将成为工具调用的默认配置。AgentDoG论文提出的诊断式护栏、OpenAI的Input Guardrails、Anthropic的Programmatic Tool Calling,都指向同一个趋势:工具调用的安全控制将从"可选配置"变为"协议内建"。未来的工具调用协议将内置权限声明、审批流程和审计追踪。
判断四:BFCL v4的Agentic维度将重塑模型训练。当评测从"参数正确性"扩展到"工具选择策略",模型训练目标也将相应调整。预计2026年下半年,主要厂商将在工具选择和错误恢复能力上展开新一轮竞赛。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
