AI coding assistants are structurally bad at GDScript. Models trained on data skewed towards Godot 3 hallucinate deprecated APIs — yield instead of await, KinematicBody instead of CharacterBody3D, export var instead of @export var. Godot Forge fixes this.
8 tools. Zero config. Works with every MCP-compatible IDE.
Install
npx -y godot-forgeThat's it. Godot Forge auto-detects your Godot binary (Steam, Homebrew, direct download) and finds your project.godot automatically.
Add to your IDE
claude mcp add godot-forge -- npx -y godot-forgeAdd to .cursor/mcp.json:
{
"mcpServers": {
"godot-forge": {
"command": "npx",
"args": ["-y", "godot-forge"]
}
}
}Add to .vscode/mcp.json:
{
"servers": {
"godot-forge": {
"command": "npx",
"args": ["-y", "godot-forge"]
}
}
}Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"godot-forge": {
"command": "npx",
"args": ["-y", "godot-forge"]
}
}
}Add to settings.json:
{
"context_servers": {
"godot-forge": {
"command": {
"path": "npx",
"args": ["-y", "godot-forge"]
}
}
}
}Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%/Claude/claude_desktop_config.json (Windows):
{
"mcpServers": {
"godot-forge": {
"command": "npx",
"args": ["-y", "godot-forge"]
}
}
}See IDE Setup Guide for configuration snippets for all supported IDEs.
Tools
Tool | Description | Needs Godot | Needs Editor |
| Run GUT/GdUnit4 tests, get structured pass/fail results | Yes | No |
| Search Godot 4 API docs with 3→4 migration mapping | No | No |
| Detect 10 GDScript pitfalls (deprecated API, coupling, re-entrancy) | No | No |
| Parse .tscn/.tres, detect antipatterns and format errors | No | No |
| Project structure overview with progressive disclosure | No | No |
| LSP diagnostics from Godot's language server | No | Yes |
| Launch/stop project, capture debug output | Yes | No |
| Capture viewport screenshot as base64 PNG | Yes | No |
6 of 8 tools work without Godot installed. Only test running, project launching, and screenshots need the binary.
Features
Test Runner
Auto-detects GUT and GdUnit4. Returns structured JSON with pass/fail counts, failure details with file paths and line numbers. Supports filtering by script, method, or inner class.
Ask your AI: "Run the water profile tests"
→ { total: 5, passed: 5, failed: 0, duration_ms: 462 }Godot 3→4 Migration Mapping
The #1 reason AI writes broken GDScript. When your AI queries a deprecated API, it gets the correct Godot 4 equivalent instantly — 30+ mappings covering classes, methods, syntax, and constants.
Query: "KinematicBody" → "Renamed to CharacterBody3D in Godot 4"
Query: "yield" → "yield(obj, 'signal') → await obj.signal"
Query: "instance()" → "instance() → instantiate()"Script Analysis — 10 Pitfalls
Every pitfall detected from real game development:
# | Pitfall | What It Catches |
1 | Godot 3→4 API |
|
2 | Giant scripts | Over 300 lines — should be split |
3 |
| Type inference on |
4 | Tight coupling | Excessive |
5 | Signal re-entrancy | Signal emitted between state changes |
6 | Autoload misuse | Too many autoloads, |
7 | Missing disconnect |
|
8 |
| Node tree access before node is in tree |
9 | Python-isms | List comprehensions, |
10 | .tres type field | Custom class name instead of |
Scene Analysis
Parses .tscn and .tres files. Detects deep nesting (>8 levels), oversized scenes (>100 nodes), missing script references, preload() in .tres, integer resource IDs, and more.
LSP Diagnostics
Connects to Godot's built-in language server (runs automatically when the editor is open). Returns real compiler errors and warnings — no guesswork.
Requires the Godot editor to be running with your project open. All other tools work without the editor.
Screenshot Capture
Captures the game viewport as a PNG image. Loads the project's main scene (or a specified scene), waits for rendering, and returns the screenshot as base64 for the AI to see.
Configuration
Godot Binary
Auto-detected in this order:
GODOT_PATHenvironment variablegodot/godot4in PATHSteam installation (macOS, Windows, Linux)
Platform defaults (
/Applications/Godot.app, Homebrew, Scoop, Flatpak, Snap, etc.)
Override manually:
export GODOT_PATH="/path/to/godot"See Godot Detection for the full list of searched paths.
Project Directory
Auto-detected by walking up from the current directory to find project.godot. Override:
npx godot-forge --project /path/to/godot/projectRequirements
Node.js 18+ — for
npxexecutionGodot 4.x — auto-detected (optional for 6 of 8 tools)
Any MCP-compatible IDE — Claude Code, Cursor, VS Code, Windsurf, Zed, and more
Design Principles
Outcomes, not operations — Each tool delivers a complete result, not raw API wrapping
8 curated tools — No 93-tool context bloat (why this matters)
Progressive disclosure — Summaries first, details on demand
spawn()— No command injection, no Windows quoting bugsActionable errors — Every error includes a suggestion the AI can act on
Cross-platform — macOS, Windows, Linux. Steam and non-Steam installs.
Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Bug reports — Open an issue
Feature requests — Start a discussion
Pull requests — Fork, branch, test, PR
Development
git clone https://github.com/gregario/godot-forge.git
cd godot-forge
npm install
npm run build
npm test # 74 tests across 12 test filesRunning locally
# Point your IDE at the local build
claude mcp add godot-forge-dev -- node /path/to/godot-forge/dist/index.jsRoadmap
See ROADMAP.md for planned features.
Phase 2 — Input simulation, runtime scene tree inspection, performance profiling, shader validation, export/CI pipeline.