ClaudeCodeMod

All shelves / MCP servers

GDB MCP Server

smadi0x86/MDB-MCP · 74 stars · Python · GPL-3.0

MCP server Multi Debugger MCP server that enables LLMs to interact with GDB and LLDB for binary debugging and analysis.

Install

The repo has no one-line install. Follow its README.

Open the repo

Files

README.md

MDB-MCP

CI

An MCP server that gives your AI assistant a real debugger. It drives GDB or LLDB, so the assistant can set breakpoints, run your program, read memory and walk the stack the same way you would.

Finding a NULL pointer dereference with mdb-mcp

Install

You need uv and at least one debugger:

# Debian / Ubuntu
sudo apt install gdb lldb python3-lldb

# macOS (LLDB ships with the Xcode command line tools)
xcode-select --install

Then add the server to your client. For Claude Code:

claude mcp add mdb -- uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp

For Claude Desktop, Cursor or Windsurf:

{
  "mcpServers": {
    "mdb": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/smadi0x86/MDB-MCP", "mdb-mcp"]
    }
  }
}

VS Code takes the same entry under "servers" in .vscode/mcp.json, with "type": "stdio" added. On Windows with WSL, set "command": "wsl" and put the full path to uvx at the start of args.

Tools

debugger_status      which debuggers are usable, and the open sessions
debugger_start       start a gdb or lldb session, optionally loading a program
debugger_command     run any gdb or lldb command
debugger_interrupt   pause a running program, like Ctrl-C
debugger_terminate   kill the program and close the session

Everything else is a normal debugger command, so break main, bt, x/16gx $sp and frame variable all work. Commands that resume the program wait for it to stop (10 seconds by default, adjustable per call). If it is still running after that, the assistant can interrupt it or keep waiting.

GDB is the default on Linux and LLDB on macOS. Either can be picked explicitly. GDB loads your ~/.gdbinit, so pwndbg and GEF keep working.

Try it

make -C examples

Then ask your assistant why examples/crash segfaults (give it the absolute path).

Configuration

To use a debugger other than the one on your PATH, set it in the server's env in your client config:

"env": {
  "MDB_GDB_PATH": "gdb-multiarch",
  "MDB_LLDB_PATH": "/opt/homebrew/opt/llvm/bin/lldb"
}

Troubleshooting

If LLDB shows up as unavailable, debugger_status tells you why. On Debian and Ubuntu it is usually a missing python3-lldb, which has to match your LLDB version.

The program can't read from your keyboard. Feed it a file instead:

run < input.txt                    # gdb
process launch -i input.txt        # lldb

If attaching to a running process fails on Linux, check /proc/sys/kernel/yama/ptrace_scope. A value of 1 only allows debugging child processes.

Security

A debugger can run shell commands (shell, python, platform shell, script), and the programs you debug run as your user. Only debug code you trust, and keep tool approval on for debugger_command unless you are in a sandbox.

Development

uv sync
uv run pytest                      # tests for a missing debugger are skipped
uv run ruff check . && uv run ruff format --check .

The demo above is recorded from real tool calls with demo/record.py. See the top of that file for how to regenerate it.

License

GPL-3.0

MseeP.ai Security Assessment Badge

Facts

Kind
MCP server
Repo
smadi0x86/MDB-MCP
Group
Uncategorized
Stars
74
License
GPL-3.0
Language
Python
Last push
2026-10-07
Forks
9
Topics
debugging, gdb, mcp, mcp-server

More on this shelf

  1. 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
  2. 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
  3. 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
  4. 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
  5. 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  6. 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k