项目简介

GDB MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 AI 助手提供与 GDB 调试器交互的标准接口。通过该服务器,AI 助手可以执行各种 GDB 命令,从而实现智能化的代码调试和分析,例如设置断点、检查内存、查看寄存器等。

主要功能点

  • GDB 进程管理:能够发现并附加到正在运行的 GDB 进程,支持多架构、多主机和远程调试场景。
  • MCP 协议支持:使用 FastMCP 库实现 MCP 协议,提供标准化的 AI 工具接口,易于与 AI 助手集成。
  • GDB 命令执行:支持通过简单的函数调用执行常见的 GDB 调试操作,例如设置断点、单步执行、检查内存、查看寄存器等。
  • 多平台支持:支持 macOS 和 Linux 平台,在 macOS 上提供 iTerm2 和 Terminal.app 的集成,Linux 上通过 TTY 设备文件进行通信。
  • Cursor AI 集成:可以与 Cursor AI 编辑器集成,提供 AI 辅助调试功能。

安装步骤

  1. 克隆仓库

    git clone https://github.com/yywz1999/gdb-mcp-server.git
    cd gdb-mcp-server
  2. 安装依赖

    pip install -r requirements.txt

服务器配置

MCP 客户端需要配置 MCP 服务器的启动命令以建立连接。以下是 GDB MCP Server 的配置信息示例(JSON 格式),通常在 MCP 客户端的插件配置文件中使用:

{
  "server name": "gdb-mcp-server",
  "command": "python3",
  "args": ["mcp_server.py"]
}

参数注释:

  • 'server name': 服务器的名称,可以自定义,用于在客户端识别和管理多个 MCP 服务器连接。
  • 'command': 启动 MCP 服务器的命令,这里使用 'python3' 来运行 Python 脚本。
  • 'args': 启动命令的参数列表,这里指定运行 'mcp_server.py' 脚本。

注意:

  • 请确保你的系统已安装 Python 3 和 pip,并且 'python3' 命令指向 Python 3 解释器。
  • 根据你的实际环境,可能需要调整 'command' 和 'args' 字段,例如指定 Python 解释器的完整路径。
  • 如果需要在 HTTP 模式下运行服务器,可以添加 '--transport http' 参数到 'args' 列表中,例如:'"args": ["mcp_server.py", "--transport", "http"]'。

基本使用方法

  1. 启动服务器

    在仓库根目录下,运行以下命令启动 GDB MCP Server:

    ./run_mcp.sh

    或者

    python3 mcp_server.py

    服务器默认使用 stdio 传输协议。如果需要使用 HTTP 协议,可以使用以下命令启动:

    python3 mcp_server.py --transport http
  2. 使用 MCP 客户端连接服务器

    配置 MCP 客户端(例如 Cursor AI 或 'gdb_cli_client.py'),使其连接到正在运行的 GDB MCP Server。客户端将通过 MCP 协议与服务器通信,执行 GDB 调试操作。

    例如,使用 'gdb_cli_client.py' 命令行客户端:

    python3 gdb_cli_client.py find
    python3 gdb_cli_client.py attach <PID>  #  <PID> 替换为 GDB 进程的 PID
    python3 gdb_cli_client.py break main
    python3 gdb_cli_client.py cmd continue

    对于 Cursor AI 等 MCP 客户端,请按照其文档配置和使用 GDB MCP 扩展。

信息

分类

开发者工具