Skip to main content
Glama

minimal-godot-mcp

MCP server bridging Godot's native LSP to AI coding assistants for GDScript validation

License: MIT Node.js

Table of Contents

Quick Start

Prerequisites: Node.js 22+, Godot 3.2+ or 4.x with LSP enabled

git clone https://github.com/ryanmazzolini/minimal-godot-mcp.git cd minimal-godot-mcp npm install && npm run build

Start Godot with your project, then configure your MCP client (see below).

Configuration

Environment Variables

Variable

Description

Default

GODOT_LSP_PORT

Override LSP port

Tries 6007, 6005, 6008

GODOT_WORKSPACE_PATH

Godot project path

Auto-detected from cwd

GODOT_DAP_PORT

Override DAP port

Tries 6006, 6010

GODOT_DAP_BUFFER_SIZE

Max console entries to buffer

1000

MCP Client Setup

Add to ~/.claude.json:

{ "mcpServers": { "godot": { "command": "node", "args": ["/path/to/minimal-godot-mcp/dist/index.js"], "env": { "GODOT_WORKSPACE_PATH": "/path/to/your/godot/project" } } } }

Add to .cursor/mcp.json in your project:

{ "mcpServers": { "godot": { "command": "node", "args": ["/path/to/minimal-godot-mcp/dist/index.js"], "env": { "GODOT_WORKSPACE_PATH": "/path/to/your/godot/project" } } } }

Configure your client to run:

node /path/to/minimal-godot-mcp/dist/index.js

Set GODOT_WORKSPACE_PATH environment variable to your Godot project root.

Features

  • Zero-config LSP - Uses Godot's native Language Server, no plugins required

  • Fast diagnostics - Single-file checks return quickly

  • Minimal footprint - Lightweight responses to minimize token usage

  • Resilient connections - Handles Godot restarts automatically

  • Workspace scanning - Bulk check all .gd files in a project

MCP Tools

get_diagnostics

Check a single GDScript file for errors.

// Input { "file_path": "/path/to/script.gd" } // Output { "diagnostics": { "/path/to/script.gd": [ { "line": 5, "column": 14, "severity": "error", "message": "Expected identifier", "code": "parse-error" } ] } }

scan_workspace_diagnostics

Scan all .gd files in the workspace (excludes addons/ and .godot/).

// Input {} // Output { "files_scanned": 150, "files_with_issues": 3, "scan_time_seconds": 1.5, "diagnostics": { ... } }

get_console_output

Get console output from Godot debug session. Requires a running scene (F5 in Godot).

// Input (all optional) { "limit": 50, "category": "console", "since": 1706000000000 } // Output { "entries": [ { "timestamp": 1706000001234, "category": "console", "message": "Player spawned", "source": "/project/player.gd", "line": 42 } ], "total_buffered": 150 }

Categories: console (print statements), stdout, stderr (errors/warnings).

clear_console_output

Clear the console output buffer.

// Input {} // Output { "cleared": true }

Development

Architecture

flowchart LR MCP[MCP Client] <-->|stdio| Server[minimal-godot-mcp] Server <-->|LSP :6007| Godot[Godot Editor] Server <-.->|DAP :6006| Godot
  • LSP (Language Server Protocol, solid line): Always connected for diagnostics

  • DAP (Debug Adapter Protocol, dotted line): Lazy-connects when get_console_output is called with a running scene

See also:

Commands

npm test # Run tests npm run lint # ESLint + Prettier npm run build # Compile TypeScript

Contributing

  1. Run npm run format && npm test before submitting

  2. Test with a real Godot project

  3. Keep scope focused on diagnostics

Troubleshooting

See docs/troubleshooting.md for connection issues, missing diagnostics, and debug logging.

References

License

MIT - see LICENSE

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ryanmazzolini/minimal-godot-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server