Claude CodeはToolSearchでツールスキーマを遅延読み込みし、トークンを節約する

Claude Codeのシステムプロンプトを分析したRedditの投稿によると、ツールはトークン消費を削減するために遅延読み込み(lazy-load)される。リクエストごとにすべてのツールの完全なスキーマを送信する代わりに、Claude Codeは<system-reminder>タグ内にツール名のリストを送信し、モデルに最初にToolSearchを呼び出して各ツールのスキーマを読み込むよう指示する。
仕組み
システムプロンプトには次のような指示が含まれる:
<system-reminder> 以下の遅延ツールはToolSearchで利用可能になりました。スキーマはロードされていません——直接呼び出すとInputValidationErrorで失敗します。呼び出す前にToolSearchでクエリ"select:<name>[,<name>...]"を使用してツールスキーマをロードしてください:AskUserQuestion CronCreate CronDelete CronList EnterPlanMode EnterWorktree ExitPlanMode ExitWorktree Monitor NotebookEdit PushNotification RemoteTrigger TaskOutput TaskStop TodoWrite WebFetch WebSearch
[+ ~130個のMCPツール(Slack、Notion、Gmail...)] </system-reminder>
<system-reminder>は会話の最初のユーザーメッセージにのみ挿入される。同様のブロックでスキルが一行説明付きでリストされる。
トークンへの影響
投稿によると、システム指示とリマインダーだけで、単純な「hi」テストメッセージで38kトークンを消費した。すべてのツールの完全なスキーマを事前に読み込むと、その消費量が劇的に増加するため、この遅延読み込みアプローチが採用されている。
実用的な意味
Claude Codeや類似のエージェントベースのシステムを構築している場合、このパターンを採用する価値がある:
- 使用頻度の低いツールのスキーマは、必要なときまで遅延させる。
ToolSearchのようなコマンドを使用して、明示的にスキーマを要求する。- リマインダーは最初のメッセージ内に留め、コンテキストの繰り返しを避ける。
これは、Claude Code用のカスタムツールを作成する場合、モデルがToolSearchを通じてそれらを発見できるようにしなければならないことも意味する——そうしないと、ツールが認識されず、検証エラーが発生する可能性がある。
📖 ソース全文: r/ClaudeAI
👀 See Also

Claudeを使用してCapacitor WebViewsでモバイルアプリのQAを自動化する
ある開発者が、CapacitorベースのモバイルアプリをAndroidとiOSでテストするためにClaudeを使用した自動QAシステムを構築しました。このアプローチでは、Android WebViewにはChrome DevTools Protocolを、スクリーンショットによる視覚的分析を採用しており、Androidのセットアップは90分で完了したのに対し、iOSには6時間以上を要しました。

Flyto Indexerの発表:ソース依存性分析を強化したAIコードリファクタリング
Flyto Indexerは、MCPサーバーとして、コードベースのシンボルグラフを構築し、依存関係とコールサイトを分析することで、AIによるスマートなコードリファクタリングを支援します。

カスタムReddit MCP for Claude Desktop/コードがGitHubで共有されています
開発者が、Claude DesktopとClaude Code向けにカスタム構築したReddit MCPを公開しました。このツールは、Redditでのリサーチを直接ワークフローに統合するためのもので、GitHubでドキュメントが公開されており、無料で利用できます。

graphify-ts: ローカルMCPサーバーがClaude CodeのPRレビュートークンを63Kから8.7Kに削減
graphify-ts は、tree-sitter AST + Louvain コミュニティ検出 + BM25 + オプションの ONNX 再ランク付けを使用してコードベースのローカル知識グラフを構築し、MCP stdio 経由で公開します。本番環境でのテストでは、コードクエリの入力トークンが 2.6 倍、レイテンシが 2.8 倍削減され、PR レビューのプロンプトが 63K トークンから 8.7K トークンに削減されました。