Server facts
Godot MCP
Project
- Author
- Coding-Solo
- Repository
- github.com/Coding-Solo/godot-mcp
- License
- MIT
- Category
- Games & 3D
Tech
- Runtime / language
- nodeTypeScript and GDScript
- Transports
- stdio
- Remote available
- No
- Authentication
- Not specified
Activity
- GitHub stars
- 6,117
- Last commit
- Data as of
Tags
- Debugging
- Game Development
- Gdscript
- Godot
- Scene Management
Overview
Godot MCP gives compatible AI agents a direct connection to the Godot game engine. It can launch the editor for a project, execute that project in debug mode, collect output and errors, and stop execution. Other tools discover projects, inspect their metadata, and report the installed engine version. These operations create a feedback loop in which an assistant can inspect what a project actually does rather than relying only on source text when helping with implementation or debugging.
The integration also handles scene work: creating scenes, inserting nodes with properties, loading sprites into Sprite2D nodes, saving changes, and exporting scenes as MeshLibrary resources for GridMap. UID lookup and reference updates are listed for Godot 4.4 and later. Simple operations use Godot's command-line capabilities, while more complex changes are routed through a bundled GDScript operations file that accepts JSON parameters. The README requires an installed Godot engine, Node.js 18 or newer with npm, and an MCP-capable agent. Client examples run the npm package with npx, and GODOT_PATH can override executable discovery when automatic detection fails. Project paths must identify directories containing project.godot. Source builds are also documented. This is engine-connected tooling, so it complements a local Godot installation rather than providing an independent game runtime or editor.
Install & configure
Requirements
- Godot Engine installed locally
- Node.js 18.0.0 or newer and npm
- An MCP-compatible agent
- Godot 4.4 or newer for UID operations
npx @coding-solo/godot-mcpGODOT_PATH overrides automatic executable detection and can be omitted when discovery works. DEBUG=true enables detailed server logging. Ensure project paths contain project.godot.
Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"godot-mcp": {
"command": "npx",
"args": [
"@coding-solo/godot-mcp"
],
"env": {
"GODOT_PATH": "<Path to the Godot executable; optional discovery override>"
}
}
}
}Config file · Project: .cursor/mcp.json
User: ~/.cursor/mcp.json
The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"godot-mcp": {
"command": "npx",
"args": [
"@coding-solo/godot-mcp"
],
"env": {
"GODOT_PATH": "<Path to the Godot executable; optional discovery override>"
}
}
}
}Config file · Workspace: .vscode/mcp.json
For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.
{
"servers": {
"godot-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"@coding-solo/godot-mcp"
],
"env": {
"GODOT_PATH": "<Path to the Godot executable; optional discovery override>"
}
}
}
}Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json
Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"godot-mcp": {
"command": "npx",
"args": [
"@coding-solo/godot-mcp"
],
"env": {
"GODOT_PATH": "<Path to the Godot executable; optional discovery override>"
}
}
}
}Config file · Project scope: .mcp.json at the repository root
The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"godot-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"@coding-solo/godot-mcp"
],
"env": {
"GODOT_PATH": "<Path to the Godot executable; optional discovery override>"
}
}
}
}Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Tools
Source: repository tool metadata. Tool descriptions are a documented snapshot, not a live capability check.
| Tool | What it does |
|---|---|
| launch_editor | Open the Godot editor for a selected project. |
| run_project | Execute a project and collect its output. |
| get_debug_output | Read the current runtime logs and error output. |
| stop_project | End the project execution currently controlled by the server. |
| get_godot_version | Report the installed engine version. |
| list_projects | Discover Godot projects beneath a directory. |
| get_project_info | Inspect a project’s metadata. |
| create_scene | Generate a Godot scene file. |
| add_node | Insert a node into an existing scene. |
| load_sprite | Assign sprite content to a Sprite2D node. |
| export_mesh_library | Export scene content as a MeshLibrary resource. |
| save_scene | Persist scene changes to a file. |
| get_uid | Read a file’s resource UID on Godot 4.4 or newer. |
| update_project_uids | Resave resources to refresh project UID references on Godot 4.4 or newer. |
Names, permissions, and defaults can change. Check the current upstream documentation before granting access.
Use cases
- Run a game project and inspect errors from an AI assistant.
- Create scenes and add configured nodes.
- Load sprites or export MeshLibrary resources for GridMap.
- Maintain project resource UID references on Godot 4.4 or newer.
Strengths
- Combines execution control and debug output with scene editing.
- Uses a bundled GDScript file for complex operations.
- Allows an explicit Godot executable path when discovery fails.
Limitations
- Requires an installed Godot engine and Node.js 18 or newer.
- UID operations require Godot 4.4 or newer.
- Project paths must point to directories containing project.godot.
Frequently asked questions
Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.