跳转到内容
搜索文档

更新日志

Cloudflare 的最新更新与改进。

Back to all posts

Agents SDK 减少了 MCP Schema 转换,为 Think 中的 MCP 添加了暴露控制,并且 Code Mode SDK 添加了直接的主机 API

此版本减少了重复的 MCP schema 转换,并为 Think 的自动 MCP 工具暴露添加了选择停用(opt-out)机制。它还允许非 AI-SDK 主机直接调用持久的 Code Mode 运行时。

控制 Think 中直接的 MCP 工具暴露

现在,当实时连接保持相同的工具目录时,Agents SDK MCP 客户端会重用已转换的输入和输出 schema。这避免了在每个模型轮次中再次将每个 MCP JSON Schema 转换为 Zod。

@cloudflare/think 还添加了 includeMcpTools。当您通过 Code Mode 或 Think 自动工具集之外的其他机制暴露 MCP 工具时,可将其设置为 false

import { Think } from "@cloudflare/think";

export class MyAgent extends Think {
	includeMcpTools = false;
	waitForMcpConnections = true;
}
import { Think } from "@cloudflare/think";

export class MyAgent extends Think<Env> {
	includeMcpTools = false;
	waitForMcpConnections = true;
}

此设置将跳过 Think 的自动 getAITools() 调用。MCP 注册、恢复、发现、原始目录访问、直接调用和 Code Mode 连接器仍然正常工作。

当您只需要原始 MCP 目录时,请使用 listTools()。对于连接器设置,请参阅在 Code Mode 中使用 MCP 工具

无需 AI SDK 即可调用 Code Mode 运行时

@cloudflare/codemode@latest 在持久的运行时句柄中添加了 execute()search()describe()。MCP 服务器和其他主机现在可以执行代码并发现连接器方法,而无需将运行时适配到 AI SDK 工具。

const matches = await runtime.search("create issue");
const docs = await runtime.describe(matches.results[0].path);
const outcome = await runtime.execute({
	code: `async () => github.create_issue({ title: "Bug" })`,
});
const matches = await runtime.search("create issue");
const docs = await runtime.describe(matches.results[0].path);
const outcome = await runtime.execute({
	code: `async () => github.create_issue({ title: "Bug" })`,
});

搜索和描述结果为受保护的连接器方法包含 requiresApproval: true。使用现有的 approve()reject() 方法可以恢复处于暂停状态的执行。

有关设置和确切的方法类型,请参阅创建持久 Code Mode 运行时Code Mode API 参考

升级

npm i agents@latest @cloudflare/think@latest @cloudflare/codemode@latest