{"name":"io.github.HaD0Yun/gopeak","slug":"had0yun-gopeak","title":null,"description":"GoPeak — The most comprehensive MCP server for Godot Engine. 95+ tools, LSP, DAP, screenshots.","url":"https://mcp.market/server/had0yun-gopeak","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":38,"stars":261,"forks":26,"downloads_week":null,"last_push_at":"2026-09-12T13:23:34.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/HaD0Yun/godot-mcp","website":null,"version":"2.0.1","remotes":[],"packages":[{"registryType":"npm","identifier":"gopeak","version":"2.0.1","runtimeHint":"npx","transport":{"type":"stdio"}}],"tools":[{"name":"add_animation_state","description":"Add a state to an AnimationTree state machine","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_animation_track","description":"Adds 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_autoload","description":"Registers a script/scene as an autoload singleton. Use for global managers (GameManager, AudioManager, etc.). Loads automatically on game start.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_input_action","description":"Registers a new input action in project.godot InputMap. Use to set up keyboard, mouse, or gamepad controls for player actions like jump, move, attack.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_node","description":"Adds 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","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_theme_shader","description":"Generate and apply theme-appropriate shader to a material in a scene","write_action":false,"price_micros":0,"input_schema":null},{"name":"call_runtime_method","description":"Call a method on a node in a running Godot instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"capture_screenshot","description":"Capture a screenshot of the running Godot game viewport. Requires the runtime addon to be active (game must be running with the MCP runtime autoload).","write_action":false,"price_micros":0,"input_schema":null},{"name":"capture_viewport","description":"Capture a viewport texture as base64 image from the running Godot game. Similar to capture_screenshot but captures a specific viewport by path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"connect_animation_states","description":"Connect two states with a transition","write_action":false,"price_micros":0,"input_schema":null},{"name":"connect_signal","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_animation","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_animation_tree","description":"Create an AnimationTree node linked to an AnimationPlayer","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_audio_bus","description":"Creates a new audio bus for mixing. Use to set up separate volume controls for music, SFX, voice, etc.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_material","description":"Creates a material resource for 3D/2D rendering. Types: StandardMaterial3D (PBR), ShaderMaterial (custom), CanvasItemMaterial (2D), ParticleProcessMaterial (particles).","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_navigation_agent","description":"Creates a NavigationAgent for AI pathfinding. Use for enemies, NPCs that need to navigate around obstacles.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_navigation_region","description":"Creates a NavigationRegion for pathfinding. Use to define walkable areas for AI navigation.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_resource","description":"Creates 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","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_scene","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_script","description":"Creates 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).","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_shader","description":"Creates a shader file (.gdshader) with optional templates. Types: canvas_item (2D), spatial (3D), particles, sky, fog. Templates: basic, color_shift, outline.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_tileset","description":"Creates a TileSet resource from texture atlases. Use for 2D tilemaps in platformers, RPGs, etc. Supports multiple atlas sources.","write_action":true,"price_micros":0,"input_schema":null},{"name":"dap_continue","description":"Continue execution after a breakpoint or pause","write_action":false,"price_micros":0,"input_schema":null},{"name":"dap_get_output","description":"Get captured Godot DAP console output lines","write_action":false,"price_micros":0,"input_schema":null},{"name":"dap_get_stack_trace","description":"Get the current stack trace from the Godot debugger","write_action":false,"price_micros":0,"input_schema":null},{"name":"dap_pause","description":"Pause execution of the running Godot debug target","write_action":false,"price_micros":0,"input_schema":null},{"name":"dap_remove_breakpoint","description":"Remove a breakpoint in a Godot script at a specific line","write_action":true,"price_micros":0,"input_schema":null},{"name":"dap_set_breakpoint","description":"Set a breakpoint in a Godot script at a specific line","write_action":false,"price_micros":0,"input_schema":null},{"name":"dap_step_over","description":"Step over the current line in the debugger","write_action":false,"price_micros":0,"input_schema":null},{"name":"delete_node","description":"Removes 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"disable_plugin","description":"Disables a plugin in the project. Updates project.godot automatically. Plugin files remain in addons/ folder.","write_action":false,"price_micros":0,"input_schema":null},{"name":"disconnect_signal","description":"Removes a signal connection from a scene. Use to clean up unused connections or rewire logic.","write_action":true,"price_micros":0,"input_schema":null},{"name":"duplicate_node","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"enable_plugin","description":"Enables a plugin from addons/ folder. Updates project.godot automatically. Use list_plugins first to see available plugins.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_project","description":"Exports the project to a distributable format. Use to build final game executables. Requires export templates installed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fetch_asset","description":"Download a CC0 asset from any supported source (Poly Haven, AmbientCG, Kenney) to your Godot project.","write_action":false,"price_micros":0,"input_schema":null},{"name":"find_resource_usages","description":"Finds all files that reference a resource. Use before deleting or renaming to avoid breaking references.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_audio_buses","description":"Lists all audio buses and their configuration. Use to check current audio setup.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_debug_output","description":"Retrieves 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dependencies","description":"Analyzes resource dependencies and detects circular references. Use to understand what a scene/script depends on before refactoring.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_godot_version","description":"Returns 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\".","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_import_options","description":"Returns current import settings for a resource. Use to check compression, mipmaps, filter settings before modifying.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_import_status","description":"Returns import status for project resources. Use to find outdated or failed imports. Shows which resources need reimporting.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_node_properties","description":"Returns all properties of a specific node in a scene. Use to inspect current values before modifying. Returns property names, values, and types.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_health","description":"Generates a health report with scoring for project quality. Checks for unused resources, script errors, missing references, etc.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_info","description":"Returns metadata about a Godot project including name, version, main scene, autoloads, and directory structure. Use to understand project before modifying. Requires valid project.godot.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_setting","description":"Reads a value from project.godot settings. Use to check game name, window size, physics settings, etc.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_runtime_metrics","description":"Get performance metrics from a running Godot instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_runtime_status","description":"Checks if a Godot game instance is running and connected for live debugging. Use before other runtime tools.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_script_info","description":"Analyzes a GDScript and returns its structure: functions, variables, signals, class_name, extends. Use before modify_script to understand existing code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_uid","description":"Get the UID for a specific file in a Godot project (for Godot 4.4+)","write_action":false,"price_micros":0,"input_schema":null},{"name":"inject_action","description":"Simulate a Godot input action (press/release). Requires runtime addon.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inject_key","description":"Simulate a keyboard key press/release in the running Godot game. Requires runtime addon.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inject_mouse_click","description":"Simulate a mouse click at specified position in the running Godot game. Requires runtime addon.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inject_mouse_motion","description":"Simulate mouse movement to a position in the running Godot game. Requires runtime addon.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_inheritance","description":"Inspect class inheritance hierarchy: ancestors, direct children, all descendants. Use to understand class relationships and find specialized alternatives.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_runtime_tree","description":"Inspect the scene tree of a running Godot instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"launch_editor","description":"Opens 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_asset_providers","description":"List all available CC0 asset providers and their capabilities.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_autoloads","description":"Lists all registered autoload singletons in the project. Shows name, path, and enabled status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_connections","description":"Lists all signal connections in a scene. Use to understand event flow or debug connection issues.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_export_presets","description":"Lists all export presets defined in export_presets.cfg. Use before export_project to see available targets (Windows, Linux, Android, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_plugins","description":"Lists all plugins in addons/ folder with enabled/disabled status. Use before enable_plugin or disable_plugin to see available plugins.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_projects","description":"Scans a directory for Godot projects (folders containing project.godot). Use to discover projects before using other tools. Returns array of {path, name}.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_scene_nodes","description":"Returns complete scene tree structure with all nodes, types, and hierarchy. Use to understand scene organization before modifying. Returns nested tree with node paths.","write_action":false,"price_micros":0,"input_schema":null},{"name":"load_sprite","description":"Assigns 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lsp_get_completions","description":"Get code completions from Godot Language Server at a given position.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lsp_get_diagnostics","description":"Get GDScript diagnostics from Godot Language Server for a script file.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lsp_get_hover","description":"Get hover information from Godot Language Server at a given position.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lsp_get_symbols","description":"Get document symbols for a GDScript file from Godot Language Server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"modify_resource","description":"Modify properties of an existing resource file (.tres/.res). Use to update materials, environments, themes, or any saved resource without recreating it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"modify_script","description":"Adds functions, variables, or signals to an existing GDScript. Use to extend scripts without manual editing. Supports @export, @onready annotations and type hints.","write_action":false,"price_micros":0,"input_schema":null},{"name":"parse_error_log","description":"Parses Godot error log and provides fix suggestions. Use to diagnose runtime errors or script issues.","write_action":false,"price_micros":0,"input_schema":null},{"name":"query_class_info","description":"Get 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"query_classes","description":"Query 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"reimport_resource","description":"Forces reimport of resources. Use after modifying source files or to fix import issues. Can reimport single file or all modified.","write_action":false,"price_micros":0,"input_schema":null},{"name":"remove_autoload","description":"Unregisters an autoload singleton. Use to remove global managers no longer needed.","write_action":true,"price_micros":0,"input_schema":null},{"name":"reparent_node","description":"Moves 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"run_project","description":"Launches 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"save_scene","description":"Saves 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_assets","description":"Search for CC0 assets across multiple sources (Poly Haven, AmbientCG, Kenney). Returns results sorted by provider priority.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_project","description":"Searches for text or regex patterns across project files. Use to find function usages, variable references, or TODOs. Returns file paths and line numbers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_audio_bus_effect","description":"Adds or configures an audio effect on a bus. Use for reverb, delay, EQ, compression, etc.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_audio_bus_volume","description":"Sets volume for an audio bus in decibels. Use to balance audio levels.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_import_options","description":"Modifies import settings for a resource. Use to change compression, mipmaps, filter mode. Triggers reimport by default.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_main_scene","description":"Sets which scene loads first when the game starts. Updates application/run/main_scene in project.godot.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_node_properties","description":"Sets 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_project_setting","description":"Writes a value to project.godot settings. Use to configure game name, window size, physics, etc.","write_action":true,"price_micros":0,"input_schema":null},{"name":"set_runtime_property","description":"Set a property on a node in a running Godot instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_theme_color","description":"Set a color in a Theme resource","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_theme_font_size","description":"Set a font size in a Theme resource","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_tilemap_cells","description":"Places tiles in a TileMap node. Use to programmatically generate levels or modify existing tilemaps.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stop_project","description":"Terminates the currently running Godot project process. Use to stop a project started with run_project. No effect if no project is running.","write_action":false,"price_micros":0,"input_schema":null},{"name":"update_project_uids","description":"Update UID references in a Godot project by resaving resources (for Godot 4.4+)","write_action":true,"price_micros":0,"input_schema":null},{"name":"validate_project","description":"Checks project for export issues: missing resources, script errors, configuration problems. Use before export_project.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-28T14:27:01.481Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-09-28T14:27:01.432Z","components":{"code":{"score":25,"max":25,"notes":["14 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 16 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"gopeak","version":"2.0.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-02-20T02:10:54.378Z","repositoryUrl":"git+https://github.com/HaD0Yun/godot-mcp.git"}],"repo":{"found":true,"owner":"HaD0Yun","repo":"godot-mcp","archived":false,"pushedAt":"2026-09-12T13:23:34Z","stars":261,"forks":26,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/102889891?v=4","ownerCreatedAt":"2022-04-03T03:57:14Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/102889891?v=4&s=128","source":"github"},"presence":{"stars":261,"forks":26,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-12T13:23:34.000Z","score":38}}}},"grade_history":[],"reviews":[]}