Quick Start =========== Prerequisites ------------- - Python 3.10+ - `LLDB `_ with `pwndbg `_ installed - An MCP-compatible AI client (e.g. Claude Desktop, Claude Code) Installation ------------ Clone the repository and install dependencies with `uv `_: .. code-block:: bash git clone https://github.com/Micro-Evaluation-Group/pwndbg-lldb-mcp.git cd pwndbg-lldb-mcp uv sync This creates a ``.venv/`` with all dependencies installed. The MCP server must be run using this venv's Python binary so that ``mcp`` and other dependencies are available. If you're already running inside the activated venv, you can use ``python`` directly; otherwise, use the full path to the venv binary. Claude Code ----------- Add the MCP server to your project, using the venv's Python binary: .. code-block:: bash claude mcp add pwndbg-lldb -- /path/to/pwndbg-lldb-mcp/.venv/bin/python /path/to/pwndbg-lldb-mcp/pwndbg_lldb_mcp.py Or add it globally (available in all projects): .. code-block:: bash claude mcp add --scope user pwndbg-lldb -- /path/to/pwndbg-lldb-mcp/.venv/bin/python /path/to/pwndbg-lldb-mcp/pwndbg_lldb_mcp.py Claude Desktop -------------- Add to ``~/Library/Application Support/Claude/claude_desktop_config.json``, pointing to the venv's Python binary: .. code-block:: json { "mcpServers": { "pwndbg-lldb": { "command": "/path/to/pwndbg-lldb-mcp/.venv/bin/python", "args": ["/path/to/pwndbg-lldb-mcp/pwndbg_lldb_mcp.py"] } } } Usage ----- Once connected, the AI assistant can: 1. **Start a session** — ``pwndbg_start`` spawns an LLDB+pwndbg process 2. **Load a binary** — ``pwndbg_load`` loads an executable for analysis 3. **Set breakpoints** — ``pwndbg_break`` sets breakpoints by symbol or address 4. **Run and step** — ``pwndbg_run``, ``pwndbg_step``, ``pwndbg_next``, etc. 5. **Inspect state** — registers, memory, stack, heap, disassembly, and more 6. **Exploit development** — ROP gadgets, cyclic patterns, patching, shellcode All 146 tools are documented in the :doc:`api` reference.