gdb-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| dbg_startC | Start a debug session. mode: launch|compile_launch|attach. debugger: gdb|lldb. |
| dbg_terminateC | Kill (launch) or detach (attach) and free the session. |
| dbg_continueC | Resume execution until the next stop, exit, or timeout. |
| dbg_stepB | Step the current thread. kind: over|into|out. granularity: line|instruction. |
| dbg_pauseA | Interrupt a running program. This only acknowledges the pause request; it does NOT wait for the stop.
A continue/step in flight holds the session lock for its whole await-for-stop,
so pause must run lock-free to interrupt it. The resulting Residual race (acceptable): pause may transiently reject at the exact instant a continue/step starts, while state is still STOPPED for the microsecond before run_and_wait flips it to RUNNING under the lock. Flipping to RUNNING early (before awaiting the resume response) minimizes this window. |
| dbg_set_breakpointA | Set a breakpoint at file:line OR on a function. Optional condition / hit count / logpoint. |
| dbg_list_breakpointsA | List all breakpoints tracked in this session, with their stable handles. |
| dbg_remove_breakpointB | Remove a breakpoint by its stable session handle and resync the affected list. |
| dbg_set_watchpointB | Set a data breakpoint (watchpoint) on a variable. access: read|write|rw. |
| dbg_backtraceA | Return up to |
| dbg_list_threadsC | List all threads of the debuggee. |
| dbg_select_frameC | Set the active frame for evaluate/scopes/variables. |
| dbg_scopesC | List variable scopes (Locals, Registers, ...) for a frame. |
| dbg_variablesC | List variables under a variablesReference (from scopes or an expandable var). |
| dbg_evaluateB | Evaluate an expression in a frame. Handles reads AND function calls (e.g. 'square(v)' or 'call square(v)'). context: watch|repl|hover. |
| dbg_set_variableC | Set a variable (by container ref + name) to a new value. |
| dbg_read_memoryB | Read |
| dbg_disassembleC | Disassemble around a memory reference. |
| dbg_sourceB | Return source lines around file:line (defaults to the current stop frame). |
| dbg_raw_commandA | Run a raw gdb/lldb command via the DAP evaluate repl context. Use for the long tail no structured tool covers (e.g. 'info registers'). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/birdeclipse/gdb-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server