mcpField
L
Lldb_mcp

Lldb_mcp

Local
github.com/stableversionDeveloper Tools2Updated 76w ago

About Lldb_mcp

Lldb_mcp connects an MCP client to an active LLDB session, exposing debugger commands through two tools. It captures command output directly and keeps the tool interface small for debugging and reverse-engineering work.

Key features

  1. 01Two commands: lldb_init and lldb
  2. 02Captures LLDB command output
  3. 03Returns command output and errors
  4. 04Blocks chained commands

Use cases

  1. 01Run LLDB commands from an MCP client
  2. 02Inspect debugger output without manual copying

MCP support

Exposes an active LLDB session to MCP clients through the lldb_init and lldb tools. The server must be started manually within an LLDB session.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

lldb_mcp

A proper, simple lldb mcp server with minimal dependencies and all functionality! There are only two commands lldb_init and lldb, no need to clutter your tools. Works remarkably well with o4-mini and Gemini 2.5 Pro. You remain fully in control.

The output is automagically captured, no need to copy paste.

Setup

git clone https://github.com/stableversion/lldb_mcp
cd lldb_mcp && python3 -m venv venv && source venv/bin/activate && pip3 install fastmcp
{
  "mcpServers": {
    "lldb": {
      "command": "/path/to/ldb_mcp/venv/bin/python",
      "args": ["/path/to/ldb_mcp/lldb_mcp.py"]
    }
  }
}
(lldb) command script import /path/to/lldb_mcp/lldb_server.py

Architecture

The entire codebase is less than 200 lines of code, because:

  • Synchronous LLDB: Calling debugger.SetAsync(False) makes HandleCommand block and capture all output directly. This avoids complex event listeners (SBListener) and polling.
  • Simple Controller: The LLDBController just runs commands via HandleCommand and returns the full output/error it receives.
  • Standard Libraries: Uses Python's built-in socketserver and json

Safety

lldb can execute ANY arbitrary commands, it should be prevented

  • You have to start the server in a lldb session manually
  • Some commands are blacklisted, check lldb_server.py
  • Chaining of commands is not allowed (o4-mini really likes to)

Notes

  • o4 mini has a tendency to hallucinate --address in memory commands.
  • Some commands "succeeded" without output, this is confusing for llms, so it returns "Executed successfully" instead.
  • "Continue" can run indefinitely until it hits a breakpoint, meaning the mcp can wait forever for output (skip and continue is your friend)

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.