├── latest_version.txt ├── project ├── main.gd ├── main.gd.uid ├── .editorconfig ├── .gitignore ├── .gitattributes ├── main.tscn ├── project.godot ├── icon.svg └── icon.svg.import └── README.md /latest_version.txt: -------------------------------------------------------------------------------- 1 | 0.2.7 2 | -------------------------------------------------------------------------------- /project/main.gd: -------------------------------------------------------------------------------- 1 | extends Control 2 | -------------------------------------------------------------------------------- /project/main.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cnnpgdvxfoadu 2 | -------------------------------------------------------------------------------- /project/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | -------------------------------------------------------------------------------- /project/.gitignore: -------------------------------------------------------------------------------- 1 | # Godot 4+ specific ignores 2 | .godot/ 3 | /android/ 4 | -------------------------------------------------------------------------------- /project/.gitattributes: -------------------------------------------------------------------------------- 1 | # Normalize EOL for all files that Git considers text files. 2 | * text=auto eol=lf 3 | -------------------------------------------------------------------------------- /project/main.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://5xed7i7rwcqx"] 2 | 3 | [ext_resource type="Script" uid="uid://cnnpgdvxfoadu" path="res://main.gd" id="1_ig7tw"] 4 | 5 | [node name="Main" type="Control"] 6 | layout_mode = 3 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | script = ExtResource("1_ig7tw") 13 | -------------------------------------------------------------------------------- /project/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=5 10 | 11 | [application] 12 | 13 | config/name="GDAI MCP Server Godot" 14 | config/features=PackedStringArray("4.4", "GL Compatibility") 15 | config/icon="res://icon.svg" 16 | 17 | [rendering] 18 | 19 | renderer/rendering_method="gl_compatibility" 20 | renderer/rendering_method.mobile="gl_compatibility" 21 | -------------------------------------------------------------------------------- /project/icon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /project/icon.svg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cpchrmd0o7xdj" 6 | path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://icon.svg" 14 | dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | svg/scale=1.0 36 | editor/scale_with_editor_scale=false 37 | editor/convert_colors_with_editor_theme=false 38 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | > gdai-mcp-plugin-godot 2 | 3 | # 🤖 GDAI MCP – MCP Server for Godot Game Engine 4 | 5 | **GDAI MCP Godot Plugin** allows AI to control the Godot Editor to create scenes, nodes, scripts. It can debug script errors, debugger and output logs. 6 | 7 | > 🔗 [Get the Plugin (https://gdaimcp.com)](https://gdaimcp.com)   8 | 9 | --- 10 | 11 | ## 🚀 Feature Highlights 12 | 13 | Take your Godot workflow to the next level by automating your game development. 14 | 15 | - **[NEW!] ✨ 📷 Automatically takes screenshots to visually understand the editor and running game.** 16 | 17 | - 🧱 **Create Scenes Programmatically** 18 | Generates scenes, nodes, resources, scripts and more 19 | 20 | - 🛠️ **Add & Manipulate Nodes** 21 | Modifies the scene tree adding/removing/updating nodes and their properties 22 | 23 | - 🐞 **Debugger Integration** 24 | View debugger output, logs and scripts errors. 25 | 26 | - 📁 **File & Asset Search** 27 | Searches for files and resources directly from the filesystem (`res://`) 28 | 29 | - 📐 **Property Updates** 30 | Set and get node properties dynamically. 31 | 32 | - 🧩 **Project Understanding** 33 | Has a deep understanding of your project, scenes and scripts. 34 | 35 | - 📝 **GDScript context** 36 | Helps you write and debug GDScript 37 | 38 | --- 39 | 40 | ## 🛠️ How It Works 41 | 42 | Use the GDAI MCP Plugin to control Godot from any MCP Client like Cursor, Windsurf, Claude, VSCode etc. 43 | 44 | 1. **Install in Godot Project** 45 | Add the GDAI MCP Plugin to your Godot project. 46 | [Installation Guide](https://gdaimcp.com/docs/installation) 47 | 48 | 2. **Add command in MCP Client** 49 | Add the MCP server command to your MCP Client's config. 50 | [MCP Client Config](https://gdaimcp.com/docs/installation#2-install-in-mcp-client) 51 | 52 | 3. **Start Chatting** 53 | Start chatting and see the MCP action! 54 | [Examples](https://gdaimcp.com/docs/examples) 55 | 56 | --- 57 | 58 | ## 💻 Example 59 | 60 | **User:** Please fix my gdscript errors. 61 | **Assistant:** I'd be happy to help fix your GDScript errors. Let me start by examining your current scene and looking for any errors in your script. 62 | 63 | Running tool: `get_open_script` 64 | Running tool: `get_open_script_errors` 65 | ...conversation continues 66 | 67 | See more examples at the end 68 | 69 | --- 70 | 71 | ## 🤝 Compatible MCP Clients 72 | 73 | Use GDAI MCP with your favorite MCP client or IDE: 74 | 75 | - Cursor 76 | - Claude Desktop 77 | - VS Code (via GitHub Copilot, Cline, Roo Code, etc) 78 | - WindSurf 79 | - And more 80 | 81 | ## 🤝 Compatible Godot version 82 | 83 | The plugin is compatible with `Godot 4.1+` 84 | 85 | --- 86 | 87 | ## ❓ Frequently Asked Questions 88 | 89 | **What is GDAI MCP Godot Plugin?** 90 | A plugin that allows any MCP Client to control Godot Engine Editor remotely, allowing it to create scenes, nodes, resources, scripts and more. 91 | 92 | **Can this make an entire game with one shot prompt?** 93 | Yes and no. It depends on the quality of your prompt and the LLM used. Claude Desktop most of the times is able to one-shot simple games. 94 | 95 | 96 | **Is Godot scripting experience required?** 97 | No, but it's helpful. 98 | 99 | **Which clients are supported?** 100 | Any MCP client either a program or even a script can connect to the MCP server. 101 | 102 | **Can I use this in commercial projects?** 103 | Yes! You can use this plugin to make commercial games! 104 | 105 | **Can I use this in a public project?** 106 | Yes! But make sure to not commit the plugin to the public repository of your game. 107 | 108 | **Is there documentation?** 109 | Yes, detailed docs are available. 110 | 111 | --- 112 | 113 | ## 🚀 Take Your Godot Workflow to the Next Level 114 | 115 | Unlock the full potential of AI through automated game development via the GDAI MCP Plugin. 116 | 117 | > [🔗 Get the plugin](https://gdaimcp.com) 118 | 119 | --- 120 | 121 | 122 | ### 🗣️ Suggestions 123 | 124 | ##### Have any question or feature requests? 125 | Join the [Discord Server](https://discord.gg/FZY9TqW) or DM `@3ddelano` 126 | 127 | --- 128 | 129 | ### 💡 More examples 130 | 131 | - 3D Minecraft clone 132 | 133 | [![3D Minecraft clone](http://img.youtube.com/vi/ybCBvvbGk5s/0.jpg)](https://youtube.com/shorts/ybCBvvbGk5s?si=XFcw_BINKK1A6RHQ) 134 | 135 | - 3D car racing game 136 | 137 | [![3D car racing game](http://img.youtube.com/vi/IeYTmrZOxcU/0.jpg)](https://youtube.com/shorts/IeYTmrZOxcU?si=WevMw8rrK-0t4rvy) 138 | 139 | - Create scene with nodes 140 | 141 | [![Create scene with nodes](http://img.youtube.com/vi/0dz1Nb1maco/0.jpg)](https://youtu.be/0dz1Nb1maco?si=KZoQm__Hx6NR9K5R) 142 | 143 | - Edit GDScript files 144 | 145 | [![Edit GDScript files](http://img.youtube.com/vi/oYev6V8u_Oo/0.jpg)](https://youtu.be/oYev6V8u_Oo?si=I1eehN-Tj6kTdCWo) 146 | 147 | --- 148 | 149 | ### Installation Guide 150 | 151 | Check out the detailed [Installation Guide](https://gdaimcp.com/docs/installation) 152 | 153 | --- 154 | 155 | ### 🔄 Update Guide 156 | 157 | Check out the detailed [Update Guide](https://gdaimcp.com/docs/update-guide) 158 | 159 | --- 160 | 🔗 [Get the Plugin](https://gdaimcp.com)   161 | 162 | --- 163 | 164 | 📄 [License](https://gdaimcp.com/license) 165 | 166 | © 2025 Delano Lourenco. All rights reserved. 167 | --------------------------------------------------------------------------------