Skip to main content

The definitive MCP for AI-assisted Godot development

Reason this release was yanked:

security

Project description

GodotIQ

The only Godot MCP that understands your game, not just your files.

GodotIQ is a Model Context Protocol (MCP) server for Godot 4.x that gives AI agents (Claude Code, Cursor, Windsurf) spatial intelligence, code understanding, and runtime control. 35 tools across 9 categories — from smart object placement to signal flow tracing to automated UI mapping.

Other Godot MCPs are API wrappers. GodotIQ is an intelligence layer.


What It Does

Before GodotIQ:
  Agent: "I'll move this shelf to (2, 0, 0)"
  Result: Inside a wall. 10 iterations to fix.

After GodotIQ:
  Agent calls placement → knows empty slots, walls, navmesh, nearby objects
  Agent calls node_ops(validate=true) → validated placement, first try
  Agent calls camera + screenshot → visually confirms result
  Done.

Key Capabilities No Other MCP Has

  • Spatial Intelligencescene_map, placement, spatial_audit. Understands 3D space: distances, walls, navmesh, empty slots, scale consistency
  • Signal Flow Tracingtrace_flow. "What happens when the player accepts an order?" → complete chain across 8 files with failure points
  • Code Understandingdependency_graph, signal_map, impact_check. Knows who calls who, what breaks if you change a function
  • Smart Placementplacement finds designer-intended Marker3D slots first (95% confidence), falls back to grid search with constraint solving
  • Runtime UI Mappingui_map. Maps every button, label, and input with screen positions, text content, touch target validation
  • Visual Verificationcamera + screenshot (editor viewport). Agent looks at what it changed before moving on
  • Convention Enforcementvalidate checks and auto-fixes GDScript conventions after every edit
  • Project Memoryproject_summary, file_context. Agent re-primes instantly after context compaction

35 Tools in 9 Categories

Category Tools Addon Required
Bridge (runtime) screenshot, scene_tree, run, input, node_ops, script_ops, file_ops, exec, state_inspect, perf_snapshot, save_scene, camera, watch, undo_history, nav_query, build_scene, check_errors, verify_motion YES
Spatial (3D intelligence) scene_map, placement, spatial_audit Optional
Code (analysis) dependency_graph, signal_map, impact_check, validate NO
Animation animation_info, animation_audit NO
Flow & Debug trace_flow NO
Assets asset_registry, suggest_scale NO
Memory project_summary, file_context NO
UI ui_map YES
Navigation nav_query YES

17 tools work from filesystem alone (no Godot running). 18 tools need the lightweight GDScript addon.


Setup

1. Install GodotIQ

Direct install:

pip install godotiq

For AI clients (recommended): No manual install needed. Configure the MCP client to use uvx which auto-installs on first use (see step 3).

2. Install the Godot Addon

godotiq install-addon /path/to/your/godot/project

This copies:

  • The GDScript addon files to <project>/addons/godotiq/
  • GODOTIQ_RULES.md to the project root (AI assistant rules for Godot development)

Use --dry-run to preview what will be copied.

Then enable the addon in Godot via Project Settings → Plugins → GodotIQ → Enable.

The addon is pure GDScript (~500 lines, no compilation). It starts a WebSocket server on port 6007 for bidirectional communication with the MCP server.

3. Configure Your AI Client

Create .mcp.json in your Godot project root:

{
  "mcpServers": {
    "godotiq": {
      "command": "uvx",
      "args": ["godotiq"],
      "env": {
        "GODOTIQ_PROJECT_ROOT": "/path/to/your/godot/project"
      }
    }
  }
}

Then launch Claude Code from your project directory:

cd /path/to/your/godot/project
claude

Claude Code reads .mcp.json automatically and connects to GodotIQ with 35 tools available.

4. (Optional) Project Configuration

Create .godotiq.json in your Godot project root for project-specific settings:

{
  "version": 2,
  "project": {
    "name": "My Game",
    "engine": "godot_4",
    "type": "3d"
  },
  "disabled_tools": [],
  "protected_files": ["project.godot", ".godot/**", "*.import"],
  "conventions": {
    "class_name_suffix": "Class",
    "signal_bus": "Events",
    "require_type_hints": true
  },
  "asset_origins": {
    "meshy": {
      "path_patterns": ["assets/models/printers/**"],
      "default_scale": [0.3, 0.3, 0.3]
    }
  },
  "server": {
    "default_detail": "normal",
    "screenshot_default_scale": 0.25
  }
}

Architecture

godotiq/
├── src/godotiq/
│   ├── server.py              # MCP server (FastMCP, stdio transport)
│   ├── config.py              # .godotiq.json configuration loader
│   ├── session.py             # Project session management
│   ├── parsers/               # .tscn, .gd file parsers (zero external deps)
│   │   ├── tscn_parser.py     # Godot scene format parser
│   │   ├── gd_parser.py       # GDScript parser (signals, deps, functions)
│   │   ├── scene_resolver.py  # Instance expansion, world-space transforms
│   │   └── project_index.py   # Full project scan, cross-reference maps
│   ├── cache/                 # Hash-based file cache
│   └── tools/                 # 9 categories, 35 tools
│       ├── bridge/            # Runtime: screenshot, run, input, node_ops, exec...
│       ├── spatial/           # scene_map, placement, spatial_audit
│       ├── code/              # dependency_graph, signal_map, impact_check, validate
│       ├── animation/         # animation_info, animation_audit
│       ├── flow/              # trace_flow
│       ├── assets/            # asset_registry, suggest_scale
│       ├── memory/            # project_summary, file_context
│       ├── ui/                # ui_map
│       └── navigation/        # nav_query
├── godot-addon/
│   └── addons/godotiq/
│       ├── plugin.cfg
│       ├── godotiq_plugin.gd      # EditorPlugin entry point
│       ├── godotiq_server.gd      # WebSocket server (editor-side)
│       ├── godotiq_runtime.gd     # Autoload (game-side, screenshots + input)
│       └── godotiq_debugger.gd    # EditorDebuggerPlugin (error capture)
├── tests/                     # 1100+ automated tests
│   ├── fixtures/              # Real .tscn/.gd files from Godot projects
│   └── test_*/                # Test suites per category
└── .godotiq.json              # Example project configuration

Communication Stack

AI Agent ←(stdio)→ Python MCP Server ←(WebSocket:6007)→ GDScript Addon in Godot Editor
                   (intelligence layer)                    (runtime bridge)
                                                              ↕
                                                    EngineDebugger (IPC)
                                                              ↕
                                                    Running Game (autoload)
  • Python → Editor: WebSocket for bidirectional real-time communication
  • Editor → Game: EngineDebugger native IPC for screenshots, input simulation, state inspection
  • Intelligence layer: All parsing, spatial reasoning, dependency analysis, convention validation runs in Python — works without Godot open

Three-Layer Parser Architecture

  1. Layer 1 — Raw Parser: Reads single .tscn/.gd file, extracts structure
  2. Layer 2 — Scene Resolver: Expands instances recursively, calculates world-space transforms
  3. Layer 3 — Project Index: Scans all files, builds cross-reference maps (signal wiring, autoloads, asset usage)

Token Optimization

Every tool accepts detail: "brief" | "normal" | "full":

  • brief → 5-15 lines, key facts only. Use for routine checks.
  • normal → Default. Structured data for most operations.
  • full → Complete dump with metadata. Use for deep debugging.

This cuts response sizes 50-80% for routine operations, saving context window space.


Development

# Run all tests
pytest tests/ -v

# Run specific category
pytest tests/test_tools/ -v
pytest tests/test_parsers/ -v

# Run with coverage
pytest tests/ --cov=godotiq -v

Test Stats

  • 1100+ automated tests
  • Real .tscn/.gd fixtures from production Godot projects
  • Parser tests, tool tests, integration tests, config tests

Comparison

Capability GodotIQ (35 tools) GDAI (27 tools, $20) tomyud1 (32 tools, free)
Spatial intelligence ✅ scene_map + placement + validation
Signal flow tracing ✅ trace_flow
Code understanding ✅ deps + signals + impact
Convention validation ✅ auto-fix
Project memory ✅ survives compaction
UI mapping ✅ ui_map
Visual verification ✅ camera + editor screenshot ❌ (editor screenshot only)
Token optimization ✅ 3 detail levels
Works without addon ✅ 17 tools
Open source ❌ (C++ binary)
Telemetry Zero PostHog Zero
Automated tests 1100+ Unknown 0

License

MIT

mcp-name: io.github.salvo10f/godotiq

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

godotiq-0.1.4.tar.gz (3.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

godotiq-0.1.4-py3-none-any.whl (178.1 kB view details)

Uploaded Python 3

File details

Details for the file godotiq-0.1.4.tar.gz.

File metadata

  • Download URL: godotiq-0.1.4.tar.gz
  • Upload date:
  • Size: 3.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.1

File hashes

Hashes for godotiq-0.1.4.tar.gz
Algorithm Hash digest
SHA256 95469496a75b0fdf5f2957705b40379294794cecc162ddeb5c14283c2e81288f
MD5 0ce987aeebc7990ba8829c88f1bff5df
BLAKE2b-256 0140e8cba5dcf8b5558bb58ad957032d505a7def565471645f491c0b411e72cc

See more details on using hashes here.

File details

Details for the file godotiq-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: godotiq-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 178.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.1

File hashes

Hashes for godotiq-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e1fa3b36b5ff314487940a977b918b58c97d246bb35094a33158f6a58cdf0f3d
MD5 d40002adb5ca3ed5b25ac3adfe6dcaa0
BLAKE2b-256 3b66d6537728f597255d44bbeca007091200512df7f5129f5ead66bfc0692ca1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page