Anthropic 近期发布了一篇关于 MCP (Modular Cognitive Pipeline) 未来发展的思考文章,深入探讨了 MCP 的演进方向(参阅:https://www.anthropic.com/engineering/code-execution-with-mcp)。结合该文及其中引用的 Cloudflare 关于 MCP 工程的分析(参阅:https://blog.cloudflare.com/code-mode/),本文旨在清晰阐述 Anthropic 提出的解决方案及其旨在解决的核心问题。
MCP 上下文过长的核心问题
在实际应用中,我们常常需要接入多种 MCP(Modular Cognitive Pipelines),例如 Chrome DevTools MCP、Playwright、GitHub 或 Context 7 等。然而,每次启动这些 MCP 时,都需要预先加载所有工具定义(包括名称、描述及参数要求),这导致单次对话的上下文消耗非常巨大。
举个例子:
用户需求:“把飞书文档的会议记录同步到飞书多维表格”
【传统工具调用流程】

在执行飞书任务时,AI 会同时接收其他 MCP 的工具信息,导致 Token 消耗显著增加。
这仅仅是一个简单任务!如果处理更复杂、更大型的任务,执行效率将面临严峻挑战。
拆分来看,这里面有两个核心问题
问题1:所有工具定义预加载
每个工具定义包含:名称、描述、参数说明(类型、是否必需、用途说明)
- 1个工具 ≈ 150-300 Tokens
- 100 个工具 = 15,000-30,000 Tokens
值得注意的是,一个 MCP 通常包含多个工具。例如,高德地图 MCP 可能提供搜索、查询距离和打车等功能工具;GitHub MCP 则可能包含二三十个工具。

用户还没说话,上下文就满了!
问题2:数据反复流经 AI
所有中间数据都要过 AI。

数据像接力棒,每次传递都要经过 AI。
解决方案:代码执行模式
针对上述两个核心问题,Anthropic 提出了“代码执行模式”这一创新解决方案,其核心思想是:让 AI 通过编写代码来调用工具,而非直接进行工具调用。
1. 按需加载工具(解决预加载问题)
核心思路:避免一次性加载所有工具,而是根据需求按需查找。Anthropic 引入了“渐进式披露”(Progressive Disclosure)的概念,即 AI 能够主动地“发现”并调用所需的工具,而不是预先被动地接收全部工具定义。
实现方式1:文件系统浏览
将所有工具组织成文件夹结构,AI 能够像浏览文件系统一样查找并定位所需的工具。

⚠️ 重要说明:
关于如何将 MCP 转化为工具文件树,Claude 暂时未提供具体实现细节。不过,Cloudflare 的 SDK 文档中提供了一个相关工具。

实现方式2:搜索函数
提供一个搜索函数,AI 可以编写代码传入关键词,系统将返回相关的工具信息。
示例:

⚠️ 重要说明:
Anthropic 的工程博客虽然提供了代码示例(如工具文件结构、import 语句),但并未详细说明 Agent 内部的具体实现方式。
这些实现细节可能需要:
- 等待 Anthropic 后续更新 Claude Code 和 MCP 协议;
- 或由开发者根据现有代码示例自行设计内部实现。
2. 代码在沙箱执行(解决数据流经问题)
核心思路:AI 生成的代码将在安全的沙箱环境中执行,数据流转也仅限于该沙箱内部,从而避免数据反复流经 AI 模型。
代码执行模式的3个案例:
案例1:串联任务流程,一次执行完
传统方式 vs. 代码模式: 过去需要 AI 直接处理的数据问题,现在可以通过编写代码在沙箱中解决,极大地提升了效率和便利性。以下图为例,展示了一个同步任务的案例:

✅效果:AI 只参与任务的起始(编写代码)和结束(接收结果),中间执行过程不直接涉及。
案例2:处理数据结果,而不是全部获取
传统方式的问题: 工具的返回结果无论大小,都会完整地传递给 AI,即使 AI 仅需要其中一小部分信息。代码模式: AI 可以编写代码,在沙箱环境中对数据进行搜索和过滤,仅将所需的部分返回给自身。
下图为举例:

对于最后收到的结果,可以让代码执行过滤。
其他优势:敏感信息隔离,防止数据泄露
所有私密信息均不直接经过 AI 模型,有效防止信息泄露。

AI 只能看到处理结果。
⚠️ 重要说明:
Cloudflare 专门为沙箱功能开发了一个名为“隔离区”的中间工具,该工具基于 Worker(一种 Serverless 服务,按需启动)。目前,Claude 尚未提供类似的实际工具。
补充说明
1. 为什么 AI 适合写代码?
AI 在海量的代码数据上进行过训练,因此编写 TypeScript 或 Python 等代码是其强项。相比于让 AI 直接调用工具(这需要其理解工具复杂的参数和返回格式),编写代码反而更为简单和高效:
- 代码具有清晰的语法规则;
- AI 接触过大量类似的代码范例;
- 可以通过注释明确代码意图。
这好比让一位优秀的翻译官专注于撰写翻译稿(发挥其专长),而不是将其用作低效的搬运工。
2. 代码可以保存成 Skills
一旦代码被成功编写,便可以保存到 ./skills/ 目录下,转化为可复用的技能(Skills)。这将持续增强 AI 的工具箱,使常用操作无需每次都重新编写,从而提高效率。
原文链接:
- Anthropic: 使用 MCP 进行代码执行:构建更高效的智能体
- Cloudflare: 代码模式:使用 MCP 的更好方法
