Uses ESLint for code linting during development of the MCP server
Built with Node.js runtime for executing the MCP server implementation
Distributed as an npm package for easy installation and dependency management
Uses Prettier for code formatting during development of the MCP server
Uses Shields.io badges to display package version and license information in documentation
Implemented in TypeScript for type-safe development of the MCP server
minimal-godot-mcp
Lightweight MCP server bridging Godot LSP to MCP clients for GDScript validation
Built with one mission: surface Godot diagnostics with minimal overhead.
Get instant GDScript syntax feedback in Claude, Cursor, and other MCP clientsβno context switching to Godot, no custom plugins. Just a lightweight bridge to Godot's native LSP.
Table of Contents
Quick Start
Prerequisites
Node.js 24+
Godot 3.2+ or 4.x with LSP enabled
Setup
Note: Package not yet published to npm. For now, clone and build locally.
Configure your MCP client (eg. Claude Code) to use the local build:
Tip: See Configuration for environment variables and client-specific examples.
Restart your MCP client and start editing .gd
files β¨
Features
π Zero-config LSP integration - Uses Godot's native Language Server (no plugins, no extra dependencies)
β‘ Fast diagnostics - Single-file checks return in <1s
π¦ Minimal footprint - <10MB memory, <200 LOC core implementation
π¬ Low context overhead - Lightweight responses to minimize AI token usage
π Resilient connections - Handles Godot restarts and reconnections automatically
π€ Plays nice - Compatible with godot-vscode-plugin and other LSP clients
π Workspace scanning - Optional bulk checking of all
.gd
files
See the context usage in Claude Code:
Configuration
Environment Variables
Set these environment variables in your MCP client configuration to customize behavior:
GODOT_LSP_PORT
: Override default port selection Default: tries ports 6007, 6005, 6008 in order Example:"GODOT_LSP_PORT": "6005"
GODOT_WORKSPACE_PATH
: Set Godot project path for LSP initialization Default: uses workspace from Godot's notification Example:"GODOT_WORKSPACE_PATH": "/absolute/path/to/your/godot/project"
MCP Client Examples
Claude Code (~/.claude/config.json
):
Usage
Start Godot editor with your project
Verify LSP is running:
nc -zv localhost 6007
Edit GDScript files with your MCP client enabled
Receive instant syntax error feedback
MCP Tools
get_diagnostics
Fast single-file diagnostic check (<1s).
Input:
Output:
scan_workspace_diagnostics
β οΈ EXPENSIVE operation - scans ALL .gd
files in workspace (5-30s for 100+ files).
Use sparingly for workspace-wide error checking. Requires GODOT_WORKSPACE_PATH
environment
variable.
Input:
Output:
Example in practice:
When you edit a GDScript file with a syntax error:
The MCP client receives:
Comparison
How minimal-godot-mcp differs from other Godot MCP servers:
Feature | minimal-godot-mcp | ee0pdt/Godot-MCP | Coding-Solo/godot-mcp |
Custom plugin required | β | β | β |
Project manipulation | β | β | β |
LSP integration | β Native | β Custom | β GDScript ops |
Scope | Diagnostics only | Full control | CLI + scripts |
Use minimal-godot-mcp when: You want lightweight syntax checking during AI-assisted GDScript editing
Use alternatives when: You need scene management, node creation, or full project control
Development
Architecture
LSP Communication:
Connect to Godot LSP via TCP (tries
localhost
ports 6007, 6005, 6008)Send LSP
initialize
requestSync documents with
textDocument/didOpen
Receive
textDocument/publishDiagnostics
notificationsCache and serve via MCP
get_diagnostics
tool
Testing
Manual testing:
Start Godot with test project
Run
npm run dev
Configure MCP client
Introduce syntax error in .gd file
Verify diagnostic appears
Contributing
Contributions welcome! See Development for setup.
Before submitting:
Run
npm run format
andnpm test
Verify changes work with a real Godot project
Keep scope focused on diagnostics (no project manipulation)
Troubleshooting
"Connection refused on port 6007"
Godot editor not running
LSP disabled in project settings
Firewall blocking localhost
"No diagnostics returned"
File not part of Godot project
File not opened in editor (LSP needs context)
Syntax is actually valid
"Stale diagnostics"
Cache not invalidating on file changes
LSP not sending update notifications
Enable LSP Debug Logs
In Godot: Project β Project Settings β Network β Language Server β Log
Related Projects
Model Context Protocol - The protocol specification
Godot LSP Documentation - Godot's Language Server setup
awesome-mcp-servers - Curated list of MCP servers
godot-vscode-plugin - Official VSCode extension (uses same LSP)
Alternative Godot MCP servers:
ee0pdt/Godot-MCP - Full project control via custom plugin
Coding-Solo/godot-mcp - CLI-based GDScript operations
License
MIT License - see LICENSE
local-only server
The server can only run on the client's local machine because it depends on local resources.
Provides instant GDScript syntax validation and diagnostics by bridging Godot's native Language Server Protocol to MCP clients. Enables real-time syntax checking in AI assistants without requiring custom plugins or context switching to the Godot editor.