Agents SDK:MCPスキーマ変換削減、Thinkの公開制御追加、Code Modeの直接ホストAPI
Key Points
- MCPのスキーマ再変換を削減
- Thinkで自動公開を無効化可能
- Code Modeを直接ホストで呼び出し可能
Summary
このリリースでは以下を実装しています:
- MCPクライアントがライブ接続中に変換済みの入力/出力スキーマとツールカタログを再利用し、各モデルターンでのJSON Schema→Zod変換を繰り返さないように最適化。
- @cloudflare/think に
includeMcpTools = falseを追加し、Thinkによる自動MCPツール公開をオプトアウト可能に(外部でツールを公開する場合に使用)。 - @cloudflare/codemode の耐久ランタイムに
search(),describe(),execute()を追加し、AI SDKを介さずにMCPサーバーや他ホストからCode Modeランタイムを直接操作可能に。
Key Points
- パフォーマンス改善:MCPのスキーマ変換が再利用されるため、同一接続下での余分なZod変換を削減。
- Thinkの公開制御:
includeMcpTools = falseを設定するとThinkの自動getAITools()呼び出しをスキップ。- MCPの登録/復元/発見、生カタログ取得、直接呼び出し、Code Modeコネクタは引き続き動作。
- 生カタログだけ必要な場合は
listTools()を使用。
- Code Modeの直接呼び出し:
runtime.search()/runtime.describe()/runtime.execute()で非AI-SDKホストがコネクタ検索・説明・実行を行える。- 保護されたメソッドは
requiresApproval: trueを返し、保留中の実行は既存のapprove()/reject()で解決。
Examples
import { Think } from '@cloudflare/think' export class MyAgent extends Think { includeMcpTools = false waitForMcpConnections = true }
// Code Mode 実行例(耐久ランタイムハンドル上で直接呼び出す) 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()' })
Upgrade
npm i agents@latest @cloudflare/think@latest @cloudflare/codemode@latest yarn add agents@latest @cloudflare/think@latest @cloudflare/codemode@latest pnpm add agents@latest @cloudflare/think@latest @cloudflare/codemode@latest bun add agents@latest @cloudflare/think@latest @cloudflare/codemode@latest
短く:Thinkで自動公開をオフにして外部でツールを管理する場合や、MCPのスキーマ変換コストを下げたいケース、非SDKホストからCode Modeを直接呼び出したいケースに有効です。