Gopeak MCP server
io.github.HaD0Yun/gopeak·v2.0.1·261 starsGoPeak — The most comprehensive MCP server for Godot Engine. 95+ tools, LSP, DAP, screenshots.
261 stars
Reviews
Write oneNobody has reviewed Gopeak yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Gopeak tools (95, 20 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_animation_stateAdd a state to an AnimationTree state machine
add_animation_trackAdds a property or method track to an animation. Prerequisite: animation must exist (use create_animation first). Use to animate position, rotation, color, or call methods at specific times. Keyframes define values over time.
add_autoloadRegisters a script/scene as an autoload singleton. Use for global managers (GameManager, AudioManager, etc.). Loads automatically on game start.
add_input_actionRegisters a new input action in project.godot InputMap. Use to set up keyboard, mouse, or gamepad controls for player actions like jump, move, attack.
add_nodeAdds ANY node type to an existing scene. This is the universal node creation tool — replaces all specialized create_* node tools. Supports ALL ClassDB node types (Camera3D, DirectionalLight3D, AudioStreamPlayer, HTTPRequest, RayCast3D, etc.). Set any property via the properties parameter with type conversion support (Vector2, Vector3, Color, etc.). Use query_classes to discover available node type
apply_theme_shaderGenerate and apply theme-appropriate shader to a material in a scene
call_runtime_methodCall a method on a node in a running Godot instance
capture_screenshotCapture a screenshot of the running Godot game viewport. Requires the runtime addon to be active (game must be running with the MCP runtime autoload).
capture_viewportCapture a viewport texture as base64 image from the running Godot game. Similar to capture_screenshot but captures a specific viewport by path.
connect_animation_statesConnect two states with a transition
connect_signalwrite actionCreates a signal connection between nodes in a scene. Prerequisite: source and target nodes must exist. Use to wire up button clicks, collision events, custom signals. Saved to scene file.
create_animationwrite actionCreates a new animation in an AnimationPlayer. Prerequisite: AnimationPlayer node must exist in scene (use add_node first). Use to set up character animations, UI transitions, or cutscenes. Supports loop modes: none, linear, pingpong.
create_animation_treewrite actionCreate an AnimationTree node linked to an AnimationPlayer
create_audio_buswrite actionCreates a new audio bus for mixing. Use to set up separate volume controls for music, SFX, voice, etc.
create_materialwrite actionCreates a material resource for 3D/2D rendering. Types: StandardMaterial3D (PBR), ShaderMaterial (custom), CanvasItemMaterial (2D), ParticleProcessMaterial (particles).
create_navigation_agentwrite actionCreates a NavigationAgent for AI pathfinding. Use for enemies, NPCs that need to navigate around obstacles.
create_navigation_regionwrite actionCreates a NavigationRegion for pathfinding. Use to define walkable areas for AI navigation.
create_resourcewrite actionCreates ANY resource type as a .tres file. This is the universal resource creation tool — replaces all specialized create_* resource tools (PhysicsMaterial, Environment, Theme, etc.). Supports ALL ClassDB resource types. Set any property via the properties parameter with type conversion support. Use query_classes with category "resource" to discover available resource types. Use query_class_info t
create_scenewrite actionCreates a new Godot scene file (.tscn) with a specified root node type. Use to start building new game levels, UI screens, or reusable components. The scene is saved automatically after creation.
create_scriptwrite actionCreates a new GDScript (.gd) file with optional templates. Use to generate scripts for game logic. Templates: "singleton" (autoload), "state_machine" (FSM), "component" (modular), "resource" (custom Resource).
create_shaderwrite actionCreates a shader file (.gdshader) with optional templates. Types: canvas_item (2D), spatial (3D), particles, sky, fog. Templates: basic, color_shift, outline.
create_tilesetwrite actionCreates a TileSet resource from texture atlases. Use for 2D tilemaps in platformers, RPGs, etc. Supports multiple atlas sources.
dap_continueContinue execution after a breakpoint or pause
dap_get_outputGet captured Godot DAP console output lines
dap_get_stack_traceGet the current stack trace from the Godot debugger
dap_pausePause execution of the running Godot debug target
dap_remove_breakpointwrite actionRemove a breakpoint in a Godot script at a specific line
dap_set_breakpointSet a breakpoint in a Godot script at a specific line
dap_step_overStep over the current line in the debugger
delete_nodewrite actionRemoves a node and all its children from a scene. Use to clean up unused nodes. Cannot delete root node. Scene is saved automatically unless saveScene=false.
disable_pluginDisables a plugin in the project. Updates project.godot automatically. Plugin files remain in addons/ folder.
disconnect_signalwrite actionRemoves a signal connection from a scene. Use to clean up unused connections or rewire logic.
duplicate_nodewrite actionCreates a copy of a node with all its properties and children. Use to replicate enemies, UI elements, or any repeated structures. Scene is saved automatically unless saveScene=false.
enable_pluginEnables a plugin from addons/ folder. Updates project.godot automatically. Use list_plugins first to see available plugins.
export_projectExports the project to a distributable format. Use to build final game executables. Requires export templates installed.
fetch_assetDownload a CC0 asset from any supported source (Poly Haven, AmbientCG, Kenney) to your Godot project.
find_resource_usagesFinds all files that reference a resource. Use before deleting or renaming to avoid breaking references.
get_audio_busesLists all audio buses and their configuration. Use to check current audio setup.
get_debug_outputRetrieves console output and errors from the currently running Godot project. Use after run_project to check logs, errors, and print statements. Returns empty if no project is running.
get_dependenciesAnalyzes resource dependencies and detects circular references. Use to understand what a scene/script depends on before refactoring.
get_godot_versionReturns the installed Godot engine version string. Use to check compatibility (e.g., Godot 4.4+ features like UID). Returns version like "4.3.stable" or "4.4.dev".
get_import_optionsReturns current import settings for a resource. Use to check compression, mipmaps, filter settings before modifying.
get_import_statusReturns import status for project resources. Use to find outdated or failed imports. Shows which resources need reimporting.
get_node_propertiesReturns all properties of a specific node in a scene. Use to inspect current values before modifying. Returns property names, values, and types.
get_project_healthGenerates a health report with scoring for project quality. Checks for unused resources, script errors, missing references, etc.
get_project_infoReturns metadata about a Godot project including name, version, main scene, autoloads, and directory structure. Use to understand project before modifying. Requires valid project.godot.
get_project_settingReads a value from project.godot settings. Use to check game name, window size, physics settings, etc.
get_runtime_metricsGet performance metrics from a running Godot instance
get_runtime_statusChecks if a Godot game instance is running and connected for live debugging. Use before other runtime tools.
get_script_infoAnalyzes a GDScript and returns its structure: functions, variables, signals, class_name, extends. Use before modify_script to understand existing code.
get_uidGet the UID for a specific file in a Godot project (for Godot 4.4+)
inject_actionSimulate a Godot input action (press/release). Requires runtime addon.
inject_keySimulate a keyboard key press/release in the running Godot game. Requires runtime addon.
inject_mouse_clickSimulate a mouse click at specified position in the running Godot game. Requires runtime addon.
inject_mouse_motionSimulate mouse movement to a position in the running Godot game. Requires runtime addon.
inspect_inheritanceInspect class inheritance hierarchy: ancestors, direct children, all descendants. Use to understand class relationships and find specialized alternatives.
inspect_runtime_treeInspect the scene tree of a running Godot instance
launch_editorOpens the Godot editor GUI for a project. Use when visual inspection or manual editing of scenes/scripts is needed. Opens a new window on the host system. Requires: project directory with project.godot file.
list_asset_providersList all available CC0 asset providers and their capabilities.
list_autoloadsLists all registered autoload singletons in the project. Shows name, path, and enabled status.
list_connectionsLists all signal connections in a scene. Use to understand event flow or debug connection issues.
list_export_presetsLists all export presets defined in export_presets.cfg. Use before export_project to see available targets (Windows, Linux, Android, etc.).
list_pluginsLists all plugins in addons/ folder with enabled/disabled status. Use before enable_plugin or disable_plugin to see available plugins.
list_projectsScans a directory for Godot projects (folders containing project.godot). Use to discover projects before using other tools. Returns array of {path, name}.
list_scene_nodesReturns complete scene tree structure with all nodes, types, and hierarchy. Use to understand scene organization before modifying. Returns nested tree with node paths.
load_spriteAssigns a texture to a Sprite2D node in a scene. Use to set character sprites, backgrounds, or UI images. The texture file must exist in the project.
lsp_get_completionsGet code completions from Godot Language Server at a given position.
lsp_get_diagnosticsGet GDScript diagnostics from Godot Language Server for a script file.
lsp_get_hoverGet hover information from Godot Language Server at a given position.
lsp_get_symbolsGet document symbols for a GDScript file from Godot Language Server.
modify_resourceModify properties of an existing resource file (.tres/.res). Use to update materials, environments, themes, or any saved resource without recreating it.
modify_scriptAdds functions, variables, or signals to an existing GDScript. Use to extend scripts without manual editing. Supports @export, @onready annotations and type hints.
parse_error_logParses Godot error log and provides fix suggestions. Use to diagnose runtime errors or script issues.
query_class_infoGet detailed information about a specific Godot class: methods, properties, signals, enums. Use to discover available properties before calling add_node/create_resource/set_node_properties, or to find methods before call_runtime_method.
query_classesQuery available Godot classes from ClassDB with filtering. Use to discover node types, resource types, or any class before using add_node/create_resource. Categories: node, node2d, node3d, control, resource, physics, physics2d, audio, visual, animation.
reimport_resourceForces reimport of resources. Use after modifying source files or to fix import issues. Can reimport single file or all modified.
remove_autoloadwrite actionUnregisters an autoload singleton. Use to remove global managers no longer needed.
reparent_nodeMoves a node to a different parent in the scene tree, preserving all properties and children. Use for reorganizing scene hierarchy. Scene is saved automatically unless saveScene=false.
run_projectwrite actionLaunches a Godot project in a new window and captures output. Use to test gameplay or verify script behavior. Runs until stop_project is called. Use get_debug_output to retrieve logs.
save_sceneSaves changes to a scene file or creates a variant at a new path. Most scene modification tools save automatically, but use this for explicit saves or creating variants.
search_assetsSearch for CC0 assets across multiple sources (Poly Haven, AmbientCG, Kenney). Returns results sorted by provider priority.
search_projectSearches for text or regex patterns across project files. Use to find function usages, variable references, or TODOs. Returns file paths and line numbers.
set_audio_bus_effectAdds or configures an audio effect on a bus. Use for reverb, delay, EQ, compression, etc.
set_audio_bus_volumeSets volume for an audio bus in decibels. Use to balance audio levels.
set_import_optionsModifies import settings for a resource. Use to change compression, mipmaps, filter mode. Triggers reimport by default.
set_main_sceneSets which scene loads first when the game starts. Updates application/run/main_scene in project.godot.
set_node_propertiesSets multiple properties on a node in a scene. Prerequisite: scene and node must exist (use create_scene and add_node first). Use to modify position, scale, rotation, or any node-specific properties. Scene is saved automatically unless saveScene=false.
set_project_settingwrite actionWrites a value to project.godot settings. Use to configure game name, window size, physics, etc.
set_runtime_propertySet a property on a node in a running Godot instance
set_theme_colorSet a color in a Theme resource
set_theme_font_sizeSet a font size in a Theme resource
set_tilemap_cellsPlaces tiles in a TileMap node. Use to programmatically generate levels or modify existing tilemaps.
stop_projectTerminates the currently running Godot project process. Use to stop a project started with run_project. No effect if no project is running.
update_project_uidswrite actionUpdate UID references in a Godot project by resaving resources (for Godot 4.4+)
validate_projectChecks project for export issues: missing resources, script errors, configuration problems. Use before export_project.
Public scan report
scanner v0.1.10 · 2026-09-28 · same rubric, same numbers if you re-run it
- Code scan14 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 16 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Gopeak compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 95% of 48,255 servers
- Tools
- 95
- the typical server has 7
- Tools that change things
- 21%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 261
- more than 95% of 28,688 servers
What its tools let an agent do: 54 read · 17 create · 19 change · 2 delete · 3 run or deploy
Install Gopeak in Claude Code, Cursor or VS Code
Runs npx -y gopeak on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add gopeak -- npx -y gopeak
What the publisher says
From the Gopeak repository's README, as published. We do not edit it. Read it on GitHub
GoPeak
🌐 Languages: English | 한국어 | 日本語 | Deutsch | Português | 简体中文
GoPeak is an MCP server for Godot 4 that gives AI assistants a real edit → run → inspect → fix loop.
It is designed for trusted Godot 4 workflows: small default tool surface, setup-gated advanced capabilities, and explicit compatibility rules for older/legacy tool names.
English is the canonical source of truth. Localized READMEs are concise overviews and may lag behind README.md.
Discord is temporarily unavailable while the invite link is refreshed. Use GitHub Discussions for now.
Quick Start
Requirements
- Godot 4.x
- Bun 1.3.3+
- MCP-compatible client such as Claude Desktop, Cursor, Cline, or OpenCode
1) Install GoPeak
bun add -g https://github.com/HaD0Yun/Doyunha-Gopeak/releases/download/v2.4.0/gopeak-2.4.0.tgzThat is the quickest installation path. It installs the bundled runtime directly from GitHub Releases without npm. For a checksum-verified installation, use:
curl -fLO https://github.com/HaD0Yun/Doyunha-Gopeak/releases/download/v2.4.0/gopeak-2.4.0.tgz
curl -fLO https://github.com/HaD0Yun/Doyunha-Gopeak/releases/download/v2.4.0/gopeak-2.4.0.tgz.sha256
if command -v sha256sum >/dev/null 2>&1; then
sha256sum -c gopeak-2.4.0.tgz.sha256
else
shasum -a 256 -c gopeak-2.4.0.tgz.sha256
fi
bun add -g "$PWD/gopeak-2.4.0.tgz"The verified path checks the downloaded release before Bun installs it globally. The absolute tarball path avoids a relative-path bug in Bun 1.3.3. The checksum command works on Linux (sha256sum) and macOS (shasum). To use the supported installer instead, download or clone the repository and run it locally—do not pipe a remote script into a shell:
git clone https://github.com/HaD0Yun/Doyunha-Gopeak.git
cd Doyunha-Gopeak
./install.shThe release archive contains the bundled runtime. Installation and execution do not contact the npm registry or require npm credentials. For stronger provenance checking, release reviewers can also verify the GitHub artifact attestation as described in the release process.
If you used the old installer, --dir, --godot, and --configure remain accepted with warnings through the 2.3.x line and are planned for removal in 3.0.0. The new mappings are: use Bun's global home (BUNINSTALL) instead of a source checkout directory, put GODOTPATH in the MCP client env, and use the configuration below instead of relying on installer output. During the compatibility window, --godot and --configure still print a client snippet but never write client files. See the migration policy for the exact contract.
2) Add MCP client config
{
"mcpServers": {
"godot": {
"command": "gopeak",
"args": [],
"env": {
"GODOT_PATH": "/path/to/godot",
"GOPEAK_TOOL_PROFILE": "compact"
}
}
}
}compact is the default profile. It keeps the initial MCP context small and exposes additional setup-gated groups only when requested.
3) Try these prompts
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Gopeak: common questions
- Is Gopeak MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Gopeak safety report
- How do I install Gopeak?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Gopeak need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Gopeak maintained?
- The last commit was 53 days ago (2026-09-12). The latest release is v2.0.1.
- How does Gopeak compare with other MCP servers?
- safety score 92/100 (higher than 95% of 48,255 servers); tools 95 (the typical server has 7); tools that change things 21% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.