MCP Server GDB について
MCP Server GDB は GDB/MI プロトコルをベースにした MCP サーバーで、AI アシスタントからアプリケーションをリモートでデバッグできます。複数のデバッグセッションを同時に扱えます。エージェントの動作を確認する TUI は開発中です。
主な機能
- 01GDB デバッグセッションの作成と管理
- 02ブレークポイントの設定と削除
- 03スタックフレームとローカル変数の確認
- 04実行の制御(実行、一時停止、ステップなど)
- 05複数セッションの同時デバッグ
- 06レジスタとメモリ内容の読み取り
活用シーン
- 01AI アシスタントによるアプリケーションのリモートデバッグ
- 02別々の問題を並行してデバッグするセッション管理
- 03AI クライアントからのスタック・変数・レジスタの確認
MCP 対応
GDB のデバッグ操作(create_session、set_breakpoint、get_stack_frames など)を MCP ツールとして MCP クライアントに公開する MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Server GDB
MCP プロトコルに基づく GDB/MI プロトコルサーバーで、AI アシスタントにリモートアプリケーションのデバッグ機能を提供します。
特徴
- GDB デバッグセッションの作成と管理
- ブレークポイントの設定と管理
- スタック情報と変数の表示
- プログラム実行の制御(実行、一時停止、ステップ実行など)
- 複数セッションでの並行デバッグに対応
- エージェントの動作を調べてプロンプトを改善できる、組み込みの TUI(開発中)
インストール
ビルド済みバイナリ
リリースページからお使いのプラットフォームに合ったバイナリを選び、直接実行できます。
ソースからビルド
リポジトリをクローンし、cargo でビルドします
cargo build --release
cargo run
Nix を使用
Nix がインストールされている場合、クローンせずにプロジェクトを実行できます。
ローカルで実行(クローン後)
nix run .
GitHub からリモート実行
nix run "git+https://github.com/pansila/mcp_server_gdb.git" -- --help
開発環境
すべての依存関係がそろった開発用シェルに入るには、次を実行します。
nix develop
使用方法
- そのまま実行します:
./mcp-server-gdb - サーバーは次の 2 つのトランスポートモードに対応しています。
- Stdio(デフォルト):標準入出力トランスポート
- SSE:Server-Sent Events トランスポート。デフォルトは
http://127.0.0.1:8080です
設定
src/config.rs ファイルまたは環境変数を変更して、サーバーの設定を調整できます。
- サーバーの IP アドレス
- サーバーのポート
- GDB コマンドのタイムアウト時間(秒)
対応する MCP ツール
セッション管理
create_session- 新しい GDB デバッグセッションを作成しますget_session- 指定したセッションの情報を取得しますget_all_sessions- すべてのセッションを取得しますclose_session- セッションを終了します
デバッグ制御
start_debugging- デバッグを開始しますstop_debugging- デバッグを停止しますcontinue_execution- 実行を再開しますstep_execution- 次の行にステップインしますnext_execution- 次の行をステップオーバーします
ブレークポイント管理
get_breakpoints- ブレークポイントの一覧を取得しますset_breakpoint- ブレークポイントを設定しますdelete_breakpoint- ブレークポイントを削除します
デバッグ情報
get_stack_frames- スタックフレーム情報を取得しますget_local_variables- ローカル変数を取得しますget_registers- レジスタを取得しますread_memory- メモリの内容を読み取ります
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。