Anthropic のエンジニアリングブログに掲載されたこの記事は、Claude がツールを動的に発見し、学習し、実行できるようにする 3 つのベータ機能を発表している。記事は、数百から数千のツールを横断して動作するエージェントの姿から始める。git、パッケージマネージャー、テストフレームワーク、デプロイパイプラインにまたがる IDE アシスタントや、多数のサービスや MCP サーバーに同時に接続された運用コーディネーターといったものである。そして、そうしたエージェントに必要なことを 3 つ挙げる。すべての定義を最初からコンテキストに置くのではなく、必要に応じてツールを発見して読み込むこと、呼び出しごとに 1 回の推論パスを行うのではなく、コードからツールを呼び出すこと、そしてスキーマ定義だけからではなく、例から正しい使い方を学ぶことである。
3 つの機能はこれらの必要に順に応える。Tool Search Tool による ツール検索、プログラマティックツール呼び出し、そして Tool Use Examples である。記事はそれぞれについて、問題、API の例を交えた機能の仕組み、Anthropic の社内での測定結果、そして追加のオーバーヘッドに見合う場合と見合わない場合を示している。記事は、社内テストにおいてこれらの機能が従来のツール利用パターンでは不可能だったことを可能にしたと述べ、その例として、Claude for Excel がプログラマティックツール呼び出しを使って数千行のスプレッドシートを読み取り、変更していることを挙げている。
要点
- ツール定義は、大きく、しかも増え続けるコストとして提示されている。記事の例である 5 つのサーバーからなる MCP 構成では、58 個のツールが会話の開始前におよそ 55K トークンを消費しており、Anthropic では最適化前にツール定義が 134K トークンを消費する例も見てきたと記事は報告している。さらに、最もよくある失敗は誤ったツールの選択と誤ったパラメータであり、特に名前の似たツールの間で起きやすいと付け加えている。
- Tool Search Tool は、
defer_loading: trueが指定されたツールを、Claude が検索するまで Claude のコンテキストの外に置いておく。記事は、その例でトークン使用量が 85% 削減されたと報告し、大規模なツールライブラリを用いた MCP の評価では、正答率が Opus 4 で 49% から 74% に、Opus 4.5 で 79.5% から 88.1% に向上したとしている。また、遅延されたツールは初期プロンプトに含まれないため、遅延はプロンプトキャッシュを壊さないと述べている。 - 従来のツール呼び出しは、中間結果によるコンテキスト汚染と推論のオーバーヘッドを引き起こすとされる。呼び出しのたびにモデルの完全な推論パスが必要になり、Claude は結果を自然言語で統合しなければならないからである。プログラマティックツール呼び出しでは代わりに、Claude がツールを呼び出す Python を書き、それがサンドボックス化されたコード実行環境で実行されて、最終的な出力だけを返す。記事は、複雑なリサーチタスクでの平均トークン使用量が 43,588 から 27,297 へと 37% 削減されたと報告し、社内の知識検索と GIA ベンチマークでの正答率の向上も挙げている。
- JSON Schema は構造的に何が妥当かを定義するが、ツールをどう使うべきか(形式、ID の規約、ネストした構造をいつ埋めるか、パラメータどうしがどう関連するか)は定義しない、と論じられている。Tool Use Examples はツール定義にサンプルの呼び出しを追加するもので、記事は、社内テストで複雑なパラメータの扱いにおける正答率が 72% から 90% に向上したと報告している。
- 各機能は、それぞれに「最も有益」な条件と「あまり有益でない」条件を持つトレードオフとして位置づけられており、記事は、最大のボトルネック(ツール定義によるコンテキストの肥大化、中間結果によるコンテキストの汚染、またはパラメータの誤り)から始め、その後に他の機能を重ねることを勧めている。記事は 3 つを相補的なものとして説明する。検索が適切なツールを見つけ、プログラマティックな呼び出しがそれらを効率的に実行し、例が呼び出しを正しいものにする。
- 実践的な指針としては、検索はツールの名前と説明に対して照合されるので、明確で説明的な名前と説明を書くこと、最もよく使うツールを 3〜5 個は常に読み込んだままにしておくこと、Claude が正しいパース処理のコードを書けるよう戻り値の形式を文書化すること、そしてツールごとの例は、実際に曖昧な点に焦点を当てた、現実的で多様なものを 1〜5 個にとどめることが挙げられている。
背景
この記事はベンダーによる自社プラットフォームの機能の発表であり、性能に関する数値はすべて Anthropic の社内テストによるものである。記事はこれらの機能を、MCP を用いたコード実行(Code Execution MCP)に関する同社の以前の記事を土台とするものとして提示しており、Cloudflare の Code Mode をはじめ、エコシステムの他の取り組みから着想を得たことも認めている。記事の締めくくりの主張は、エージェントが数十のツールと大規模なデータセットにまたがるワークフローを担うようになるにつれて、これらの機能がツール利用を単純な関数呼び出し(関数呼び出し)から知的なオーケストレーションへと進めるというものである。