开启时会模糊预览图,关闭后正常显示
![[Anthropic 工程博客] 通过 MCP 实现代码执行:构建更高效的 AI 智能体 —— 利用 AI 擅长编写代码的能力,让智能体以程序员的方式工作,而不是依赖低效的"工具调用—等待—再调用"模式
核心问题
MCP 是连接 AI 智能体与外部系统的开放标准。自一年前推出以来,社区已构建了数千个 MCP 服务器。但随着连接工具数量的增长,出现了两个关键效率问题:
1. 工具定义占用过多上下文
当智能体连接数千个工具时,传统方式会将所有工具定义一次性加载到上下文窗口中。这些工具描述可能在智能体处理请求前就消耗数十万个 token。
2. 中间结果反复传递
当智能体需要在工具之间传递数据时(比如从 Google Drive 下载会议记录并附加到 Salesforce 记录),完整的数据必须多次流经模型。一个 2 小时的会议记录可能额外消耗 5 万个 token,大文档甚至可能超出上下文窗口限制。
解决方案:代码执行 + MCP
核心思路是:将 MCP 服务器呈现为代码 API,而非直接的工具调用。智能体通过编写代码与 MCP 服务器交互。
实现方式
将所有可用工具生成为文件树结构,例如:
servers
├── google-drive
│ ├── getDocument.ts
│ └── index.ts
├── salesforce
│ ├── updateRecord.ts
│ └── index.ts
智能体通过探索文件系统来发现工具,只加载当前任务需要的定义。原本需要 15 万 token 的场景,现在只需 2000 token——节省 98.7% 的成本和时间。
五大核心优势
1. 渐进式发现
智能体可以按需读取工具定义,而不是一次性全部加载。还可以添加搜索功能,只加载相关工具。
2. 上下文高效处理
数据在代码执行环境中过滤和转换,再返回给模型。处理 1 万行表格时,智能体只需看 5 行而非全部数据。
3. 更强大的控制流
循环、条件判断和错误处理都可以用熟悉的代码模式完成,而不是串联单个工具调用。比如轮询 Slack 通知,用一个 while 循环就能完成。
4. 隐私保护
中间结果默认保留在执行环境中,模型只看到明确记录或返回的内容。敏感数据可以在不进入模型上下文的情况下流转。MCP 客户端甚至可以自动对个人信息进行标记化处理。
5. 状态持久化与技能积累
智能体可以将工作代码保存为可复用函数。一旦开发出有效代码,就能保存供未来使用。这与 Anthropic 的"技能"概念紧密相关,让智能体不断构建自己的高级能力工具箱。
权衡考虑
代码执行引入了自身的复杂性,运行智能体生成的代码需要安全的执行环境,包括适当的沙箱、资源限制和监控。需要权衡代码执行带来的好处(降低 token 成本、减少延迟、改善工具组合)与实施成本。
这篇文章揭示了一个重要洞察:虽然上下文管理、工具组合、状态持久化等问题看起来很新颖,但它们在软件工程中都有已知的解决方案。代码执行将这些成熟模式应用于智能体,让它们使用熟悉的编程结构更高效地与 MCP 服务器交互。
博客地址 [Anthropic 工程博客] 通过 MCP 实现代码执行:构建更高效的 AI 智能体 —— 利用 AI 擅长编写代码的能力,让智能体以程序员的方式工作,而不是依赖低效的"工具调用—等待—再调用"模式
核心问题
MCP 是连接 AI 智能体与外部系统的开放标准。自一年前推出以来,社区已构建了数千个 MCP 服务器。但随着连接工具数量的增长,出现了两个关键效率问题:
1. 工具定义占用过多上下文
当智能体连接数千个工具时,传统方式会将所有工具定义一次性加载到上下文窗口中。这些工具描述可能在智能体处理请求前就消耗数十万个 token。
2. 中间结果反复传递
当智能体需要在工具之间传递数据时(比如从 Google Drive 下载会议记录并附加到 Salesforce 记录),完整的数据必须多次流经模型。一个 2 小时的会议记录可能额外消耗 5 万个 token,大文档甚至可能超出上下文窗口限制。
解决方案:代码执行 + MCP
核心思路是:将 MCP 服务器呈现为代码 API,而非直接的工具调用。智能体通过编写代码与 MCP 服务器交互。
实现方式
将所有可用工具生成为文件树结构,例如:
servers
├── google-drive
│ ├── getDocument.ts
│ └── index.ts
├── salesforce
│ ├── updateRecord.ts
│ └── index.ts
智能体通过探索文件系统来发现工具,只加载当前任务需要的定义。原本需要 15 万 token 的场景,现在只需 2000 token——节省 98.7% 的成本和时间。
五大核心优势
1. 渐进式发现
智能体可以按需读取工具定义,而不是一次性全部加载。还可以添加搜索功能,只加载相关工具。
2. 上下文高效处理
数据在代码执行环境中过滤和转换,再返回给模型。处理 1 万行表格时,智能体只需看 5 行而非全部数据。
3. 更强大的控制流
循环、条件判断和错误处理都可以用熟悉的代码模式完成,而不是串联单个工具调用。比如轮询 Slack 通知,用一个 while 循环就能完成。
4. 隐私保护
中间结果默认保留在执行环境中,模型只看到明确记录或返回的内容。敏感数据可以在不进入模型上下文的情况下流转。MCP 客户端甚至可以自动对个人信息进行标记化处理。
5. 状态持久化与技能积累
智能体可以将工作代码保存为可复用函数。一旦开发出有效代码,就能保存供未来使用。这与 Anthropic 的"技能"概念紧密相关,让智能体不断构建自己的高级能力工具箱。
权衡考虑
代码执行引入了自身的复杂性,运行智能体生成的代码需要安全的执行环境,包括适当的沙箱、资源限制和监控。需要权衡代码执行带来的好处(降低 token 成本、减少延迟、改善工具组合)与实施成本。
这篇文章揭示了一个重要洞察:虽然上下文管理、工具组合、状态持久化等问题看起来很新颖,但它们在软件工程中都有已知的解决方案。代码执行将这些成熟模式应用于智能体,让它们使用熟悉的编程结构更高效地与 MCP 服务器交互。
博客地址](/_next/image?url=https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FG4-iHO9bQAEJZyn.jpg&w=3840&q=75)
专注 - Context Engineering, AI(Coding)Agents. 分享 - AI papers, apps and OSS. ex Microsoft MVP 合作 - 私信/邮箱:shaomeng@outlook.com 📢 公众号/小红书: AI 启蒙小伙伴 🔗 信息卡提示词 🔽


We're in a race. It's not USA vs China but humans and AGIs vs ape power centralization. @deepseek_ai stan #1, 2023–Deep Time «C’est la guerre.» ®1


We're in a race. It's not USA vs China but humans and AGIs vs ape power centralization. @deepseek_ai stan #1, 2023–Deep Time «C’est la guerre.» ®1


Productivity meets minimalism. Building, designing, and sharing my solutions.


Your guide to radiance fields | Host of the podcast @ViewDependent | Founder and CEO of https://t.co/5MjtfpwEU3 | FTP: 279 | discord: https://t.co/lrl64WGvlD

Paper (pdf): https://t.co/taAbxdI20b Project: https://t.co/lXPGZr0cnQ Code: https://t.co/FD3FjbaVe7
