create_sessionLABSCO SUMMARY
Debugging the program instead of describing it.
An assistant that can set a breakpoint, step, and read the actual locals and registers is arguing from process state rather than from the source text. Concurrent sessions let a working build stay open next to the failing one.
What it is
A GDB/MI server written in Rust and exposed over MCP. Debug sessions are first-class objects: several run concurrently, each with its own breakpoints and execution state, over stdio or SSE.
What you get
- A debug session created, inspected, listed among the others, and closed
- Debugging started and stopped, execution continued, stepped into or stepped over
- Breakpoints listed, set and deleted
- Stack frames and local variables read
- Registers read, and memory read at an address
- Concurrent multi-session debugging, over stdio or SSE
Requirements
GDB on the machine, plus the mcp-server-gdb binary — a prebuilt release, a local cargo build, or nix run straight from the repository. The server address, port and GDB command timeout are configurable; SSE listens on localhost by default.
Setup effort
Build from source — git clone https://github.com/pansila/mcp_server_gdb.git
USE CASES
Finding where it actually breaks
Set a breakpoint, start debugging, and read the stack frames when it stops.
Working out why a value is wrong
Read the locals at that frame, and the registers behind them.
Walking through the failing path
Step into or step over line by line, and continue through the parts not in question.
Checking what is really in memory
Read memory at the address instead of trusting the printed value.
Comparing two builds side by side
Keep a session per build, and list them as you go.
Tidying up after a run
Delete the breakpoints you set, stop debugging, and close the session.
16 tools
Listed in project docs. Your client may show a different list.
get_sessionget_all_sessionsclose_sessionstart_debuggingstop_debuggingcontinue_executionstep_executionnext_executionget_breakpointsset_breakpointdelete_breakpointget_stack_framesget_local_variablesget_registersread_memoryBEFORE YOU INSTALL
What to know first
Tools you get
16 tools named in the project's documentation.
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
git clone https://github.com/pansila/mcp_server_gdb.git
cd mcp_server_gdb
cargo build --releaseOr skip the build: download the archive for your platform from https://github.com/pansila/mcp_server_gdb/releases/latest and unpack mcp-server-gdb
MCP Clients
Any MCP client
{
"mcpServers": {
"gdb": {
"command": "<YOUR_PATH_TO_MCP_SERVER_GDB>"
}
}
}