Skip to content

使用 MCP 代码执行构建更高效的 Agent

官方原文: https://www.anthropic.com/engineering/code-execution-with-mcp

发布日期: 2025 年 11 月 4 日
作者: Adam Jones、Conor Kelly 撰写。感谢 Jeremy Fox、Jerome Swannack、Stuart Ritchie、Molly Vorwerck、Matt Samuels 和 Maggie Vo 提供反馈。


引言

Model Context Protocol(MCP)是一项将 AI Agent 连接到外部系统的开放标准。自 2024 年 11 月发布以来,社区已开发数千个 MCP server,主流编程语言均有 SDK,MCP 也逐渐成为 Agent 连接工具的通用标准。

但当开发者为 Agent 接入数百乃至数千个工具时,一开始加载所有工具定义、并让中间结果穿过 Context Window,会显著增加成本并拖慢 Agent。

工具带来的过量 Token 消耗

随着 MCP 接入规模扩大,以下两种模式最容易增加成本和延迟。

1. 工具定义挤占 Context Window

多数 MCP client 会把所有工具定义直接放入 Context。工具描述会占用 Context Window,拉长响应时间并提高成本。连接数千个工具时,Agent 甚至需要先处理几十万 tokens,才能开始理解用户请求。

2. 工具中间结果重复进入 Context

模型直接调用 MCP 工具时,每一步中间结果都会经过模型。例如,将会议纪要从 Google Drive 转入 Salesforce,完整文本需要两次流经 Context。一场两小时的销售会议可能因此额外消耗 50,000 tokens。更大的文档甚至会完全超过 Context Window,模型在搬运大段数据时也更容易复制出错。

也就是说,MCP client 既把工具定义装入模型的 Context Window,也在消息循环中让每次工具调用及其结果都在操作间经过模型。

MCP 代码执行如何提升上下文效率

一种解决办法是:把 MCP server 作为 code API 暴露给 Agent,而不是把它们逐个呈现为直接工具调用。Agent 编写代码与 MCP server 交互,只按需读取工具定义,并在执行环境中处理数据,最后再把需要的结果交回模型。

一种实现会为已连接 MCP server 的全部工具生成文件树,示例使用 TypeScript:每个工具对应一个带类型接口的文件。Agent 像浏览项目目录一样发现能力,先列出目录找到 server,再读取具体工具文件理解接口。

Cloudflare 也发表过相似结论,并称之为 Code Mode。核心观点是:LLM 擅长写代码,开发者应利用这项优势。

文中给出的结果是,Token 用量可从 150,000 降到 2,000,时间和成本节约 98.7%。

MCP 代码执行的收益

渐进式披露

模型本就擅长在文件系统中定位信息。将工具定义组织为文件,模型即可按需读取。还可提供 search_tools,并通过参数控制返回粒度,例如仅返回名称、返回名称和描述,或返回完整 Schema。

更节省 Context 的工具结果

面对大数据集,Agent 可以先在代码中筛选、转换结果,再返回模型。例如读取一份 10,000 行的表格后,在执行环境内过滤,Agent 最终只需看到 5 行,而不是全部 10,000 行。聚合、跨数据源 join 和字段提取也同样适合这种模式。

更强且更省 Context 的控制流

循环、条件判断和错误处理可以采用成熟的编程方式,而不必串联一次次独立工具调用。它也能减少 time to first token:条件分支由代码执行环境判断,无须再让模型进行额外推理。

保护隐私的操作

中间数据默认留在执行环境中;Agent 只能看到被显式打印或返回的内容。对于敏感负载,MCP client 可以自动 tokenization 敏感字段,例如电子邮件、电话号码和姓名等 PII。真实数据仍可在系统间流转,却不会进入模型。数据允许流向何处,也可以由确定性的安全规则控制。

状态持久化与 Skills

如果代码执行环境能访问文件系统,Agent 就可跨操作保留状态:将中间结果写入文件,支持后续恢复与进度追踪。它还可以把代码保存为可复用函数,供未来任务调用。增加 SKILL.md 后,模型可引用结构化技能,逐步形成更高层能力的工具箱。

注意事项

运行 Agent 生成的代码,前提是拥有安全的执行环境,包括恰当的 sandbox、资源限制和监控。这些基础设施会增加运维复杂度,因此应结合实际收益评估实施成本。

总结

MCP 为 Agent 连接工具与业务系统提供了基础协议。接入的 server 太多时,工具定义和中间结果都会吞噬大量 tokens。问题看似新颖,但软件工程中早已有对应办法。代码执行把成熟的软件工程模式应用到 Agent,使 MCP 交互能够利用熟悉的编程结构,变得更高效。

Anthropic 也邀请实现者在 modelcontextprotocol.io 与 MCP 社区交流实践结果。

AI 落地咨询
艾维禾砺数字科技

企业 AI 落地全链路服务

Agent 开发工作流搭建Claude Code 集成
微信咨询
d187l8801b6124
访问官网 ivheli.com