ToolNavs 便利なAIツールを発見
ツール投稿 ログイン
戻るAI Q&A(英語)
MCP呼び出しがCLIよりトークンを多く消費する理由:まずツール一覧を確認し、返すフィールドを削る

MCP呼び出しがCLIよりトークンを多く消費する理由:まずツール一覧を確認し、返すフィールドを削る

AI Q&A(英語) • Admin • • 4 回閲覧

OpenRouterの実測結果は衝撃的です。同じタスクで、MCPはコマンドライン(CLI)の42倍ものトークンを消費します。結論から言うと、主な原因はMCPプロトコル自体が遅いことではなく、ツール一覧と返される結果がコンテキストを埋め尽くすことです。一覧を確認し、返すフィールドを削る方が、プロトコルを変えるより効果的です。

42倍はどこから来るのか

一つ目の請求書はツール一覧です。MCPサーバーはすべてのツールの定義を毎回のリクエストのコンテキストに詰め込まなければなりません。フィルタなしのXプラットフォームのMCPサービスは227個のツールがあり、一覧だけで68,198トークンを占めます。同じサービスでよく使う3つのツールだけに絞ると2,362トークンまで下がります。7つのMCPサーバーを同時につないでいると、何も質問していないのに67,300トークンを消費し、20万のコンテキストの3分の1が消えます。

二つ目の請求書は返される結果です。20件の投稿を読むと、MCP経由の中央値は41,250トークン。同じデータをCLIでjqを使って8フィールドに絞ると中央値は4,069トークンで、90.9%少なくなります。プロトコル自体のオーバーヘッドはそれに比べれば小さく、190回の対照実験ではMCPはCLIの1.2〜2倍程度でした。

消費を抑える3つのステップ

  1. 本当に使うサーバーだけつなぐ:各MCPサーバーについて「今週本当に使うか」を問い、使わないならいったん切断します。どうしても必要なサーバーは、ホワイトリストで使う数個のツールだけを公開します。
  2. 結果を先に切り詰める:サーバーに必要なフィールドだけ返させたり、CLI側でjqなどのツールで先に絞ってからモデルに渡したりします。生のJSONをそのままコンテキストに流し込まないことです。
  3. 定番の流れをスキルとして書く:固定の手順をスキルドキュメントに書き、モデルにそれに従わせます。毎回ツールを発見して試行錯誤で失敗するのをやめます。

MCPの方が安い場合もある

呼び出しチェーンを段階的にたどるコードナビゲーションのようなタスクでは、実測でMCPの方がCLIより2.5倍安くなりました(中央値12.7万対31.6万トークン)。1回の呼び出しで構造化された関連結果が得られ、繰り返しの検索を省けるからです。ですからMCPを一刀両断で捨てないこと。データの読み取りや状態確認はCLIの方が安く、関連する複数ステップの操作はMCPに残せます。もう一つ注意点があります。トークン数はトークナイザーによって異なります。上記の数値はtiktokenのo200k_baseを使ったもので、ClaudeとGrokでは数え方が違います。絶対値ではなく相対的な倍率を見てください。MCPそのものについてはMCPとは?APIやプラグイン呼び出しと何が違うのか、42倍という数字の出所はOpenRouterの実測:同じタスクでMCPはCLIの42倍のトークンを消費をご覧ください。

おすすめツール

もっと見る