跳到正文
返回论文列表
cs.SE提交于 已译

真实 MCP 故障下的工具调用 LLM 智能体:规模并不等于容错能力

Tool-Calling LLM Agents Under Realistic MCP Faults: Scale Does Not Purchase Fault Tolerance

Antonio Ken Iannillo · Joshua Segun Owotogbe · Roberto Natella · Francesco Avallone · Kristina Kudryavtseva · Indika Kumara

中文摘要

LLM 智能体日益依赖通过 Model Context Protocol(MCP)暴露的外部工具,但现有 benchmark 通常假定工具能正确、及时响应,尚未测试智能体面对真实工具故障时的韧性。MCP-Injector 是一种可直接部署、感知协议的故障注入中间件,可拦截 MCP 工具调用路径,并通过可控持续性(永久、瞬时、间歇)及可设种子的调度注入故障。其故障模型依据公开 MCP 生态中观测到的事故分布(失败模式×持续性)校准,数据来自 1,774 个开源 MCP 仓库的 57,240 个 issue 与 pull request 线程。实验包含 1,350 个组合单元,交叉覆盖两种骨干模型规模(20B、120B)、三种智能体栈(自定义多轮 plan-and-execute、OpenAI Agents SDK、LangChain)和三种故障注入条件。结果显示,以永久故障为主的压力配置会显著降低质量,任务完成分从 10 分制下的 8.08 降至 3.23,下降 60%;对两个受测 gpt-oss 骨干模型而言,扩大规模并未带来容错优势。120B 模型在故障下保留的无故障得分比例并不更高(resilience-ratio model,p=0.96),其故障条件下的完成率甚至略低(91.1% 对 95.6%,相差 4.4 个百分点,95% CI [-0.2, 9.3])。不同智能体栈吸收故障的能力存在差异,说明框架级错误处理比模型规模更为重要。

关键要点

  1. 01现有工具调用 benchmark 假定工具正常响应,未评估真实故障下的智能体韧性。
  2. 02MCP-Injecto 通过协议感知的中间件注入永久、瞬时和间歇故障,并支持可设种子的调度。
  3. 03故障模型基于 1,774 个开源 MCP 仓库中 57,240 个 issue 和 pull request 线程校准。
  4. 04永久故障占主导时,任务完成分从 8.08 降至 3.23,下降 60%。
  5. 05120B 模型未表现出更高容错能力,智能体框架的错误处理可能比模型规模更关键。

解读

尚无解读。

原始英文摘要

arXiv:2610.32555v1 Announce Type: cross Abstract: LLM agents increasingly rely on external tools exposed via the Model Context Protocol (MCP), yet current benchmarks assume tools respond correctly and on time, leaving agent resilience to realistic tool failures untested. We introduce MCP-Injector, a drop-in, protocol-aware fault-injection middleware that interposes on the MCP tool-call path with controlled persistence (permanent, transient, intermittent) and seedable schedules. Its fault model is calibrated to the observed incident distribution (failure mode x persistence) of the public MCP ecosystem, mined from 57,240 issue and pull-request threads across 1,774 open-source MCP repositories. In a 1,350-cell experiment crossing two backbone sizes (20B, 120B), three agent stacks (custom multi-round plan-and-execute, OpenAI Agents SDK, LangChain), and three fault injection conditions, we find that faults drawn from this permanent-heavy stress profile cause severe quality degradation (task-completion score falls by 60%, from 8.08 to 3.23 out of 10), and that scale does not purchase fault tolerance for the two gpt-oss backbones we test: the 120B retains no larger share of its fault-free score under faults (resilience-ratio model, $p = 0.96$), and its completion rate under faults is, if anything, lower (91.1% vs. 95.6%; difference 4.4 points, 95% CI $[-0.2, 9.3]$). Agent stacks differ in how well they absorb faults, which suggests that framework-level error handling matters more than model scale. These results demonstrate that capability benchmarks alone can mask operational brittleness, motivating protocol-aware fault injection as a complementary evaluation dimension for tool-calling agents.

同方向论文 · cs.SE

查看全部 →

反向发现 · 这篇论文相关的工具与提示词

去交叉发现 →

关联提示词 · 6

编程github.com/f/awesome-chatgpt-prompts·外部收录·

CLI silently install software on windows

Ask me for the name of the software as your next question. - You are an IT expert technican. I want you to research, verify and then write powershell commands to silently install or update the software on a Windows 10/11 x86_64 computer. …

编程github.com/f/awesome-chatgpt-prompts·外部收录·

Vibe Coding with Commands and Skills

Act as a Vibe Coding Expert with built-in /commands and skills. You are proficient in leveraging AI models for coding and UX/UI design tasks, using a variety of tools and frameworks to streamline the development process. Your task is to: -…

编程github.com/f/awesome-chatgpt-prompts·外部收录·

GitHub Stars Fetcher with Agent Browser

# Using Agent Browser to Fetch GitHub Starred Projects ## Objective Use the Agent Browser skill to log into GitHub and retrieve the starred projects of the currently logged-in user, sorted by the number of stars. ## Execution Steps (Follo…

编程github.com/f/awesome-chatgpt-prompts·外部收录·

Claude Code Skill (Slash Command): push-and-pull-request.md

--- allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*), Bash(git push:*), Bash(gh pr create:*) description: Commit and push everything then open a PR request to main --- ## Context - Current git status: !`git status` -…

编程github.com/f/awesome-chatgpt-prompts·外部收录·

Claude Code Skill (Slash Command): review-and-commit.md

--- allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*) description: Create a git commit --- ## Context - Current git status: !`git status` - Current git diff (staged and unstaged changes): !`git diff HEAD` - Current br…