Joern MCP について
Joern MCPは、Joern Code Property Graphを使ってコードベースを分析するMCPサーバーです。AIエージェントやLLM向けに、構造・データフローの調査や脆弱性分析を提供し、多様な言語とコード形式に対応します。
主な機能
- 01リポジトリ、パス、コード断片からCPGを構築
- 02CPGQLクエリの実行
- 03データフローと汚染の追跡
- 04プログラムのスライスと脆弱性調査
- 05多様な言語とコード形式に対応
活用シーン
- 01コールグラフとコード構造の調査
- 02汚染データ経路の追跡
- 03潜在的な脆弱性の調査
MCP 対応
Joern CPGによる解析機能をMCPクライアントに公開します。クエリ、データフロー追跡、プログラムスライス、脆弱性分析を利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://0.0.0.0:4242/mcpclaude mcp add --transport http joern https://0.0.0.0:4242/mcp{"mcpServers":{"joern":{"type":"http","url":"https://0.0.0.0:4242/mcp"}}}Cursor で開く{"servers":{"joern":{"type":"http","url":"https://0.0.0.0:4242/mcp"}}}VS Code で開く{"mcpServers":{"joern":{"type":"http","url":"https://0.0.0.0:4242/mcp"}}}{"mcpServers":{"joern":{"serverUrl":"https://0.0.0.0:4242/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
🦡 codebadger
codebadger は、Joern のコードプロパティグラフ(CPG)を通じて、AI エージェントや LLM がコードベースの構造やデータフローを詳細にクエリできる、コンテナ化された Model Context Protocol(MCP) サーバーです。
Git リポジトリやローカルパス、貼り付けたコードスニペットを指定すると、codebadger が CPG を構築して MCP 経由で公開します。これにより、アシスタントは CPGQL クエリの実行、データフローや汚染の追跡、プログラムのスライス、Java、C/C++、JavaScript、Python、Go、Kotlin、C#、Ghidra、Jimple、PHP、Ruby、Swift における脆弱性の調査を行えます。
プログラム解析(コード構造、呼び出しグラフ、データフローの理解)と脆弱性解析(汚染追跡、バグの調査、PoC の開発)の両方に役立つ汎用基盤です。学術研究だけでなく、業界におけるセキュリティやエンジニアリングの業務にも活用できます。CPG ごとのワーカープール、メモリを考慮したスケジューリング、Postgres/Redis バックエンドを備え、大規模な解析バッチにも対応できるよう構築されています。
ニュース
codebadger とその論文『Bridging Code Property Graphs and Language Models for Program Analysis』が、Software Vulnerability Management Workshop @ ICSE 2026 に採択されました。🎉
ドキュメント
開発者やセキュリティ研究者に必要な情報はすべて docs/ にあります。
| ドキュメント | 内容 |
|---|---|
| インストール | 前提条件と、5 分で完了するローカル環境のセットアップです。 |
| 使い方 | MCP クライアントの接続、ツールカタログ、研究者向けワークフローです。 |
| LLM ワークフローガイド | エージェント向けに推奨する、上限を設けたツール実行手順です。 |
| 利用可能なツール | 各 MCP ツールの機能を説明した、カテゴリ別の一覧です。 |
| 設定 | config.yaml / 環境変数のリファレンス、テレメトリーです。 |
| デプロイ | Postgres/Redis、メモリのサイジング、shared と pool の違い、大規模バッチです。 |
| アーキテクチャ | システム設計と図です。 |
| セキュリティ | 脅威モデル、信頼境界、本番環境のセキュリティ強化です。 |
| カスタムツール | 独自の検出器を追加する方法です。 |
| コントリビューション | 開発環境のセットアップ、テスト、ガイドラインです。 |
| ロードマップ | リリース済みの機能と今後の予定です。 |
codebadger を使って脆弱性を発見しましたか?
ぜひお知らせください。TROPHIES.md に追加する PR を作成してください(CVE ID、プロジェクト名、1 行の説明、日付)。
引用
@inproceedings{lekssays2026bridging,
title={Bridging Code Property Graphs and Language Models for Program Analysis},
author={Lekssays, Ahmed},
booktitle={Proceedings of the 2026 IEEE/ACM 4th International Workshop on Software Vulnerability Management},
pages={33--40},
year={2026}
}
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。