• #claude-code
  • #mcp
  • #tool-search
  • #環境変数

概要

Claude Code のツール検索ツール(Tool Search Tool)を有効にすることで、MCP ツールの定義が事前にコンテキストウィンドウに含まれなくなり、必要に応じて動的にツールを検索・呼び出しできる。

Before: 設定前の状態

現在の MCP サーバー

chrome-devtools: cmd /c npx -y chrome-devtools-mcp@latest --browserUrl http://127.0.0.1:9222

alt text

問題点

  • MCP ツールの定義が事前にコンテキストウィンドウに読み込まれる
  • 多数の MCP ツールをインストールしている場合、タスクの遂行に不要なツール定義がコンテキストウィンドウを圧迫
  • 例: playwright, next-devtools, serena の 3 つの MCP ツールで約 39,000 トークン(コンテキストの約 20%)

設定方法

方法 1: 起動時に環境変数を指定

ENABLE_TOOL_SEARCH=true claude

方法 2: settings.json で永続的に設定

~/.claude/settings.jsonenv セクションに追加:

{
  "env": {
    "ENABLE_TOOL_SEARCH": "true"
  }
}

方法 3: Windows システム環境変数として設定

  1. 「システムのプロパティ」→「環境変数」を開く
  2. ユーザー環境変数に ENABLE_TOOL_SEARCH = true を追加

実施した設定

~/.claude/settings.json に以下を追加:

{
  "model": "opus",
  "hooks": { ... },
  "alwaysThinkingEnabled": true,
  "env": {
    "ENABLE_TOOL_SEARCH": "true"
  }
}

注意: この設定を有効にするには Claude Code の再起動が必要。

After: 設定後の状態

alt text

確認された変化

  • /context コマンドで MCP Tools セクションが表示されなくなった
  • MCP ツールの定義がコンテキストウィンドウに事前読み込みされなくなった
  • System tools: 21.0k tokens (10.5%) のみで、MCP ツール分のトークンが削減された
  • Claude は必要に応じて MCPSearch(...) ツールを使用して MCP ツールを動的に検索・呼び出し

MCPSearch のクエリモード

  1. Direct Selection: ツール名を直接指定(例: query: "select:mcp__playwright__browser_navigate"
  2. Keyword Search: キーワードで検索(例: query: "screenshot")。最大 5 件の関連ツールが返される

参考

備考

  • 2025 年 12 月時点で実験的機能
  • 公式ドキュメントには ENABLE_TOOL_SEARCH 環境変数の明示的な記載なし
  • トークン使用量を最大 85% 削減できる可能性