S
smadi0x86/MDB-MCP
Debug a binary with GDB or LLDB
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Install & config
Client config (built from the install command this repo gives)
{
"mcpServers": {
"smadi0x86-mdb-mcp": {
"command": "uvx",
"args": ["--from", "git+https://github.com/smadi0x86/MDB-MCP", "mdb-mcp"]
}
}
}Parsed from the README we fetched on 2026-11-05; we have not executed it.
command/args come from the install command the repository states. When it is ambiguous, the project README wins.
VS Code (.vscode/mcp.json - the key is servers)
{
"servers": {
"smadi0x86-mdb-mcp": {
"command": "uvx",
"args": ["--from", "git+https://github.com/smadi0x86/MDB-MCP", "mdb-mcp"]
}
}
}Same server, but VS Code keeps it under <code>servers</code>.
Claude Code (command line)
claude mcp add --transport stdio smadi0x86-mdb-mcp -- uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp
Claude Code does not read a config file; add the server with this command.
Key names differ by client: Clients & CLI
- Source
- collected from the abordage/awesome-mcp list · type: MCP server
- Harvest history
- first seen 2026-11-05 · last seen 2026-11-14 · seen 10× · listed by 10 sources
- Score
- score 1,003 · 10 sources · mcp
- Install
uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp
FAQ (answers come from our records)
How do I install it?
The repository provides this install command:
uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp. It comes from the repository itself; we cannot guarantee it runs as-is in your client.Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
first catalogued 2026-11-05;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.
# MDB-MCP
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
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.
## Install
You need uv and at least one debugger:
bash
# 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:
bash
claude mcp add mdb -- uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp
For Claude Desktop, Cursor or Windsurf:
json
"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
debuggerstatus which debuggers are usable, and the open sessions
debuggerstart start a gdb or lldb session, optionally loading a program
debuggercommand run any gdb or lldb command
debuggerinterrupt pause a running program, like Ctrl-C
debuggerterminate 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
bash
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:
json
"env": {
"MDBGDBPATH": "gdb-multiarch",
"MDBLLDBPATH": "/opt/homebrew/opt/llvm/bin/lldb"
## Troubleshooting
If LLDB shows up as unavailable, debuggerstatus 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/ptracescope. A value of 1 only allows debugging child
so the assistant can set breakpoints, run your program, read memory and walk the
stack the same way you would.
## Install
You need uv and at least one debugger:
bash
# 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:
bash
claude mcp add mdb -- uvx --from git+https://github.com/smadi0x86/MDB-MCP mdb-mcp
For Claude Desktop, Cursor or Windsurf:
json
"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
debuggerstatus which debuggers are usable, and the open sessions
debuggerstart start a gdb or lldb session, optionally loading a program
debuggercommand run any gdb or lldb command
debuggerinterrupt pause a running program, like Ctrl-C
debuggerterminate 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
bash
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:
json
"env": {
"MDBGDBPATH": "gdb-multiarch",
"MDBLLDBPATH": "/opt/homebrew/opt/llvm/bin/lldb"
## Troubleshooting
If LLDB shows up as unavailable, debuggerstatus 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/ptracescope. A value of 1 only allows debugging child
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/smadi0x86-mdb-mcp/)
- Source
- awesome · https://github.com/smadi0x86/MDB-MCP
- Browse by field
- MCP servers
- Listed by
- 10 independent sources
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.