• AI
  • ツール
  • How-to
  • MCP

CodeGraph——AIコーディングエージェントに「コードの地図」を渡すMCPツール

Claude CodeやCursorに事前インデックス済みのコード知識グラフを提供し、トークン数を59%削減、ツール呼び出しを70%削減するCodeGraphのセットアップと使い方を解説。

カテゴリー: AI · ツール · How-to · MCP | 公開: 2026年5月22日

Claude CodeやCursorに事前インデックス済みのコード知識グラフを提供し、トークン数を59%削減、ツール呼び出しを70%削減するCodeGraphのセットアップと使い方を解説。

📑 目次

みなさん、こんにちは!葉桜ラボ編集部のチカちゃんです 🌸

ここ数ヶ月、AIコーディングエージェント(Claude Code、Cursor、Codex CLI、OpenCode……)がめっちゃ流行ってますよね。「もうターミナルで直接コード書くのが面倒になった……」なんて人も増えてきたんじゃないでしょうか。

でも、使ってるとこんなモヤモヤ、ありませんか?

  • 「この関数、どこで定義されてるんだっけ?」→ エージェントがgrep&ファイル読み込みを延々と繰り返す
  • 大規模リポジトリになると、コンテキストがすぐパンク
  • 結局「探索」にトークンと時間を大量消費して、肝心のコードを書く前に課金が……💸

今日紹介する CodeGraph は、この「エージェントの手探り問題」を解決するために生まれたツールです。

そもそもCodeGraphって何?

CodeGraph は、AIコーディングエージェント(Claude Code / Cursor / Codex CLI / OpenCode)に対して、事前インデックス済みのコード知識グラフを提供するMCPサーバーです。

https://github.com/colbymchenry/codegraph

通常、エージェントはコードベースを理解しようとするとき、「grepで検索 → ファイルを読む → また検索」という試行錯誤を繰り返します。これは人間が初めてのコードベースを探索するのと同じで、すごく非効率。

CodeGraphはその前に、tree-sitterでコードの構造を解析し、関数・クラス・インポート・呼び出し関係をSQLiteのグラフとしてあらかじめインデックスしておきます。エージェントはそのグラフをクエリするだけで、一発で必要な情報を手に入れられる——という仕組みです。

特筆すべきは、すべてローカルで完結していること。データはあなたのマシン内のSQLiteデータベースに保存され、外部に漏れることはありません。APIキーも不要です。

どれくらいすごいの?(ベンチマーク)

CodeGraphのREADMEには、実際のリポジトリを使った比較データが載っています。めちゃくちゃ具体的なので一部抜粋

指標CodeGraphありCodeGraphなし改善
ツール呼び出し回数(平均)3回39回92%削減
処理時間(平均)27秒1分33秒71%高速化
ファイル読み込み0回多数100%削減
使用トークン(平均)59.4K236.7K75%削減

特に面白いのはVS Code本体(4,002ファイル、59,377ノード)でのテスト。CodeGraphを使ったエージェントは たった3回のツール呼び出し+17秒 で複雑な質問に答えています。使わなかった場合は 52回の呼び出し+1分37秒。この差はデカい……。

また、Swiftコンパイラ(25,874ファイル、272,898ノード)という超大規模リポジトリでも、CodeGraphは4分でインデックス完了し、エージェントは 6回の探索呼び出し+ファイル読み込み0回+35秒 で質問に回答できたそうです。

※ ベンチマークはClaude Opus 4.7 + Claude Code v2.1.145、各4回実行の中央値。詳細は公式READMEをどうぞ。

インストール&セットアップ手順

基本、ターミナルで 3つのコマンド を叩くだけです。

Step 1: インタラクティブインストーラーを実行

npx @colbymchenry/codegraph

これを実行すると、対話形式のインストーラーが起動します。自動で以下のことをやってくれます:

  1. インストール済みのエージェントを検出(Claude Code / Cursor / Codex CLI / OpenCode)
  2. MCPサーバーの設定を自動で書き込み(~/.claude.json など)
  3. 各エージェント用の指示ファイルを作成(CLAUDE.md.cursor/rules/codegraph.mdc など)
  4. 「グローバルインストール」か「このプロジェクトだけ」かを質問してくる

途中で「codegraphをPATHに追加しますか?」と聞かれるので、基本的には Yes で大丈夫です。

Step 2: プロジェクトを初期化

cd your-project
codegraph init -i

このコマンドで、そのプロジェクトのコード解析が始まります。プロジェクト内に .codegraph/ ディレクトリが作成され、その中に知識グラフのデータベースが保存されます。

Step 3: エージェントを再起動

設定が完了したら、使っているエージェント(Claude CodeやCursorなど)を再起動します。すると、エージェントがCodeGraphのMCPツールを自動認識し、コード探索に使い始めます。

非インタラクティブモード(CI / スクリプト向け)

サーバーやCIで使うなら、フラグで全部指定できます:

# 自動検出 + 全自動グローバルインストール
codegraph install --yes

# 特定のエージェントだけ指定
codegraph install --target=cursor,claude --yes

# プロジェクトローカルにインストール
codegraph install --target=auto --location=local

実際の使い方——エージェントとの連携

セットアップが完了すると、エージェントが以下のようなツールを使えるようになります。

メインセッションで使う軽量ツール

ツール用途
codegraph_searchシンボル名でコード全体を検索(FTS5)
codegraph_callersある関数を呼び出している箇所を検索
codegraph_calleesある関数が呼び出している先を検索
codegraph_impactシンボル変更の影響範囲を分析
codegraph_node個別シンボルの詳細情報を取得
codegraph_filesインデックスされたファイル構造を表示
codegraph_statusインデックスの状態を確認

サブエージェントで使う探索ツール

深い調査が必要な場合は、サブエージェント(Explore agent) を起動して codegraph_explore を使います。このツールは、関連する全ファイルのソースコードを一度に返してくれるので、エージェントが何度もファイルを読みに行く必要がなくなります。

実際のやりとりイメージ

たとえば、Claude Codeに 「このプロジェクトの認証フロー、どうなってる?」 と聞いたとします。

CodeGraphなしの場合:

  1. “auth” でgrep → たくさん出てくる
  2. 関連ファイルを順番に読む(何度もRead tool呼び出し)
  3. 呼び出し関係を推測しながら探索
  4. 合計50回くらいツール呼び出し、トークンは数十万

CodeGraphありの場合:

  1. codegraph_search("auth") → 関連シンボルが一発で見つかる
  2. codegraph_callers / callees → 呼び出し関係がパッとわかる
  3. サブエージェントで codegraph_explore → 該当コードをまとめて取得
  4. 合計3〜5回のツール呼び出し、ファイル読み込みゼロ

この差は、実際に使うと本当に体感できます。特に大きめのリポジトリ(数千ファイル以上)だと顕著です。

ここがすごい——競合との差別化ポイント

CodeGraphのすごいところ、いくつかまとめてみます。

1. 「エージェントに読み方を教える」設計が秀逸

インストーラーが作成する指示ファイル(CLAUDE.mdなど)には、「codegraph_exploreをメインのツールとして使い、取得したコードは再読み込みしない」 というルールが明示されています。つまり、エージェントの行動を根本から変える設計。単なる検索ツールを追加するのではなく、エージェントの「探索戦略」そのものを最適化しています。

2. 100%ローカル

データが一切外部に出ません。SQLiteベースなので、オフラインでも使えるし、企業のセキュリティポリシーにも引っかかりにくい。「AIエージェントにコード全部読ませるの怖い……」 という懸念も、CodeGraphなら安心です。

3. フレームワークを理解する

13種類のWebフレームワーク(Django, Flask, FastAPI, Express, NestJS, Laravel, Rails, Spring, Gin, Axum, ASP.NET, Vapor, React Router)のルーティングパターンを自動認識します。つまり、「このURLのハンドラはどこ?」 という質問にも、フレームワークのルールに従って正確に答えてくれます。

4. 自動同期

ファイル変更をOSネイティブのファイルイベント(FSEvents / inotify / ReadDirectoryChangesW)で検出し、2秒のデバウンスで自動インデックス更新してくれます。コードを書きながら知識グラフが自動で最新に保たれる、というわけです。

5. 多言語対応

19言語+αに対応。TypeScript/JavaScript、Python、Go、Rust、Java、C#、PHP、Ruby、C/C++、Swift、Kotlin、Scala、Dart、Svelte、Vue、Liquid、Pascal……。言語をまたがったクエリ(Pythonの関数からRustの実装を追う、等)もシームレスに動くのが面白いところ。

気をつけること

インデックス初回作成の時間

大規模リポジトリ(Swiftコンパイラクラス)でも4分程度ですが、プロジェクトによってはそれなりに時間がかかります。初回は気長に待ちましょう。2回目からは差分だけの同期なので一瞬です。

対応エージェントのバージョン

Claude Code / Cursor / Codex CLI / OpenCode の4つに対応。WindsurfやContinueなどはまだ公式対応されていません(ただしREADME曰く、targets/ に1ファイル追加+registry登録で簡単に追加できる設計になっているとのこと)。

「エージェントに任せすぎ」にならないように

便利だからといって、すべてをエージェント任せにするのは考えもの。CodeGraphは「コードを理解する」ためのツールであって、「コードを考える」ためのツールではありません。ツールを使って判断するのは自分——という意識は忘れずに持ちたいところです。

まだ発展途上

GitHubのスター数は12,000超えで急成長中ですが、まだv0.8.0(2026-05-20リリース)。機能は安定していますが、破壊的変更が入る可能性はゼロではありません。アップデートはREADMEやリリースノートをチェックしておきましょう。

チカちゃん的まとめ

CodeGraphは、「AIコーディングエージェントがコードを読むコスト」を根本から下げる ツールです。

ここでちょっと哲学的になるんですけど——エージェントが「手探りでコードを読む」のと「知識グラフを引く」のとでは、情報の扱い方が根本的に違います。手探りは推測を含むけど、グラフは構造をそのまま返す。つまりCodeGraphは、エージェントの「勘」を減らして「確度」を上げる——「考える」ために使うトークンを増やす、とも言えます。

コードを書く人間にとっても、自分でgrepしなくてもエージェントが一発で該当箇所を教えてくれるのは、「考える文脈を途切れさせない」 という意味で大きな価値があります。

気になった方は、まずお試しで小さなプロジェクトに npx @colbymchenry/codegraph してみてください。3コマンドで終わります。もし「こんなに変わるんだ……」と感じたら、チカちゃん的に大成功です。

思索は冒険です。今日の話も、その入口のひとつでした 🌸

参考URL

  • インターネット上のツールは第三者が提供するものです。開発工程や配布経路を悪用した攻撃(サプライチェーン攻撃)が仕掛けられる可能性もゼロではありません。ご利用の際は公式リポジトリの情報をご確認いただき、自己責任でお使いください。
  • AIに関する技術や情報は急速に変化します。本記事の内容が公開後に古くなる可能性があります。各サービスの公式ドキュメントや最新情報をご確認ください。