GDB调试分析工具

一个用于实时流式传输和分析GDB输出的工具,提供结构化解析和人类可读的调试会话解释。

  • by AYush867-pwn
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 AYush867-pwn/mcp-gdb-tail-server

使用说明

AIDebugger

一个模型上下文协议(MCP)服务器,提供用于分析GDB(GNU调试器)输出并将其流式传输到Claude Desktop的工具。

目的

此项目使Claude Desktop能够:

  • 通过WebSocket实时流式传输GDB输出
  • 使用结构化解析分析GDB输出
  • 为调试会话提供人类可读的解释
  • 直接访问GDB输出文件

📁 项目结构

AIDebugger/
├── start_gdb_streamer.sh      # Entry point for Claude Desktop
├── mcp_entrypoint.py          # Main MCP server (provides 5 tools)
├── mcp_ws_tail_server.py      # WebSocket server (streams gdb.txt)
├── gdb.txt                    # GDB output file (monitored)
├── .ws_port                   # Temp file (stores WebSocket port)
└── env/                       # Python virtual environment

可用工具

  1. gdb尾部 -获取实时流媒体的WebSocket URI
  2. gdb读取文件 -阅读gdb.txt内容
  3. gdb文件信息 -获取文件统计信息
  4. gdb清除文件 -清除gdb.txt(确认后)
  5. gdb解释 -分析并解释GDB输出

设置

  1. 安装依赖项:

    python3 -m venv env
    source env/bin/activate
    pip install websockets python-dotenv flask openai
    
  2. 配置Claude桌面: 编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

    {
      "mcpServers": {
        "gdb-streamer": {
          "command": "/bin/bash",
          "args": ["/path/to/AIDebugger/start_gdb_streamer.sh"],
          "env": {
            "FILE_PATH": "/path/to/AIDebugger/gdb.txt",
            "WS_PORT": "8765"
          }
        }
      }
    }
    
  3. 使用输出重定向启动GDB:

    gdb ./program 2>&1 | tee gdb.txt
    
  4. 重新启动克劳德桌面 并启用“gdb流光器”连接器

用法

在Claude Desktop中,您现在可以:

  • “使用gdb解释来分析gdb输出”
  • “获取gdb.txt的文件信息”
  • “阅读gdb.txt的最后50行”
  • “获取用于流式传输的WebSocket URI”

文档

看 建筑.md 有关以下内容的详细文档:

  • 系统架构
  • 文件描述
  • 数据流
  • 配置选项
  • 故障排除

配置

创建一个 .env 文件(可选):

FILE_PATH=./gdb.txt
WS_HOST=0.0.0.0
WS_PORT=8765
SEND_INTERVAL=0.0
READ_CHUNK_DELAY=0.2

许可证

麻省理工学院