Godot Forge is an MCP server for Godot 4 that provides AI coding assistants with accurate GDScript support, project analysis, testing, and documentation tools. It auto-detects your Godot binary and project directory, works cross-platform (macOS, Windows, Linux), and is compatible with all MCP-supporting IDEs.
Run Tests (
godot_run_tests): Execute GUT or GdUnit4 test suites headlessly with structured pass/fail results (file paths, line numbers). Supports filtering by script, method, or inner class.Search API Docs (
godot_search_docs): Search Godot 4.x API documentation and automatically map deprecated Godot 3 APIs to their Godot 4 equivalents (e.g.,KinematicBody→CharacterBody3D,yield→await).Analyze Scripts (
godot_analyze_script): Detect 10 common GDScript pitfalls including Godot 3→4 API misuse, giant scripts, type inference bugs, tight coupling, signal re-entrancy, autoload misuse, missing disconnects,_init()timing issues, and Python-isms.Analyze Scenes (
godot_analyze_scene): Parse.tscn/.tresfiles to detect antipatterns like deep nesting (>8 levels), oversized scenes (>100 nodes), missing script references, and format errors.Get LSP Diagnostics (
godot_get_diagnostics): Retrieve real compiler errors and warnings from Godot's built-in language server for a file or the entire project (requires Godot editor to be running).Get Project Info (
godot_get_project_info): Retrieve a project overview including name, Godot version, scenes, scripts, autoloads, addons, and directory tree, with summary or full detail levels.Run Project (
godot_run_project): Launch or stop a Godot project and capture debug output (stdout/stderr with timestamps), optionally targeting a specific scene.Take Screenshots (
godot_screenshot): Capture a base64-encoded PNG screenshot of the running game viewport, optionally launching a specific scene.
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()notexec(): 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.