Godot调试适配器服务器

一个通过调试适配器协议(DAP)实现AI代理对Godot游戏进行交互式运行时调试的MCP服务器。

  • by TransitionMatrix
  • Go
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 TransitionMatrix/godot-dap-mcp-server

使用说明

Godot DAP MCP服务器

状态: 🚧 主动开发-第8阶段完成✅ | 文档⏳

MCP(模型上下文协议)服务器,使AI代理能够通过调试适配器协议(DAP)执行Godot游戏的交互式运行时调试。

当前能力

第1-3阶段:核心调试 (完整):

  • ✅ 通过DAP连接到Godot编辑器
  • ✅ 设置、验证和清除断点
  • ✅ 控制执行(继续、跳过、进入)
  • ✅ 会话管理

第4阶段:运行时检查 (完整):

  • ✅ 获取具有源位置的堆栈跟踪
  • ✅ 检查变量作用域(局部、成员、全局)
  • ✅ 浏览复杂对象(数组、字典、节点)
  • ✅ 在运行时评估GDScript表达式
  • ✅ Godot特定类型格式(Vector2、Color等)

第五阶段:场景启动 (完整):

  • ✅ 启动主场景、特定场景或当前编辑器场景
  • ✅ 配置调试选项(分析、冲突、导航)
  • ✅ 验证项目路径

第6-8阶段:高级和波兰语 (完整):

  • ✅ godot_pause:暂停跑步游戏
  • ✅ godot_set_variable: 可用,但由于上游Godot限制,当前已禁用
  • ✅ 稳健的错误处理:问题/上下文/解决方案错误消息
  • ✅ 路径解析:自动转换 res:// 通往绝对路径的路径
  • ✅ 超时保护:防止DAP服务器无响应挂起
  • ✅ 事件驱动架构:处理复杂的交错DAP事件

计划的功能

建筑

MCP Client (Claude Code) → stdio → MCP Server → TCP/DAP → Godot Editor → Game Instance

此服务器将Claude Code(或任何MCP客户端)连接到Godot的内置DAP服务器,从而启用AI辅助调试工作流。

架构:

  • MCP层 (internal/mcp/):基于stdio的JSONRPC 2.0通信
  • DAP客户端 (internal/dap/):Godot DAP服务器的事件驱动TCP客户端
  • 工具层 (internal/tools/):具有错误处理和路径解析功能的Godot特定MCP工具

文档

综合文档可在 docs/ 目录:

安装

用于测试/开发:

# Build from source
go build -o godot-dap-mcp-server cmd/godot-dap-mcp-server/main.go

# Run all tests
go test ./...

# Run integration tests (requires Godot 4.2.2+)
./scripts/automated-integration-test.sh

快速开始

  1. 启动Godot编辑器 与你的项目。
  2. 运行MCP服务器 (通过克劳德代码或手动)。
  3. 连接: godot_connect(project="/path/to/your/project")
  4. 设置断点: godot_set_breakpoint(file="res://player.gd", line=10)
  5. 发射: godot_launch_main_scene(project="/path/to/your/project")
  6. 调试:使用 godot_step_over, godot_get_stack_trace, godot_evaluate等等。

许可证

MIT许可证-请参阅 许可证