0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【衝撃】Claude Codeのトークンが足りない?MCP Tool Searchで85%削減する裏技

0
Posted at

結論から言うと

Claude Codeを使っていて「なんかトークンの消費が早い...」と感じていませんか?

その原因、MCPサーバーかもしれません。

実は、MCPサーバーを5つ接続するだけで、会話を始める前に55,000トークンが消費されています。これはClaude Sonnet 4.5の200Kコンテキストウィンドウの**約27%**です。

しかし2026年1月14日、Anthropicがこの問題を解決するMCP Tool Search機能をリリースしました。この機能を使えば、トークン消費を最大85%削減できます。

今回は、この革命的な機能の仕組みと、すぐに使える最適化テクニックを完全解説します。

なぜあなたのClaude Codeは遅いのか?

コンテキスト汚染という闘病

開発者のScott Spence氏は、Claude Codeセッションを開始した瞬間に66,000トークンが消えていることに気づきました。何も入力していないのに、です。

これが「コンテキスト汚染(Context Pollution)」と呼ばれる問題です。

📊 よくあるMCPサーバー構成のトークン消費:
├── GitHub MCP: ~8,000 tokens
├── Filesystem MCP: ~5,000 tokens
├── Docker MCP: ~125,000 tokens(135ツール!)
├── Jira MCP: ~17,000 tokens
└── Slack MCP: ~6,000 tokens
────────────────────────────
合計: 161,000 tokens(何もする前に消費)

GitHubのIssueでは、ある開発者が144,802トークンをMCPツールだけで消費したと報告しています。これではコードを書くどころの話ではありません。

なぜこんなことが起きるのか?

MCPサーバーを接続すると、すべてのツール定義(名前、説明、JSONスキーマ、パラメータなど)が事前にコンテキストにロードされます。

これは「万が一使うかもしれない」すべてのツールを、会話の最初から持ち歩いているようなものです。

MCP Tool Searchとは何か?

遅延ロードという発想の転換

MCP Tool Searchは、ツール定義の**遅延ロード(Lazy Loading)**を実現する機能です。

従来の方式:

セッション開始 → 全ツール定義をロード → 会話開始
                  ↑
            ここで大量のトークン消費

MCP Tool Searchを使った方式:

セッション開始 → 検索ツールのみロード → 会話開始
                                          ↓
                            必要になったらツールを検索
                                          ↓
                            使うツールだけをロード

自動で有効化される

嬉しいことに、MCP Tool Searchは全ユーザーにデフォルトで有効です。

Claude Codeが以下の条件を検知すると、自動的にTool Searchモードに切り替わります:

  • MCPツールの説明が10,000トークンを超える場合
  • コンテキストウィンドウの**10%**以上をツール定義が占める場合

どれくらい効果があるのか?

Anthropicの社内テストによると:

モデル Tool Search OFF Tool Search ON 改善率
Opus 4 49% 74% +25%
Opus 4.5 79.5% 88.1% +8.6%

また、実際の使用では:

  • 51,000トークン → 8,500トークン(46.9%削減)
  • 一部のケースでは134,000トークン → 5,000トークン(96%削減!)

今すぐ使える最適化テクニック5選

1. 使っていないMCPサーバーを無効化する

最も簡単で効果的な方法です。

# 現在のMCPコンテキスト使用量を確認
/context

# 特定のサーバーを無効化
@server-name disable

# または設定画面から
/mcp

Tips: Dockerサーバーだけで125,000トークン消費することがあります。本当に必要か見直しましょう。

2. Tool Searchの閾値をカスタマイズする

// .claude/settings.local.json
{
  "mcp_tool_search_threshold": 0.05  // 5%でTool Searchを発動
}

デフォルトは10%ですが、より積極的にTool Searchを使いたい場合は閾値を下げましょう。

3. 頻繁に/clearを使う

長いセッション中、コンテキストは不要な履歴で埋まっていきます。

# タスクの区切りでコンテキストをリセット
/clear

# 新しいタスクを開始
「新しい機能を実装したい」

重要: /clearを使っても、CLAUDE.mdファイルの内容は保持されます。

4. サブエージェントを活用する

複雑なタスクは、サブエージェントに委譲することでメインコンテキストを節約できます。

「このバグの原因を調査して、サブエージェントを使って詳細を確認してください」

サブエージェントは独自のコンテキストを持つため、メインの会話のトークンを消費しません。

5. CLAUDE.mdでプロジェクト知識を外部化する

頻繁に説明するプロジェクトの情報は、CLAUDE.mdに書いておきましょう。

# CLAUDE.md

## プロジェクト構成
- src/: ソースコード
- tests/: テストファイル

## コーディング規約
- TypeScriptを使用
- 関数はJSDocでドキュメント化

これにより、毎回の会話で同じ説明を繰り返す必要がなくなります。

上級者向け:Programmatic Tool Useと組み合わせる

MCP Tool Searchは、AnthropicのProgrammatic Tool Use機能と組み合わせることで、さらに強力になります。

# ツールをdefer_loadingでマークする
tools = [
    {
        "name": "search_code",
        "description": "Search codebase",
        "defer_loading": True,  # 必要になるまでロードしない
        "input_schema": {...}
    }
]

これにより:

  • 最初はTool Search Toolだけがコンテキストにロードされる
  • Claudeが必要と判断したときだけ、実際のツールがロードされる
  • 使わないツールは永遠にコンテキストを消費しない

Before/After比較

最適化前

セッション開始...
📊 コンテキスト使用量: 66,000 / 200,000 tokens
⚠️ 利用可能: 134,000 tokens

「簡単な関数を書いて」
📊 コンテキスト使用量: 68,000 / 200,000 tokens
⚠️ すでに34%消費...

最適化後

セッション開始...
📊 コンテキスト使用量: 8,500 / 200,000 tokens
✅ 利用可能: 191,500 tokens

「簡単な関数を書いて」
📊 コンテキスト使用量: 10,500 / 200,000 tokens
✅ まだ95%利用可能!

まとめ

  • MCPサーバーを複数接続すると、知らないうちに大量のトークンが消費される
  • MCP Tool Searchは、ツールの遅延ロードでこの問題を解決する
  • 全ユーザーにデフォルトで有効なので、特別な設定は不要
  • さらに最適化したい場合は、5つのテクニックを試してみよう
  • 最大で85%以上のトークン削減が可能

次にやること

  1. /contextコマンドで現在のMCPトークン使用量を確認する
  2. 使っていないMCPサーバーを無効化する
  3. 長いセッションでは/clearを習慣化する

この記事が役に立ったら、いいね👍とストックをお願いします!

「うちではこんな最適化もやってる!」という方は、ぜひコメントで教えてください。次回の記事で紹介するかもしれません。


参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?