dbgmcp について
dbgmcpは、LLMエージェントとGDB、LLDB、PDBを接続するMCPサーバー群です。デバッガーごとに独立しており、必要なものを選んでプログラムの読み込みやコマンド実行に使えます。
主な機能
- 01GDB、LLDB、PDBに対応
- 02デバッガーごとの独立サーバー
- 03プログラムの読み込み
- 04デバッガーコマンドの実行
- 05複数の同時接続に対応
活用シーン
- 01エージェントによるプログラム状態の確認
- 02デバッガーコマンドを使った障害調査
- 03必要なデバッガーだけに接続
MCP 対応
GDB、LLDB、PDB向けのMCPサーバーを提供し、MCPクライアントからプログラムの読み込みやデバッガーコマンドの実行を行えます。READMEでは、エージェントがシェルコマンドを含む任意のコマンドを実行できる点に注意を促しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
dbgmcp
Model Context Protocol を使用して、さまざまなデバッガーを LLM エージェントに接続する MCP サーバーのコレクションです。 以下のデバッガーをサポートしています:
- GDB(GNU Debugger)
- LLDB(LLVM Debugger)
- PDB(Python Debugger)
https://github.com/user-attachments/assets/fa745e69-2bd9-482c-b5f1-59b42e458760
特長
- デバッガーごとに個別のサーバーを用意しています。必要に応じて有効または無効にできます。
- プログラムをデバッガーに読み込みます。
- デバッガーで任意のコマンドを実行します。
- 複数の同時接続をサポートしています。
注意
AI エージェントは、シェルコマンドを含む任意のコマンドをデバッガー内で実行できます。ご自身の責任でご使用ください。
インストール
簡単な方法は、リリースページからお使いのプラットフォーム用のビルド済みバイナリを選ぶことです。 現在、以下のプラットフォーム用のビルド済みバイナリを利用できます:
- Linux x86_64(
x86_64-unknown-linux-musl)
バイナリは、サポートするデバッガーに応じた名前が付けられています:
- gdb-mcp
- lldb-mcp
- pdb-mcp.
お使いのプラットフォーム用のビルド済みバイナリがない場合は、ソースからプロジェクトをビルドできます。
ソースからのビルド
Rust と Cargo をインストールする必要があります。rustup を使用してインストールできます。
git clone https://github.com/ramenhost/dbgmcp
cd dbgmcp
cargo build --release
これにより、target/release/ フォルダーに MCP サーバーのバイナリが作成されます。
使用方法
Claude Desktop
- Claude のデスクトップ設定を開きます。設定パネルの左側のバーで「Developer」をクリックし、次に「Edit Config」をクリックします。これにより
claude_desktop_config.jsonファイルが作成され、ファイルシステム上に表示されます。 - 必要な MCP サーバーを
claude_desktop_config.jsonに追加します。以下の設定には、Claude で使用するすべてのデバッガー(GDB、LLDB、PDB)が含まれています。必要なサーバーのみを含めることもできます。
{
"mcpServers": {
"gdb": {
"command": "/path/to/gdb-mcp",
"args": []
},
"lldb": {
"command": "/path/to/lldb-mcp",
"args": []
},
"pdb": {
"command": "/path/to/pdb-mcp",
"args": []
}
}
}
- Claude を再起動するか、ページを更新します。
詳しくは、Claude のドキュメントをご覧ください。
VS Code Github Copilot
- VS Code の設定で MCP サポートを有効にします。VS Code で MCP サポートを有効にするには、
chat.mcp.enabled設定を有効にします。 - ワークスペースに
.vscode/mcp.jsonファイルを作成します。 - 必要な MCP サーバーを
mcp.jsonファイルに追加します。以下の設定には、VS Code で使用するすべてのデバッガー(GDB、LLDB、PDB)が含まれています。必要なサーバーのみを含めることもできます。
{
"servers": {
"gdb": {
"type": "stdio",
"command": "/path/to/gdb-mcp",
"args": []
},
"lldb": {
"type": "stdio",
"command": "/path/to/lldb-mcp",
"args": []
},
"pdb": {
"type": "stdio",
"command": "/path/to/pdb-mcp",
"args": []
}
}
}
- VS Code を再起動するか、ウィンドウを再読み込みします。
- これで、Github Copilot チャットのエージェントモードでデバッガーツールを利用できます。
詳しくは、VS Code のドキュメントをご覧ください。
クレジット
- GDB の機能は、mcp-gdb を Rust で書き直したものです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。