Agents SDK 减少了 MCP Schema 转换,为 Think 中的 MCP 添加了暴露控制,并且 Code Mode SDK 添加了直接的主机 API
此版本减少了重复的 MCP schema 转换,并为 Think 的自动 MCP 工具暴露添加了选择停用(opt-out)机制。它还允许非 AI-SDK 主机直接调用持久的 Code Mode 运行时。
现在,当实时连接保持相同的工具目录时,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 工具。
@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@latestyarn add agents@latest @cloudflare/think@latest @cloudflare/codemode@latestpnpm add agents@latest @cloudflare/think@latest @cloudflare/codemode@latestbun add agents@latest @cloudflare/think@latest @cloudflare/codemode@latest