repocompass.
← 一覧へ

Context Mode|AIエージェントのコンテキストを98%削減するMCPサーバー

Context Modeは、AIコーディングエージェントのコンテキストウィンドウを最適化するMCPサーバーです。ツールの出力をサンドボックス化し、SQLiteとBM25検索を用いてセッションメモリを保持します。

MCP TypeScript ★ 19k ライセンス Elastic-2.0 記事公開

ポイント

  • コンテキストを98%削減。生のツール出力をサンドボックスに逃がし315KBを5.4KBに圧縮。
  • セッションの永続化。会話が圧縮されても編集履歴やタスクをSQLiteに保持し忘却を防止。
  • コードでの思考を強制。LLMに直接ファイルを読ませず、集計スクリプトを実行させ結果のみを取得。

概要・解決する課題

AIエージェントがPlaywrightのスナップショットを取得したり、多数のGitHub課題を読み込んだりすると、大量の生データが瞬時にコンテキストを埋め尽くします。会話のトークン上限に達してエージェントが会話を圧縮すると、編集中のファイルや直前のエラーを忘れてしまう課題がありました。

Context Modeは、ツールの実行をサンドボックス化し、生の出力をコンテキストウィンドウから排除するMCPサーバーです。ファイル編集やタスクの履歴をSQLiteに保存し、FTS5によるBM25検索で必要な情報だけを検索・抽出することで、コンテキストの消費を大幅に抑制します。

ただし、フックに対応していないプラットフォームで利用する場合は、自動ルーティングが機能しないため、手動でルーティングファイルをコピーして配置する必要があります。

なぜ注目されているか

LLMのコンテキスト制限が拡大した一方で、エージェントの自律稼働に伴う「MCPツールの出力肥大化」と「会話圧縮による文脈の喪失」が新たな開発のボトルネックとなっています。この「もう半分のコンテキスト問題」に、インデックス化とローカルでのコード実行というアプローチで直接応えたことで支持を集めています。

主なユースケース

  • 大量のファイルを跨ぐ分析処理 エージェントに50個のファイルをすべて読み込ませる代わりに、JavaScriptスクリプトを自動生成して実行させ、その結果だけを出力することでコンテキストを節約します。
    ctx_execute("javascript", `
      const files = fs.readdirSync('src').filter(f => f.endsWith('.ts'));
      files.forEach(f => console.log(f + ': ' + fs.readFileSync('src/'+f,'utf8').split('\\n').length + ' lines'));
    `);
  • 長時間の連続コーディングセッション 会話の圧縮が発生した状態でも、過去の編集履歴や決定事項をSQLiteから検索し、直前の開発タスクをスムーズに継続させます。

動作環境

  • Node.js: v22.5以上(またはBun)
  • データベース: SQLite(FTS5サポート必須)
  • 対応クライアント: Claude Code v1.0.33以上、Gemini CLIなど17のプラットフォーム
  • ライセンス: Elastic License 2.0(ソースアベイラブル。個人・社内利用や組み込みは自由だが、第三者向けにマネージドサービスとしてホスティング提供することは禁止)
始め方(クイックスタート)

Claude Code環境では、以下のコマンドでプラグインマーケットプレイスから直接インストールできます。

/plugin marketplace add mksglu/context-mode
/plugin install context-mode@context-mode

インストール後、Claude Codeを再起動または /reload-plugins を実行し、以下の診断コマンドで動作を検証します。

/context-mode:ctx-doctor

診断ツールの各項目に [x] が表示されれば、ランタイムやフック、FTS5、プラグイン登録が正常に機能しています。詳細は公式リポジトリを参照してください。

こんな人におすすめ

  • AIコーディングエージェントを使っていて、すぐにコンテキスト上限に達してしまう開発者
  • 会話が長くなるとエージェントが編集中のファイルを忘れてしまい、作業が手戻りすることに不満がある人
  • 開発コンテキストの消費量や削減効果を、実機で可視化して評価したい人

関連リソース [PR]

※ Amazon アソシエイト・リンクを含みます。リンク経由の購入で当サイトが収益を得る場合があります。

本記事は GitHub Trending を元に自動生成しています。最新情報は公式リポジトリをご確認ください。