Back to Directory/Developer Tools

io.github.daedalus/mcp-gdbserver

MCP server for remote debugging with gdbserver

Developer ToolsPythonv0.1.1

mcp-gdbserver

MCP server for remote debugging with gdbserver - provides full debugging capabilities including process management, breakpoint control, stepping, memory inspection, and more.

PyPI Python Coverage Ruff

Install

pip install mcp-gdbserver

Usage

from mcp_gdbserver import GdbDebugger

# Create debugger instance
debugger = GdbDebugger()

# Start gdbserver to debug a program
session = debugger.start_gdbserver(port=2345, program="/bin/myapp", args=["--debug"])

# Get session info
sessions = debugger.list_sessions()

# Stop session
debugger.stop_session("session_1")

CLI

mcp-gdbserver --help

Tools

The MCP server provides 19 debugging tools organized into 4 categories:

Process Management

  • gdbserver_start - Start gdbserver to debug a program remotely
  • gdbserver_start_multi - Start gdbserver in multi-process mode
  • gdbserver_attach - Attach to a running process
  • gdbserver_list_sessions - List all active sessions
  • gdbserver_stop - Stop a debugging session

Breakpoint Control

  • gdbserver_set_breakpoint - Set a breakpoint at a location
  • gdbserver_delete_breakpoint - Delete a breakpoint

Execution Control

  • gdbserver_continue - Continue execution
  • gdbserver_step - Step one instruction (into functions)
  • gdbserver_next - Execute one instruction (over functions)
  • gdbserver_interrupt - Interrupt execution

Inspection

  • gdbserver_stack_frames - Get call stack frames
  • gdbserver_local_variables - Get local variables
  • gdbserver_list_threads - List all threads
  • gdbserver_select_thread - Switch to a thread
  • gdbserver_read_register - Read CPU registers
  • gdbserver_read_memory - Read memory contents
  • gdbserver_evaluate - Evaluate an expression
  • gdbserver_load_symbols - Load symbol file

MCP Configuration

Add to your MCP config:

{
  "mcpServers": {
    "mcp-gdbserver": {
      "command": "mcp-gdbserver",
      "env": {}
    }
  }
}

Development

git clone https://github.com/daedalus/mcp-gdbserver.git
cd mcp-gdbserver
pip install -e ".[test]"

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/

mcp-name: io.github.daedalus/mcp-gdbserver

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx mcp-gdbserver

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-daedalus-mcp-gdbserver": {
      "command": "uvx",
      "args": [
        "mcp-gdbserver"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

mcp-gdbserverpypi

Compatible MCP Clients

io.github.daedalus/mcp-gdbserver works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More