Back to MCP directory
publicPublicdnsLocal runtime

lldb-mcp

LLDB-MCP是一个将LLDB调试器与Claude的MCP协议集成的工具,实现AI辅助调试功能

article

README

🚀 LLDB - MCP

LLDB - MCP 是一款将 LLDB 调试器与 Claude 的模型上下文协议 (MCP) 集成的工具,借助它,Claude 可直接启动、控制并与 LLDB 调试会话交互,实现 AI 辅助调试工作流,极大提升调试效率。

🚀 快速开始

安装并配置完成后,您就能通过 Claude 自然语言进行 LLDB 调试。

✨ 主要特性

  • 创建和管理多个 LLDB 调试会话。
  • 加载可执行文件并附加到运行中的进程。
  • 加载核心转储文件以进行故障排除分析。
  • 执行任意 LLDB 命令。
  • 精细控制程序执行。
  • 检查内存和反编译。
  • 检查线程和堆栈帧。

该工具还提供了一套全面的命令集来处理 LLDB,包括:

  • 启动和管理多个 LLDB 会话。
  • 加载可执行文件进行调试。
  • 设置断点和观察点。
  • 控制程序执行。
  • 检查内存、寄存器和变量。
  • 分析堆栈跟踪和程序状态。

📦 安装指南

  1. 克隆仓库:

    git clone https://github.com/stass/lldb-mcp.git
    cd lldb-mcp
    
  2. 安装依赖项:

    pip install mcp
    
  3. 配置 Claude 使用 LLDB - MCP 服务器:

    • 打开 Claude 桌面应用程序配置。
    • 将以下内容添加到您的 MCP 配置中:
    "mcpServers": {
      "lldb-mcp": {
        "command": "python3",
        "args": ["/path/to/lldb-mcp/lldb_mcp.py"],
        "disabled": false
      }
    }
    

💻 使用示例

基础用法

安装并配置完成后,您可以通过 Claude 自然语言进行 LLDB 调试。

高级用法

  • lldb_command:当需要执行没有专用函数的 LLDB 命令时使用。
  • 其他具体命令请参考支持的命令部分。

📚 详细文档

调试技巧

  • 使用 --debug 标志启动服务器以获得详细日志。
  • 每个会话都有一个唯一的 ID - 确保在执行命令时使用正确的 ID。
  • 会话会在服务器关闭时自动清理。

要求

  • Python 3.7+。
  • 系统上安装了 LLDB。
  • 带有 MCP 支持的 Claude 桌面应用程序。

故障排除

  • 如果 LLDB 命令超时,请检查 LLDB 是否正确安装。
  • 验证开始新会话时的路径。
  • 检查附加进程时的权限问题。
  • 如果命令执行不正确,请查看调试日志。

查看演示

在这里实时查看自动调试缓冲区溢出:https://x.com/full_duplex/status/1904770477698277847

截图

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client