一句话:MCP 工具调用该有一张带干扰项的考卷了

一项更新于 9 月 15 日的工作——MCPAgentBench(arXiv 2512.24565),把矛头对准了一个评测空白:当智能体通过模型上下文协议(MCP)调用外部工具时,现有的评测集要么依赖外部 MCP 服务在线,要么缺乏难度区分。这个来自高校团队的基准给出了另一条路:用真实 MCP 定义构建任务,在动态沙箱里跑,并给智能体的候选工具列表里掺进干扰项。

代码已开源。评测同时衡量两个维度:任务完成率与执行效率——不仅看做没做成,还看为做成而多绕了多远。

它要修的两个评测毛病

现有 MCP 评测有两个通病。其一是「外挂依赖」:不少基准要求真实的 MCP 服务在线才能跑,服务一抖动,测的就不是模型而是网络。其二是「没有区分度」:任务难度拉不开梯度,模型之间的差异被平均数抹平,看不出谁在复杂多步调用上真的能打。

MCPAgentBench 的做法是两步走。数据集由「真实任务 + 模拟 MCP 工具」构成——任务来自真实世界的 MCP 定义,但工具在沙箱里模拟执行,评测环境稳定可复现;评测过程在动态沙箱中进行,不依赖任何外部服务。这样测出来的成绩,归因干净:是模型的工具使用能力,不是基础设施的运气。

MCPAgentBench 评测管线① 真实 MCP 定义从真实世界的 MCP 服务定义出发构建任务,而非手写玩具接口② 模拟工具 + 动态沙箱任务配模拟 MCP 工具,在沙箱里跑,不依赖外部 MCP 服务在线③ 候选列表掺干扰项给智能体的工具列表里混入名称与描述相近的假工具,专考「选哪个」双指标:任务完成率 × 执行效率(调用次数、步数),既看做没做成,也看绕了多远结论预告:前沿模型在复杂多步工具调用任务上的表现差异显著
图 1|三步管线 + 双指标:把「会不会挑工具」从「会不会用工具」里单独拎出来考。

干扰项:这道设计最值得细品

基准里最有趣的设计,是给智能体提供的候选工具列表里混入干扰工具——名称相近、描述相似、语义模糊的「假工具」。这直接把「选哪个工具」从「会用工具」里剥出来,变成独立被测的能力。

这个设计精准踩中了 MCP 生态的现实痛点。随着 MCP 服务器爆发式增长,同质工具越来越多:拉订单的有五六个接口,名字都长得差不多,描述一个个写得天花乱坠。人类开发者会看文档、看 star 数、看社区口碑来挑选;智能体只有名称和描述可以依赖。选错一步,后面的推理全在错误的地基上盖楼——调用返回空数据或占位结果,模型可能将错就错,一路编到底。

工具辨别力过去被藏在「任务完成率」这个总数里,失败了也很难归因是「不会用」还是「没选对」。掺干扰项之后,这两个失败原因终于可以被分开统计——这对调优智能体的工具检索与选择策略,是实打实的诊断信息。

agent 眼里的候选工具列表(示意)get_customer_orders [真实]按客户 ID 拉取历史订单,支持时间窗与分页fetch_order_records [干扰]描述高度相近;调用后返回占位数据或报错query_order_archive [干扰]名称换了个说法,语义模糊,专为诱导误选而设干扰项的杀伤点:工具名相似、描述夸大、返回看似正常。选错一步,后面的推理全在错误地基上盖楼。这正是工具生态爆炸后的真实困境:同质工具越来越多,描述写得越来越好听。
图 2|一真两假的候选列表:MCPAgentBench 用这种配置把「工具辨别力」变成可量化的分数。

双指标:完成率之外,还要算效率账

传统基准只报完成率,MCPAgentBench 引入了综合指标体系,把执行效率与完成率并列。一个智能体花 3 次调用完成任务,另一个花 15 次——即便都算「完成」,在真实生产里成本完全不同:每一次调用都是 token、延迟与出错机会。

针对前沿模型的实验给出了方向性结论:不同模型在处理复杂多步工具调用任务时性能差异显著。这意味着「模型很聪明」与「模型会干活」之间,仍然隔着一条可见的缝——推理能力强的模型,未必在工具选择的判断力上同样领先。对正在做模型选型的工程团队,这类分项数据比综合排行榜有用得多。

放回更大的图景里看

MCP 今年的故事线,前半程是「生态扩张」:协议被广泛采纳,服务器数量暴涨;后半程开始「补课」:安全(蜜罐、CVE、治理面)、规范(无状态化)接连被摆上台面。MCPAgentBench 补的是「质量度量」这一课——生态大了之后,工具变多了之后,怎么客观衡量一个智能体到底用得好不好。

这条线的价值会随时间放大。当 MCP 市场出现「工具货架」,智能体替用户挑工具就成了一种消费决策,评测的公正性会直接影响生态走向。带干扰项的评测思路,也完全可以迁移到 MCP 之外:任何「从候选集合里做选择」的 agent 能力——插件、技能包、数据源——都需要类似的考卷。基准论文的作者们还留了接口:综合指标体系可扩展,任务集可随协议演进。对做 agent 评测的团队来说,这是个值得放进参考集的名字。