Skip to main content
Glama

Godot MCP Server

An MCP (Model Context Protocol) server that integrates Godot game engine with Copilot MCP, allowing LLMs to create scenes, scripts, animations, and make other changes in Godot projects.

example

Features

Scene Management

  • create_scene - Create new Godot scenes (.tscn) with specified root node types

  • add_node - Add nodes to existing scenes

  • remove_node - Remove nodes from scenes

  • modify_node - Modify node properties

  • read_scene - Read scene structure as JSON

  • list_nodes - List all nodes in a scene

Script Generation

  • create_script - Create GDScript files with templates or custom content

  • attach_script - Attach scripts to scene nodes

  • read_script - Read script file contents

  • edit_script - Edit existing scripts

  • list_scripts - List all scripts in project

Animation

  • create_animation - Create AnimationPlayer with animations

  • add_animation_track - Add animation tracks with keyframes

Project Management

  • init_project - Initialize new Godot projects

  • get_project_info - Get project information

  • list_scenes - List all scene files

  • launch_editor - Launch Godot editor

  • run_project - Run the project

  • get_godot_version - Get Godot version info

  • create_resource - Create resource files (.tres)

Prerequisites

  • Node.js 18.0.0 or higher

  • Godot 4.x installed and accessible via PATH or GODOT_PATH environment variable

Installation

# Clone the repository git clone https://github.com/koltyakov/godot-mcp.git cd godot-mcp # Install dependencies npm install # Build npm run build

Configuration

VS Code / Copilot

Add to your VS Code settings (.vscode/mcp.json):

{ "mcpServers": { "godot": { "command": "node", "args": ["/path/to/godot-mcp/dist/index.js"], "env": { "GODOT_PATH": "/Applications/Godot.app/Contents/MacOS/Godot" // Adjust path as needed } } } }

Usage Examples

Create a new project

Create a new Godot project called "MyGame" at /path/to/projects/MyGame

Create a player scene

Create a 2D player scene with a CharacterBody2D root, add a Sprite2D and CollisionShape2D, and attach a movement script

Add animation

Add a jump animation to the player scene that modifies the position.y property over 0.5 seconds

Development

# Run in development mode with hot reload npm run dev # Build for production npm run build # Run the built server npm start

Environment Variables

  • GODOT_PATH - Path to Godot executable (optional if Godot is in PATH)

Supported Node Types

The server supports creating most common Godot node types including:

  • 2D: Node2D, Sprite2D, Camera2D, CharacterBody2D, RigidBody2D, StaticBody2D, Area2D, CollisionShape2D, TileMap, etc.

  • 3D: Node3D, MeshInstance3D, Camera3D, CharacterBody3D, RigidBody3D, DirectionalLight3D, etc.

  • UI: Control, Label, Button, TextureRect, Panel, etc.

  • Audio: AudioStreamPlayer, AudioStreamPlayer2D, AudioStreamPlayer3D

  • Animation: AnimationPlayer, AnimatedSprite2D

  • And many more...

Supported Resource Types

  • Shapes: CircleShape2D, RectangleShape2D, BoxShape3D, SphereShape3D, etc.

  • Meshes: BoxMesh, SphereMesh, CylinderMesh, PlaneMesh, etc.

  • Materials: StandardMaterial3D, ShaderMaterial, CanvasItemMaterial

  • Textures: GradientTexture1D, GradientTexture2D, NoiseTexture2D

  • And more...

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

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/koltyakov/godot-mcp'

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