mcpField
G
Godot Forge

Godot Forge

本地服务
github.com/gregario开发工具926 周前更新

关于 Godot Forge

Godot Forge 是面向 Godot 4 项目的 MCP 服务,为编码 Agent 提供测试、文档查询、脚本与场景分析等工具。它还映射 Godot 3 到 4 的 API 变更,帮助识别过时用法。

主要功能

  1. 01运行 GUT 与 GdUnit4 测试
  2. 02查询 Godot 4 API 文档及迁移映射
  3. 03检测 GDScript 常见问题
  4. 04解析场景文件并检查问题
  5. 05获取 LSP 诊断与项目截图

适用场景

  1. 01在修改后运行并查看测试结果
  2. 02将旧版 Godot API 用法替换为 4.x 对应项
  3. 03检查脚本和场景中的错误及反模式
  4. 04查看编辑器诊断或游戏视口截图

MCP 相关

Godot Forge 作为 MCP 服务,向兼容 IDE 和编码 Agent 暴露 8 种 Godot 项目工具,包括测试、文档、分析、诊断和截图功能。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"gregario-godot-forge": {
"command": "npx",
"args": [
"-y",
"godot-forge"
],
"env": {
"GODOT_PATH": "<GODOT_PATH>"
}
}
}
}
启动命令npx -y godot-forge
需要配置的环境变量
GODOT_PATHPath to Godot 4.x binary (auto-detected if not set)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgodot-forge0.1.2

工具

8

收录的工具列表 · 更新于 2 周前

参数类型必填说明
methodstring否筛选指定的测试方法名称
timeoutnumber否超时时间(秒)(默认值:60)
frameworkenum否强制使用指定的框架(省略时自动检测)gut | gdunit4
inner_classstring否筛选指定的内部测试类
script_pathstring否筛选指定的测试脚本(例如,res://tests/test_inventory.gd)

详细介绍

Godot Forge

适用于 Godot 4 的 MCP 服务。测试运行器、API 文档、脚本分析等。

npm 版本 npm 下载量 MIT 许可证 Node.js 18+ 兼容 MCP godot-forge MCP 服务


AI 编码助手在结构上不擅长处理 GDScript。由于训练数据偏向 Godot 3,模型会臆造已弃用的 API(用 yield 代替 await、用 KinematicBody 代替 CharacterBody3D、用 export var 代替 @export var)。Godot Forge 可以解决这个问题。

8 个工具。零配置。兼容所有支持 MCP 的 IDE。

godot-forge MCP 服务

安装

npx -y godot-forge

就这么简单。Godot Forge 会自动检测 Godot 二进制文件(Steam、Homebrew、直接下载),并自动查找 project.godot。

添加到 IDE
Claude Code
claude mcp add godot-forge -- npx -y godot-forge
Cursor

添加到 .cursor/mcp.json:

{
  "mcpServers": {
    "godot-forge": {
      "command": "npx",
      "args": ["-y", "godot-forge"]
    }
  }
}
VS Code(Copilot)

添加到 .vscode/mcp.json:

{
  "servers": {
    "godot-forge": {
      "command": "npx",
      "args": ["-y", "godot-forge"]
    }
  }
}
Windsurf

添加到 ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "godot-forge": {
      "command": "npx",
      "args": ["-y", "godot-forge"]
    }
  }
}
Zed

添加到 settings.json:

{
  "context_servers": {
    "godot-forge": {
      "command": {
        "path": "npx",
        "args": ["-y", "godot-forge"]
      }
    }
  }
}
Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%/Claude/claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "godot-forge": {
      "command": "npx",
      "args": ["-y", "godot-forge"]
    }
  }
}
更多 IDE(Codex、Gemini CLI、JetBrains、Continue、Cline、Roo Code、Neovim、OpenCode、Kiro)

所有受支持 IDE 的配置代码片段,请参阅 IDE 设置指南。

工具

工具说明需要 Godot需要编辑器
godot_run_tests运行 GUT/GdUnit4 测试,获取结构化的通过/失败结果是否
godot_search_docs搜索 Godot 4 API 文档,并提供 3→4 迁移映射否否
godot_analyze_script检测 10 种 GDScript 常见陷阱(已弃用 API、耦合、重入)否否
godot_analyze_scene解析 .tscn/.tres,检测反模式和格式错误否否
godot_get_project_info渐进式展示项目结构概览否否
godot_get_diagnostics获取 Godot 语言服务器提供的 LSP 诊断信息否是
godot_run_project启动/停止项目,捕获调试输出是否
godot_screenshot将视口截图捕获为 base64 PNG是否

提示

8 个工具中有 6 个无需安装 Godot 即可使用。只有运行测试、启动项目和截屏需要 Godot 二进制文件。

功能

测试运行器

自动检测 GUT 和 GdUnit4。返回包含通过/失败数量、失败详情(包括文件路径和行号)的结构化 JSON。支持按脚本、方法或内部类筛选。

Ask your AI: "Run the water profile tests"
→ { total: 5, passed: 5, failed: 0, duration_ms: 462 }
Godot 3→4 迁移映射

AI 写出有问题的 GDScript 的头号原因。当 AI 查询已弃用的 API 时,它能立即获取正确的 Godot 4 等效项(30 多项映射,涵盖类、方法、语法和常量)。

Query: "KinematicBody"  →  "Renamed to CharacterBody3D in Godot 4"
Query: "yield"          →  "yield(obj, 'signal') → await obj.signal"
Query: "instance()"     →  "instance() → instantiate()"
脚本分析:10 个常见问题

检测游戏开发中实际遇到的每个常见问题:

#常见问题检测内容
1Godot 3→4 APIyield、connect("signal")、export var、instance()
2过于庞大的脚本超过 300 行。应拆分
3Variant 上使用 :=对 Dictionary.get() 进行类型推断会导致解析错误
4耦合过紧过多的 get_node("../../...") 引用
5信号重入状态变更之间发出信号
6误用自动加载自动加载过多、在自动加载上使用 static func
7未断开连接使用 connect(),却没有在 _exit_tree() 中清理
8_init() 时机节点加入场景树前访问节点树
9Python 风格写法列表推导式、len()、Python 导入语句
10.tres 类型字段使用自定义类名,而不是 type="Resource"
场景分析

解析 .tscn 和 .tres 文件。检测深层嵌套(>8 层)、过大的场景(>100 个节点)、缺失的脚本引用、.tres 中的 preload()、整数资源 ID 等。

LSP 诊断

连接到 Godot 内置的语言服务器(编辑器打开时会自动运行)。返回真实的编译器错误和警告(不靠猜测)。

说明

需要运行 Godot 编辑器并打开项目。其他所有工具均可在编辑器未运行时使用。

截图捕获

将游戏视口捕获为 PNG 图像。加载项目的主场景(或指定场景),等待渲染完成,并以 base64 格式返回截图,供 AI 查看。

配置

Godot 二进制文件

按以下顺序自动检测:

  1. GODOT_PATH 环境变量
  2. PATH 中的 godot / godot4
  3. Steam 安装(macOS、Windows、Linux)
  4. 平台默认位置(/Applications/Godot.app、Homebrew、Scoop、Flatpak、Snap 等)

手动指定:

export GODOT_PATH="/path/to/godot"

完整的搜索路径列表请参阅 Godot 检测。

项目目录

从当前目录开始向上查找 project.godot,自动检测项目目录。手动指定:

npx godot-forge --project /path/to/godot/project

要求

  • Node.js 18+:用于执行 npx
  • Godot 4.x:自动检测(8 个工具中有 6 个可选)
  • 任意兼容 MCP 的 IDE:Claude Code、Cursor、VS Code、Windsurf、Zed 等更多

设计原则

  • 关注结果,而非操作:每个工具都提供完整结果,而不是对原始 API 的简单封装
  • 8 个精选工具:避免 93 个工具导致的上下文臃肿(为何这很重要)
  • 渐进式呈现:先给出摘要,再按需展示详情
  • 使用 spawn(),而非 exec():避免命令注入和 Windows 引号错误
  • 提供可操作的错误信息:每条错误信息都包含 AI 可执行的建议
  • 跨平台:macOS、Windows、Linux。支持 Steam 安装和非 Steam 安装。

贡献

欢迎贡献!请参阅贡献指南。

开发
git clone https://github.com/gregario/godot-forge.git
cd godot-forge
npm install
npm run build
npm test        # 74 tests across 12 test files
本地运行
# Point your IDE at the local build
claude mcp add godot-forge-dev -- node /path/to/godot-forge/dist/index.js

路线图

请参阅 ROADMAP.md 了解计划中的功能。

阶段 2:输入模拟、运行时场景树检查、性能分析、着色器验证、导出/CI 流水线。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。