Claude Code / Codex のトークン消費を減らすために、MCPツールを整理した話
Claude Code や Codex を使っていると、MCPツールを追加するだけでできることが一気に増えます。 Playwrightでブラウザを操作したり、外部ドキュメントを参照したり、コードベースを意味検索したり。普通に便利です。 ただ、しばらく使っていて気になったことがありました。 「使っていないMCPツールまで、常時ONにしておく必要はあるのか?」 自分の環境では、Claude Code / Codex にいろいろなMCPツールを入れていました。最初は、使えるものが多いほうが便利だと思っていましたが、実際にはセッション開始時の重さやトークン消費が気になる場面が増えてきました。 そこで不要なMCPツールを整理し、普段使わないものをOFFにしたところ、体感としてかなり軽くなりました。 厳密なベンチマークではありません。ただ、実務でAIエージェントを使うなら、MCPの入れ方はちゃんと考えたほうがいいです。
MCPは便利だが、入れすぎると重くなる
MCPは、AIエージェントに外部ツールやデータソースを接続するための仕組みです。 たとえば、以下のようなことができます。
-
ブラウザ操作
-
カレンダー連携
-
ファイル検索
-
外部APIの実行
-
データベース参照
-
コードベースの意味検索 これだけ見ると、かなり便利です。 問題は、「便利そうだから全部入れておく」という運用です。 MCPツールを追加すると、AIエージェント側には、そのツールの情報が渡されます。どんなツールなのか、何ができるのか、どんな引数が必要なのか、といった情報です。 つまり、実際にそのツールを使っていなくても、AIエージェントのコンテキストや判断に影響する可能性があります。 ここを見落としていました。
実際に入れていたMCPツール
自分の環境では、Claude Code や Codex に複数のMCPツールを接続していました。 たとえば、以下のようなものです。
-
Playwright
-
Serena
-
context-mode
-
computer-use
-
scheduled-tasks
-
mcp-registry
-
検証用に入れたMCPツール 最初は「必要になったときに使えれば便利」くらいの感覚でした。 ただ、実際にはすべての作業で必要になるわけではありません。 CSSを少し直すだけ。WordPressテーマの1ファイルを確認するだけ。PHPの条件分岐を少し調整するだけ。 こういう作業では、PlaywrightもSerenaも不要なことが多いです。 それなのに常時ONにしていると、AIエージェントから見ると「使える道具」が増えすぎます。 結果として、次のような状態になっていました。
-
セッション開始時点で余計な情報が増える
-
使わないツールまで候補に入る
-
AIが不要なツール使用を検討する
-
コンテキスト消費が増える
-
動作や返答が重く感じる
-
作業内容に対してツール構成が過剰になる 特に小規模な修正では、MCPツールが多いことのメリットはあまりありません。むしろ、余計な選択肢を増やしているように感じました。
不要なMCPツールをOFFにした
そこで、普段使わないMCPツールをOFFにしました。 自分の中では、以下のように分けています。
-
ブラウザ操作が不要なときは Playwright をOFF
-
大規模なコード調査が不要なときは Serena をOFF
-
長時間作業でないときは context-mode を使わない
-
用途が不明なMCPは削除または無効化
-
検証用に入れたMCPは常用設定から外す
-
エラーが出ているMCPは放置せず、使わないなら外す これだけでも、かなり変わりました。 体感としては、セッション開始時の重さが減り、不要なツール呼び出しも減りました。トークン消費も以前より安定した印象です。 もちろん、これは自分の環境での話です。ツールの種類、設定、プロジェクト規模によって差はあると思います。 ただ、少なくとも「使っていないMCPを常時ONにしない」という方針は、かなり現実的です。
MCPを使わないほうがいい、という話ではない
ここは誤解しないほうがいいです。 MCP自体が悪いわけではありません。むしろ、作業によってはかなり便利です。 たとえば、以下のような作業では有効です。
-
大量ファイルの調査
-
複数ファイルにまたがる影響確認
-
ブラウザ上での動作検証
-
外部ドキュメントの参照
-
既存コードベースの意味検索
-
長時間にわたる実装作業 こういう場面では、MCPを使ったほうが効率が上がります。 問題は、作業内容に関係なく常時ONにしてしまうことです。 小さなCSS修正をしたいだけなのに、ブラウザ操作、外部API、コード検索、カレンダー連携まで全部ONになっている。これはさすがに過剰です。 人間の作業でも同じで、ドライバー1本で済む作業に、工具箱を全部広げる必要はありません。
自分の運用ルール
現在は、MCPツールを以下のように分けて考えています。
常時ONでもよいもの
本当に毎回使うものだけです。 用途が明確で、軽量で、プロジェクト作業にほぼ必須のもの。こういうものは常時ONでもよいと思います。 ただし、「なんとなく便利そう」は常時ONの理由にしないほうがいいです。
必要なときだけONにするもの
Playwright、Serena、大規模コード検索系、外部サービス連携系、ブラウザ操作系は、必要なときだけ使う方針にしました。 これらは便利ですが、常に必要なわけではありません。 特にSerenaのようなコード理解・検索系のツールは、大きめの調査では役立ちますが、単一ファイルの軽微な修正では過剰になることがあります。
基本OFFでよいもの
用途が曖昧なもの、何のために入れたか忘れたもの、検証用に入れたもの、エラーが出ているものは基本OFFでよいです。 「いつか使うかも」で残しておくと、結局それがノイズになります。 使うときに入れる。使わなくなったら外す。 MCPもそのくらいで扱ったほうがよさそうです。
グローバル設定に全部入れない
Claude Code / Codex のMCP設定は、グローバルに入れるとどのプロジェクトでも同じツールが見える状態になります。 これは便利ですが、同時に危険でもあります。 案件Aでは必要なMCPが、案件Bでは完全に不要なことがあります。Web制作の実務だと、案件ごとに必要なツールはかなり違います。 静的HTMLの修正、WordPressテーマ開発、サーバ調査、ブラウザ検証。作業内容が違えば、必要な道具も変わります。 そのため、今は以下のように分けるのがよいと考えています。
-
グローバル設定は最小限
-
プロジェクト設定に案件ごとのMCPを入れる
-
一時的に使うMCPは常用設定に入れない
-
検証用MCPは検証が終わったら外す 特に実務案件では、グローバル設定を重くしすぎないほうが安全です。
AIエージェントには「道具を減らす」ことも必要
AIエージェントを使っていると、つい「できること」を増やしたくなります。 ブラウザも操作できる。DBも見られる。外部APIも叩ける。コード検索もできる。 できることが増えるのは便利です。 ただ、実務では逆に、できることを絞ったほうが安定する場面もあります。 AIエージェントに余計な道具を渡しすぎると、判断範囲が広がります。作業に関係ないツールまで候補に入り、コンテキストも消費します。 「AIを賢くするためにツールを増やす」という考え方は間違っていません。 でも、それだけだと足りません。 「今の作業に不要なツールは渡さない」という設計も必要です。
まとめ
MCPは、Claude Code や Codex を強化する便利な仕組みです。 ただ、便利だからといって何でも常時ONにすると、トークン消費やコンテキスト使用量が増え、結果的に作業効率が落ちることがあります。 自分の環境では、不要なMCPツールをOFFにしたことで、体感として動作が軽くなりました。トークン消費も以前より安定した印象です。 今後は、以下の方針で運用するつもりです。
-
MCPは必要なものだけONにする
-
グローバル設定は最小限にする
-
重いMCPは必要なときだけ使う
-
小規模修正ではMCPを増やしすぎない
-
プロジェクトごとにMCP構成を分ける
-
何のために使うMCPなのかを明確にする AIエージェントの性能を引き出すには、便利なツールを増やすだけでは足りません。 不要なツールを減らすことも、運用設計の一部です。 MCPは「入れれば入れるほど便利」ではなく、「必要な場面で必要なものだけ使う」ほうが、実務では安定しやすいと感じています。