まだMCPで「Context low」警告に悩んでいますか?
Claude Codeユーザーなら一度は経験したことがあるはず。
「あれ?まだ何もしてないのに、もうコンテキストがパンパン...」
MCPサーバーを5個、6個と接続していくと、起動した瞬間に67,000トークン以上を消費していることも珍しくありません。これが悪名高い**「コンテキスト汚染(Context Pollution)」**問題です。
結論から言うと、2026年1月14日にAnthropicがリリースしたMCP Tool Search機能で、この問題は完全に解決しました。
衝撃の数字:85%のトークン削減
具体的な改善効果を見てみましょう:
| 指標 | 従来方式 | Tool Search使用時 | 削減率 |
|---|---|---|---|
| 50+ツール読み込み | 77,000トークン | 8,700トークン | 88.7% |
| GitHubサーバー単体 | 46,000トークン | 必要時のみ読込 | - |
| 7+サーバー構成 | 67,000+トークン | 約8,500トークン | 87.3% |
これ、ヤバくないですか?
200,000トークンのコンテキストウィンドウを持つClaude。従来は起動時点で33%以上がツール定義で埋まっていたのが、今はわずか5%未満で済むようになりました。
なぜこんな問題が起きていたのか
MCPは素晴らしい技術です。Claude Codeがファイル操作、Web検索、データベース接続など様々な機能を使える理由は、すべてMCPのおかげ。
でも、ここに落とし穴がありました。
従来の動作:
1. Claude Code起動
2. 全MCPサーバーのツール定義を読み込み
3. GitHubサーバー: 「私には50個のツールがあります。create_issue, close_issue, list_repos, fork_repo...(延々と続く)」
4. PostgreSQLサーバー: 「私にも30個のツールがあります...」
5. ...
6. 作業開始前にすでに大量のトークンを消費
開発者のSimon Willisonはこう言っています:
「context pollutionのせいでMCPをほとんど使っていなかった。これが解決した今、何十個、何百個のMCPを接続しない理由がない」
MCP Tool Searchの仕組み
新しいアーキテクチャは驚くほどシンプルで賢い。
Step 1: 自動検知
Claude Codeがツール定義のトークン消費量を監視。10,000トークン(コンテキストの約5%)を超えた時点で自動的にTool Searchモードに移行します。
Step 2: 軽量インデックス作成
全ツールの完全な定義を読み込む代わりに、ツール名と簡潔な説明だけの軽量インデックスを作成。
Step 3: オンデマンド読み込み
Claudeがリクエストを分析し、「このタスクにはGitHubのissue関連ツールが必要だな」と判断したら、その時初めて詳細な定義を読み込みます。
新しい動作:
1. Claude Code起動
2. 軽量インデックスのみ読み込み(約3Kトークン)
3. ユーザー: 「GitHubにissueを作成して」
4. Claude: Tool Searchで関連ツールを検索
5. 必要な3-5個のツール定義のみ読み込み(約3Kトークン追加)
6. 実行
今すぐ使える!設定方法
朗報: MCP Tool Searchは2026年1月14日からデフォルトで有効です。特別な設定は不要!
動作確認方法
# Claude Code内で実行
/context
トークン使用量の内訳が表示され、MCPツールの消費量が大幅に減っていることを確認できます。
詳細診断
# MCPサーバーごとのトークン消費を確認
/doctor
手動での有効化(古いバージョンの場合)
もし自動で有効になっていない場合は、環境変数で強制できます。
# 起動時に指定
ENABLE_TOOL_SEARCH=true claude
# または ~/.claude/settings.json に追加
{
"env": {
"ENABLE_TOOL_SEARCH": "true"
}
}
無効化する場合(非推奨)
特殊な理由で従来方式に戻したい場合:
// ~/.claude/settings.json
{
"enable_tool_search": false
}
精度も向上!ベンチマーク結果
「動的読み込みだと、必要なツールを見つけられないのでは?」
と心配する方もいるかもしれません。でも、むしろ精度は向上しています。
| モデル | Tool Search OFF | Tool Search ON | 改善率 |
|---|---|---|---|
| Claude Opus 4 | 49.0% | 74.0% | +51% |
| Claude Opus 4.5 | 79.5% | 88.1% | +11% |
なぜ精度が上がるのか?
- ノイズの削減: 50個のツール定義に埋もれていた情報が、必要な3-5個だけになる
- コンテキストの有効活用: 空いたスペースをユーザーの指示理解に使える
- パラメータ幻覚の減少: 関係ないツールのパラメータと混同しなくなる
MCPサーバー作者向け:検索されやすいツール設計
Tool Searchの恩恵を最大化するには、MCPサーバー側での工夫も重要です。
悪い例(検索されにくい)
# ツール名が汎用的すぎる
name = "create"
description = "Does stuff with data"
良い例(検索されやすい)
# 明確で検索キーワードが豊富
name = "github_create_issue"
description = "Creates a new issue in a GitHub repository with title, body, labels, and assignees"
ベストプラクティス
-
動詞_対象_操作 の命名規則(例:
github_create_issue) -
具体的なパラメータ名(
urlではなくrepository_url) - 説明に検索キーワードを含める(何ができるか、どんな時に使うか)
私の環境での Before/After
実際に私の開発環境で測定した結果です:
【Before: 従来方式】
接続MCPサーバー: 8個
- GitHub: 46,000トークン
- Postgres: 12,000トークン
- Filesystem: 8,000トークン
- その他5つ: 16,000トークン
合計: 82,000トークン(41%消費、残り5.8%の余裕しかなし)
【After: Tool Search有効】
同じ8個のMCPサーバー
軽量インデックス: 6,500トークン
必要時の追加読み込み: タスクに応じて+3,000〜5,000トークン
実質消費: 約10,000トークン(5%消費、95%が作業に使える!)
まとめ:MCP Tool Searchの3つの革命
- コンテキストの解放: 85%以上のトークンを実作業に回せる
- 精度の向上: ノイズが減り、正しいツール選択率が上昇
- スケーラビリティ: 何十個ものMCPサーバーを気兼ねなく接続可能
重要: 2026年1月14日以降のClaude Codeではデフォルトで有効です。古いバージョンを使っている方は、今すぐアップデートしましょう!
次のステップ
MCPサーバーを大量に接続して、Claude Codeの可能性を最大限に引き出しましょう。
おすすめのMCPサーバー構成例:
{
"servers": {
"github": { "command": "mcp-server-github" },
"postgres": { "command": "mcp-server-postgres" },
"filesystem": { "command": "mcp-server-filesystem" },
"brave-search": { "command": "mcp-server-brave-search" },
"puppeteer": { "command": "mcp-server-puppeteer" },
"memory": { "command": "mcp-server-memory" }
}
}
これだけ接続しても、起動時のオーバーヘッドはわずか6-7Kトークン。Tool Search以前では考えられなかったことです。
この記事が役に立ったら、いいねと保存をお願いします!
皆さんはMCPサーバーをいくつ接続していますか?おすすめのMCPサーバーがあればコメントで教えてください!
次回は「Claude CodeでMCPサーバーを自作する方法」について解説予定です。お楽しみに!