一个支持AI辅助调试的GDB MCP(模型上下文协议)服务器。该服务器允许AI代理和其他工具通过MCP协议与GDB进行交互。
注意:该项目目前处于开发阶段。我们欢迎社区成员提供意见和反馈,帮助我们改进这个工具。
项目地址: https://github.com/yywz1999/gdb-mcp-server
该项目包含一个演示视频,展示了使用GDB MCP服务器进行附加调试的完整工作流程:
https://github.com/user-attachments/assets/dbb5c2dc-1bc9-4a19-86d7-c967725bc145
观看此视频可以帮助您更直观地了解GDB MCP服务器如何简化多架构和远程调试场景。
git clone https://github.com/yywz1999/gdb-mcp-server.git
cd gdb-mcp-server
python3 -m pip install -r requirements.txt
python3 ~/MCP_server/gdb-mcp-server/mcp_server.py
结果显示如下图所示,表示环境正常
GDB MCP服务器使用以下技术实现对GDB的控制和通信:
MCP协议实现:使用FastMCP库提供符合模型上下文协议规范的工具接口
多种通信策略:
进程发现:自动搜索系统中运行的GDB进程,无需用户手动指定进程ID
克隆仓库:
git clone https://github.com/yywz1999/gdb-mcp-server.git
cd gdb-mcp-server
安装依赖:
python3 -m pip install -r requirements.txt
启动服务器:
python3 mcp_server.py
使用MCP协议通过服务器与GDB进行交互。服务器提供了以下实用功能:
sys_find_gdb_processes - 查找所有正在运行的GDB进程sys_attach_to_gdb - 连接到GDB进程sys_start_gdb_with_remote - 启动GDB并连接到远程目标gdb_execute_command - 执行任何GDB命令gdb_set_breakpoint - 设置断点gdb_delete_breakpoint - 删除断点gdb_step - 单步执行gdb_next - 执行到下一行gdb_finish - 执行到函数返回gdb_continue - 继续执行gdb_get_registers - 获取寄存器值gdb_examine_memory - 检查内存gdb_get_stack - 获取堆栈跟踪gdb_get_locals - 获取局部变量gdb_disassemble - 反汇编代码gdb_connect_remote - 连接到远程调试目标在macOS上使用GDB MCP服务器时,建议:
本项目采用MIT许可证 - 详情见LICENSE文件