gdevelop-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GDEVELOP_ROOT | No | Path to a GDevelop source checkout. Auto-detects libGD.js and GDJS artifacts. | |
| GDEVELOP_GDJS_ROOT | No | Explicit path to GDJS runtime root. Takes precedence over GDEVELOP_ROOT. | |
| GDEVELOP_LIBGD_PATH | No | Explicit path to libGD.js. Takes precedence over GDEVELOP_ROOT. | |
| GDEVELOP_LOAD_EXTENSIONS | No | Set to 'false' to skip loading extensions. Default is 'true'. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_projectA | Create a new editable GDevelop project JSON file and keep it open as a session. |
| open_projectA | Load a local .json GDevelop project into an isolated in-memory session. |
| import_resourceB | Register an existing local image, model, audio, video, font, JSON, Spine atlas/skeleton, or JavaScript file in an open project. |
| update_projectA | Update editable project metadata, resolution, and frame-rate settings in memory. |
| set_scene_javascriptB | Add or replace an MCP-managed inline JavaScript event on a GDevelop scene. |
| add_scene_layerA | Add an editable 2D layer to a scene, for example a HUD layer. |
| set_scene_variableA | Create or update an editable scene variable with a primitive, structure, or array value. |
| set_global_variableA | Create or update an editable project-wide variable with a primitive, structure, or array value. |
| add_scene_objectB | Create an editable scene object with optional Sprite, Text, or Spine configuration, object variables, and behaviors. |
| add_object_groupA | Create an editable scene object group for authoring shared enemy, pickup, or platform events. |
| add_object_instanceC | Place an editable initial instance of a scene object with optional instance variables. |
| set_scene_eventsB | Replace or append editable native GDevelop comments, groups, and standard events. |
| describe_native_projectA | Inspect scenes, editable objects, behaviors, instances, variables, and event counts. |
| export_projectB | Export a persistent GDJS web build to a caller-selected local directory. |
| save_projectA | Serialize an open in-memory project back to its JSON file. |
| build_previewA | Compile a project with gd.Exporter, start a loopback HTTP server, and return its preview URL. |
| get_preview_statusA | Return one preview session, or list all sessions when previewId is omitted. |
| stop_previewA | Stop the loopback HTTP server and remove only this preview's temporary directory. |
| close_projectA | Stop previews for a project and release its C++/Wasm project handle. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Each tool targets a distinct resource/action: project lifecycle, variables, objects, layers, events, preview, etc. No two tools appear to do the same thing.
All tools follow a consistent verb_noun snake_case pattern (e.g., create_project, set_global_variable, stop_preview). Verbs are specific and varied, making the set predictable.
At 19 tools, the set is on the higher end but each tool serves a distinct purpose in project authoring and preview; it's slightly over the ideal 3-15 range but not excessive.
The surface covers creation, editing, inspection, export, and preview, but lacks deletion/removal operations (objects, layers, variables) and explicit scene creation/removal, leaving notable gaps for full lifecycle management.