面向 MCP 的代码模式

一步运行多个 MCP 工具 不再为模型从不需要的数据付费

在数据密集型任务上,逐个工具调用的智能体会发起数十次调用,并把每一份中间列表都读进上下文窗口。代码模式让智能体编写一段简短程序,调用你的 MCP 工具,并在锁定的沙箱中筛选、关联它们的结果,只返回答案。在多步骤工作流中,这将 token 用量最多降低 90–99%——而且更快。

已在 AnythingMCP Cloud 和自托管环境中上线 · 默认关闭 · 运行在隔离的沙箱中,没有网络、文件系统或密钥 · 每次运行都会被审计

什么是代码模式?

代码模式让 AI 智能体从一段简短程序内部调用你的 MCP 工具,而不必逐个工具地调用。智能体不再为每个工具单独往返一次——让每份结果都穿过模型返回——而是编写一小段 JavaScript,去发现、读取并运行若干工具,筛选并关联它们的结果,只返回真正重要的内容。程序运行在数据旁边的沙箱中,因此它所筛选的那数兆字节中间数据从不进入模型的上下文窗口。

MCP(Model Context Protocol)是 Claude、ChatGPT、Copilot 和 Cursor 用来调用外部工具的开放标准。代码模式是 AnythingMCP 在其之上提供的能力,在 Cloud 和自托管环境中均可使用。

为什么多工具智能体会消耗如此多的 token

一个工具、一个答案,成本很低。当一个任务需要多个工具、模型又不得不读完其间的一切时,成本就会暴涨。

每次工具调用都要往返一次

让智能体关联订单、客户和发票,它会调用一个工具、读取结果,再调用下一个、再读取——数十次往返,每一次都是完整地穿过模型一遍。

中间数据填满上下文

模型会把每一份中间列表——成百上千行——拉进它的上下文窗口,只为了最后留下寥寥几个 id。你要为这一切逐个 token 地付费。

成本随数据增长,而非随答案增长

在筛选与关联任务上,主导账单的是中间数据的行数,而不是最终答案。把工具背后的数据翻一倍,token 成本也随之翻倍。

而且它很慢

每次往返都要等待模型。十几次带着大结果的顺序调用不仅昂贵,还明显比在数据旁边把循环跑一次要慢得多。

同一个任务,用与不用代码模式

“列出今年每一位活跃客户的未结发票。”逐个工具调用的智能体要读取数千行才能回答它。代码模式则不把其中任何一行读进模型。

不用代码模式
search invoices   → model reads 400 rows
list customers    → model reads 1,200 rows
for each open invoice, fetch its customer
    → hundreds of calls, every result read back

模型驱动每一步并读取每个结果。数千行数据穿过上下文窗口,才换来一份简短的列表。

使用代码模式
// Discover, read and call your tools inside the sandbox.
const invoices  = await amcp.run('list_invoices',  { status: 'open' });
const customers = await amcp.run('list_customers', { activeSince: '2026-01-01' });
const active = new Set(customers.map((c) => c.id));

return invoices
  .filter((i) => active.has(i.customerId))
  .map((i) => ({ id: i.id, amount: i.amount, customer: i.customerId }));

模型编写一段程序,只有结果会返回。它所筛选的那 1,600 行数据从未进入上下文窗口。

在多步骤、以筛选为主的任务上,这将 token 用量最多降低 90–99%,并且运行更快,因为循环在数据旁边执行,而不必穿过模型。

AnythingMCP 如何实现代码模式

代码模式使用与直接调用工具相同的工具、角色和审计日志——没有新东西需要信任,而且在你主动启用之前什么都不会运行。

连接你工具的 amcp 桥

在沙箱内部,程序调用 amcp.search 查找工具、调用 amcp.describe 读取它们的 schema、调用 amcp.run 来调用它们。它所能触及的,恰好是调用方本就有权使用的那些工具——不多一个。

已保存的代码工具

一种可复用的工具,其主体是一段已保存的程序,像其他任何工具一样在仪表板中创建。它会出现在工具列表中,遵守角色访问控制,并受到审计——非常适合你的团队反复运行的工作流。

内联代码

一个通用的 Run code 工具,智能体可以用它当场编写的程序来调用,始终只读,并使用调用方自己的权限。智能体也可以提议一个已保存的代码工具,交由管理员审批。

阅读代码模式指南

在你开启之前一直关闭

代码模式默认关闭。工作区按每个 MCP 服务器逐一启用它——已保存的代码工具,或已保存的工具加内联代码——内联代码还会进一步受调用方角色的限制。在你主动启用之前,什么都不会运行。

每次运行都有边界

每次运行都受时间上限、内存上限以及可发起工具调用次数上限的约束,因此失控的循环会自行停止。每月运行配额和按组织的并发上限可防止某个工作区把其余工作区的资源耗尽。

访问范围与规则保持不变

程序只能调用调用方本就拥有的工具,遵循与直接调用相同的角色访问控制和读写规则,而且每次运行都会写入审计日志。可写的代码工具是 Enterprise 的功能。

以不受信任为设计前提

程序是由模型编写的,而被提示注入污染的工具结果可能试图操纵它。因此代码模式绝不会在 AnythingMCP 后端运行——它运行在独立的 code-runner 中,后者除了调用你的工具之外什么都做不了。

每次运行一个锁定的子进程

每次运行都有自己短暂存活的子进程,全新创建、随后销毁。任何东西都不会从一次运行泄漏到下一次。

没有网络、文件系统、环境变量或密钥

沙箱没有对外网络、没有文件系统、没有环境变量,也无法访问已存储的凭证。程序唯一能做的,就是通过 amcp 桥调用 MCP 工具。

调用方自己的权限

后端会以调用方的角色和权限来响应每一次桥调用。程序无法触及运行它的人本人也无法直接触及的工具、连接器或记录。

受审计、有边界

程序发起的每一次工具调用都会被记录,而每次运行都受时间上限、内存上限以及调用次数上限的约束。没有任何办法让一次运行悄无声息地永远跑下去。

两种使用方式

把你反复进行的工作流保存下来;让智能体即兴处理一次性任务。两者都遵守相同的访问规则和审计日志。

已保存的代码工具

一种可复用的工具,其主体是一段已保存的程序。在仪表板中创建它,为它命名并设定参数,它便会像其他任何工具一样出现在工具列表中。从 Starter 套餐起即包含。

内联代码

一个通用的 Run code 工具,智能体可以用它当场编写的程序来调用——始终只读,并使用调用方自己的权限。需 Team 及以上套餐。

智能体提议

智能体可以起草一个已保存的代码工具,并提议交由管理员审查和批准,这样一次出色的一次性方案就会变成受治理、可复用的工具。需 Team 及以上套餐。

它在哪里运行

两种部署运行的是同一套开源代码,代码模式在各自环境中的行为完全一致。

用 Docker 自托管

在你自己的服务器上,与 AnythingMCP 并排运行随附的 code-runner 服务。它是一个独立、锁定的进程,因此一次运行与你的后端和数据相互隔离。已保存的代码工具从 Starter 套餐起即包含;可写的代码工具随 Enterprise 提供。

在 GitHub 上打开

AnythingMCP Cloud(欧盟)

在 AnythingMCP Cloud 上,code-runner 由我们为你托管,运行在位于德国法兰克福的隔离基础设施上。无需安装或运维:在某个 MCP 服务器上启用代码模式,把它连接到你的 AI 客户端,然后运行一个多步骤任务。从 7 天免费试用开始。

免费试用

查看各套餐包含的内容

关于代码模式的问题

MCP 中的代码模式是什么?

代码模式让 AI 智能体从一段简短程序内部调用你的 MCP 工具,而不必逐个工具地调用。智能体编写一小段 JavaScript,去发现、读取并运行若干工具,在沙箱中筛选并关联结果,只返回答案。中间数据从不进入模型的上下文窗口,这正是削减 token 用量的原因。

代码模式能把 token 用量降低多少?

在多步骤、以筛选为主的工作流上——那种原本会发起数十次工具调用并读完每一份中间列表的工作流——代码模式通常可将 token 用量最多降低 90–99%,因为只有最终结果会返回给模型。对于单次工具调用则没什么可省的;收益随调用次数和其间数据量的增大而增长。

让 AI 智能体运行代码安全吗?

代码模式绝不会在 AnythingMCP 后端运行。每次运行都在一个独立、锁定的子进程中执行,没有网络、没有文件系统、没有环境变量,也无法访问已存储的密钥。程序唯一能做的,就是通过 amcp 桥、以调用方的角色和读写规则,调用调用方本就有权使用的那些 MCP 工具。每次运行都会被审计,并受时间上限、内存上限以及工具调用次数上限的约束。

代码模式默认开启吗?

不。代码模式默认关闭,直到工作区按每个 MCP 服务器逐一开启它——已保存的代码工具,或已保存的工具加内联代码。内联代码还会进一步受调用方角色的限制。程序只能触及该服务器开放的连接器,以及调用方本就拥有的工具。

哪些套餐包含代码模式?

已保存的代码工具从 Starter 套餐起即包含(每个套餐对可保存的数量设有上限)。内联代码和智能体提议需 Team 及以上套餐。可写的代码工具是 Enterprise 的功能。每月运行配额和按组织的并发上限随套餐而扩展。确切数字请查看价格页面。

它能配合 Claude、ChatGPT、Copilot 和 Cursor 使用吗?

可以。代码模式通过网关本就提供的那个标准 MCP 端点对外暴露,因此任何支持远程 MCP 服务器的客户端都能使用它。已保存的代码工具会出现在工具列表中;内联代码会显示为一个 Run code 工具。把服务器连接到你的客户端,然后让它运行一个多步骤任务。

自托管时我需要额外运行什么吗?

自托管时,代码模式使用一个随附的 code-runner 服务,它与 AnythingMCP 并排运行——是一个独立、锁定的进程,使运行与你的后端相互隔离。在 AnythingMCP Cloud 上,该执行器由我们为你托管。仓库中有关于如何运行它的文档。

不再为模型从不需要的数据付费

在 AnythingMCP Cloud 上启用代码模式,或在你自己的服务器上运行它,让你的智能体一步回答数据密集型任务。