MCP Context 効率革命:フルバンドルからオンデマンドロードへ
MCP の Context 消費問題を深掘りし、コミュニティが提案する2つの解決策:Context Isolation と Progressive Disclosure
7つの MCP サーバーを有効にすると、作業を始める前に Context の 33.7% が消費されています。
この記事では、Claude World Taiwan コミュニティによる MCP Context 効率問題の深い分析と、提案する解決策を共有します。
問題:MCP の Context 消費
一般的な MCP サーバーのトークン消費を測定しました:
| MCP サーバー | トークン消費 |
|---|---|
| GitHub (27 tools) | ~18,000 |
| AWS MCP servers | ~18,300 |
| Cloudflare | ~15,000+ |
| Sentry | ~14,000 |
| Playwright (21 tools) | ~13,647 |
| Supabase | ~12,000+ |
| 7サーバー合計 | 67,300 (33.7%) |
平均:ツールあたり 550-850 トークン。
現代のナレッジワーカーのジレンマ
私たちは複数のプラットフォームを同時に使用します:GitHub、Jira、Linear、Slack、Vercel、Sentry…
これにより二者択一を迫られます:
- 全てインストール:セッション開始時に 50%+ の Context を消費
- プロジェクト別に分離:統一コマンドセンターとしての Claude Code の価値を失う
解決策1:Context Isolation(RFC 提案)
私たちは Anthropic に RFC #17668 を提出し、Context Isolation アーキテクチャを提案しました。
コアコンセプト
従来の Lazy Loading とは異なり、Context Isolation の主な違い:
| 側面 | 従来の Lazy Loading | Context Isolation |
|---|---|---|
| Main Context | 必要時にロード、汚染される | 常にクリーン |
| ロードタイミング | ランタイム動的ロード | Fork 作成時にロード |
| 複雑さ | 高(状態管理) | 低(context: fork を再利用) |
アーキテクチャ設計
Main Session(軽量)
│
├── Base MCPs: filesystem, memory
│ (最小の context フットプリント)
│
├── Task: database-specialist (forked)
│ └── ロード: postgres, redis(隔離)
│
└── Skill: /deploy (forked)
└── ロード: vercel, github(隔離)
実装方法
MCP 側:settings.json に lazy フラグを追加
{
"mcpServers": {
"memory": { "command": "...", "lazy": false },
"github": { "command": "...", "lazy": true },
"postgres": { "command": "...", "lazy": true }
}
}
Agent/Skill 側:frontmatter で必要な MCP を宣言
---
name: database-specialist
description: データベース操作エキスパート
tools: [Read, Bash, Grep]
mcp:
required: [postgres]
optional: [redis]
context: fork
---
なぜスクリプトではなく MCP か?
MCP の価値はツールだけではなく、集中型認証管理にあります:
| 側面 | MCP | Scripts + .env |
|---|---|---|
| 認証情報管理 | settings.json に集中 | 分散 |
| セキュリティ | 環境隔離 | ログ漏洩リスク |
| トークン更新 | 自動 | 手動実装が必要 |
| エラー処理 | 標準化されたレスポンス | API ごとに異なる |
解決策2:Progressive AgentSkill(コミュニティオープンソース)
コミュニティメンバーの CabLate が mcp-progressive-agentskill を開発し、三層プログレッシブディスクロージャーを実装しました:
三層アーキテクチャ
- 第1層:利用可能な MCP サーバーをリスト(~50-100 トークン)
- 第2層:選択したサーバーのツール名と説明を表示(~200-400 トークン)
- 第3層:完全なツール仕様をロード(~300-500 トークン/ツール)
効率計算
20個のツールを持つ MCP で、2個だけ必要な場合:
| 方法 | トークン消費 |
|---|---|
| 従来のフルバンドル | ~6,000 トークン |
| プログレッシブディスクロージャー | ~850 トークン |
| 削減 | 86% |
技術アーキテクチャ
AI Scripts (Python) → HTTP API → MCP Daemon → MCP Servers
Daemon は長時間接続を維持し、オンデマンドでツールアクセスを提供する HTTP インターフェースを提供します。
クイックスタート
# インストール
python scripts/setup.py
# Daemon 起動
python scripts/daemon_start.py --no-follow
# ツールをリスト
python scripts/mcp_list_tools.py --server playwright
# ツールを呼び出し
python scripts/mcp_call.py --server playwright --tool browser_navigate \
--params '{"url":"https://example.com"}'
現時点での推奨事項
公式の Context Isolation サポートが来るまで:
1. MCP を分類する
必須(lazy: false):
- filesystem
- memory
- sequential-thinking
重量級(削除を検討、または lazy を待つ):
- github(18k トークン)
- aws(18k トークン)
- sentry(14k トークン)
2. Project Scope を使用
# 必要なプロジェクトでのみ特定の MCP を有効化
claude mcp add --scope project postgres -- ...
3. Progressive AgentSkill を試す
MCP ヘビーユーザーには、CabLate のソリューションが今すぐ利用可能です。
ディスカッションに参加
- RFC Issue: #17668 - 👍 で応援
- オープンソース: mcp-progressive-agentskill
- コミュニティ: Discord - Claude World Taiwan
この記事は Claude World Taiwan コミュニティの技術ディスカッションをまとめたものです。私たちは Claude Code の高度な使用法に焦点を当てた開発者グループです。Discord で一緒に議論しましょう。