Godot MCP
Edit Godot 4 scenes, nodes and scripts; run, test and debug games live in the editor or headless.
Connector by shin2344234 · GitHub account verified by the MCP Registry
Chalk Labs
Need help deploying Godot MCP?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/shin2344234-godot-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Nov 1, 2026.
- Tools
- 20 read · 23 write · 6 delete · 30 not yet classified
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Node.js package
Tools by what they do 79
Read from the source code; the running server may list different tools.
Read 20 · Look things up without changing anything.
anim.readanim.tree_readcode.lookupdocs.searchfiles.listfiles.readfiles.searchgame.getgame.screenshotgodot_call_readgodot_toolsgrid.read
Show 8 more tools
node.findproject.infoproject.validateresource.readsignal.liststatusvisual.shader_checkvisual.shader_graph_read
Write 23 · Create, change, send or run things.
addon.installbatch.applycode.renameexport.preset_setexport.runfiles.editfiles.movefiles.writegame.recordgrid.editimport.getimport.set
Show 11 more tools
input.editnode.moveproject.setresource.createresource.setrun.outputrun.startrun.stopscene.closetest.runtileset.edit
Delete 6 · Delete, drop, revoke or wipe things.
anim.editaudio.editautoload.editfiles.deletegame.editgodot_call_write
Not yet classified 30 · We could not tell from the name and description.
anim.framesanim.treeaudio.busescode.diagnosticscode.symbolsdebug.breakpointsdebug.controldebug.statedocs.classeditor.launcheditor.logseditor.ui
Show 18 more tools
export.presetsgame.evalgame.inputgame.perfgame.timegame.treenavigation.bakenavigation.pathnode.groupsnode.instanceproject.pluginsproject.settingsresource.depsscene.inheritsignal.connectsignal.disconnectvisual.layoutvisual.shader_graph
Secrets and settings it asks for
Other settings (environment variables or headers).
GODOT_MCP_ALLOW_EVALGODOT_MCP_BRIDGE_TIMEOUT_MSGODOT_MCP_CACHE_DIRGODOT_MCP_CONFIRMGODOT_MCP_HEADLESS_TIMEOUT_MSGODOT_MCP_LOG_LEVELGODOT_MCP_LSP_IDLE_MSGODOT_MCP_LSP_PORTGODOT_MCP_LSP_TIMEOUT_MSGODOT_MCP_MODEGODOT_MCP_READ_ONLYGODOT_MCP_TOOLSETS
Show 2 more settings
GODOT_PATHGODOT_PROJECT_PATH
Network hosts it talks to 3
github.com· found in codegodotengine.org· found in coderaw.githubusercontent.com· found in code
Files it touches
- Your home directory (~)
Tools (79)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
addon.installInstall the editor addonGodot addon: install or update addons/godot_mcp (the editor bridge and game runtime this server needs) from the copy bundled with the server, and enable it in project.godot.
anim.editEdit animationsGodot animation: create/remove/rename animations and add tracks and keys on an AnimationPlayer. ops run in order as one undo step; track paths are "Node:property" relative to the player's root_node.
anim.framesEdit SpriteFramesGodot animation: read or edit the SpriteFrames of an AnimatedSprite2D/3D (or a .tres): add/rename/remove animations, speed/loop, frames cut from a sprite sheet. No ops = summary.
anim.readRead animationsGodot animation: list an AnimationPlayer's libraries and animations, or with animation the tracks and keys of one. Pass library (a .tres) instead of a scene player to read an AnimationLibrary file.
anim.treeEdit AnimationTreeGodot animation: build an AnimationTree state machine, blend space or blend tree (states, transitions, start/end, blend points). ops run in order as one undo step.
anim.tree_readRead AnimationTreeGodot animation: show an AnimationTree's graph (states, transitions, blend points, blend tree nodes) and its parameters.
audio.busesRead audio busesGodot audio: list the audio buses (volume, mute, solo, send) and their effects from the project's bus layout.
audio.editEdit audio busesGodot audio: add, remove, rename, move and set buses (volume, mute, solo, send) and their effects; saves the bus layout.
autoload.editEdit autoloadsGodot project: add, remove or reorder autoloads (global singletons loaded at startup).
batch.applyBatch scene editsGodot scene: apply up to 100 scene edits (node.add, node.set, signal.connect, ...) to one scene in order, all-or-nothing; one undo step in the editor.
code.diagnosticsGDScript diagnosticsGodot code: GDScript errors and warnings for .gd files or a folder, from the language server.
code.lookupGDScript lookupGodot code: hover docs, definition, references, signature, completion or highlights at a position in a .gd file.
code.renameRename GDScript symbolGodot code: rename a GDScript symbol across the project via the language server (skips comments/strings). dry_run previews.
code.symbolsGDScript symbolsGodot code: outline of a .gd file (funcs, signals, vars, consts, classes with lines), or find symbols by name with query.
debug.breakpointsBreakpointsGodot debug: list, add, remove or clear breakpoints of a game started with godot_run_start (process mode), running or stopped.
Show 64 more tools
debug.controlDebug controlGodot debug: continue, pause, step_into/over/out (returns the new location and locals), or evaluate an expression in a stopped game (process runs).
debug.stateDebug stateGodot debug: is the game stopped (breakpoint, error, pause)? Call stack and variables (locals, members, globals) of a frame.
docs.classGodot class docsGodot docs: class reference for an engine or project class, or one member ("Class.member"), as markdown.
docs.searchSearch Godot docsGodot docs: search the offline class reference (engine + project classes) by class/member name or words.
editor.launchLaunch editorGodot editor: open this project in the Godot editor and wait until the MCP plugin connects (the plugin must be enabled in the project).
editor.logsEditor logGodot editor: read messages, warnings and errors printed by the editor process (plugin and tool scripts, import errors; not a running game's prints). Repeats are merged with a count. Page with "since".
editor.uiEditor UIGodot editor: get/set the selected nodes, open a script at a line, save all scenes and scripts, or show a toast.
export.preset_setEdit export presetGodot export: change an export preset's fields/options, or create a preset, in export_presets.cfg.
export.presetsExport presetsGodot export: list export presets (platform, path, filters, options; secrets redacted) and whether export templates are installed.
export.runExport projectGodot export: build the game with an export preset (release, debug, pack-only .pck/.zip, or patch); long-running.
files.deleteDelete fileGodot files: delete a file (and its .uid/.import sidecars). Deleting a folder requires recursive: true. This cannot be undone.
files.editEdit fileGodot files: replace an exact snippet in a text file (old_text -> new_text). old_text must match exactly once unless replace_all. GDScript files are then checked for parse and type errors (as godot_script_validate).
files.listList filesGodot files: list a project folder (res://...). Skips .godot/ and .git/; hides .uid/.import sidecars and, when recursive, addons/ contents unless all. Use recursive with a glob-like "pattern" (e.g. "*.tscn") to find files by type.
files.moveMove or rename fileGodot files: move or rename a file or folder, carrying its .uid/.import sidecar files. References by uid:// keep working; plain res:// references in other files are NOT updated.
files.readRead fileGodot files: read a text file (script, scene .tscn, resource .tres, shader, config) with line numbers. Use offset/limit for long files.
files.searchSearch filesGodot files: search text across project files (scripts, scenes, resources, shaders). Literal by default; set regex for a regular expression.
files.writeWrite fileGodot files: create or overwrite a text file (e.g. a .gd script or .gdshader). GDScript files are then checked for parse and type errors (as godot_script_validate). Prefer godot_files_edit for small changes to existing files.
game.editChange live gameGodot game: change the running game with ops in order: set properties, call a method (returns its value, awaits coroutines), spawn, remove, change/reload scene. Stops at the first failing op; earlier ops stay (no undo, nothing saved).
game.evalEvaluate code in gameGodot game: evaluate code in the running game: an Expression with self = node (default; autoloads and singletons by name), or a GDScript body of func run(node, tree, inputs) (use return). Off unless the server runs with --allow-eval.
game.getRead live nodeGodot game: current values of a live node: script variables and non-default properties (or listed ones, "prop:sub" ok), groups; optionally signal connections and script methods.
game.inputSend input to gameGodot game: send input steps in order (keys, actions, clicks on positions or nodes, drags, scroll, typing, joypad, touch, waits). Reports the Control and physics object under each click.
game.perfGame performanceGodot game: performance monitors of the running game (fps, frame times, memory, objects, draw calls...); optionally sample frames (stats, spikes) and profile script functions.
game.recordRecord/replay game inputGodot game: record the game's input events (real and injected) with timestamps, stop to get them as compact JSON (or save to a file), and replay them with the original timing.
game.screenshotGame screenshotGodot game: screenshot the running game (window, a node's viewport, or a region) or the editor's 2D/3D view, scaled down. Can save it and diff against a saved image.
game.timeGame time controlGodot game: pause/resume the whole game (Godot's suspend: no node processes; SceneTree.paused untouched), step frames or physics ticks, set speed, or wait for a node, signal, condition, frames or seconds.
game.treeLive game treeGodot game: the running game's live nodes as a flat list (path, class, script, rect/pos, visible text). Filters list matches only; text "Start" finds the button to click.
godot_call_readRun a read-only Godot operationread-onlyGodot router: run any read-only operation found with godot_tools (inspect scenes, nodes, files, output).
godot_call_writeRun a Godot operation that changes thingscan change or delete dataGodot router: run any operation found with godot_tools that changes the project, scenes, files or editor state.
godot_toolsFind Godot operationsread-onlyDescription is built at runtime.
grid.editEdit tile/grid mapGodot world: paint a TileMapLayer/GridMap with ordered ops (set, erase, fill_rect, terrain; clear wipes all cells). One undo step.
grid.readRead tile/grid mapGodot world: read a TileMapLayer/GridMap: cells, bounds and the TileSet tiles/terrains or MeshLibrary items to paint with.
import.getGet import settingsGodot import: show an asset's importer, non-default options (full: all), uid and whether its imported files exist (imports new assets first).
import.setChange import settingsGodot import: change an asset's import options (or importer) and reimport it.
input.editEdit input mapGodot project: edit the input map (actions and their key/mouse/gamepad bindings), applied in order and saved to project.godot.
navigation.bakeBake navigationGodot world: bake a NavigationRegion2D/3D from its child colliders, meshes, GridMaps and TileMapLayers.
navigation.pathNavigation pathGodot world: shortest path between two points over the scene's baked navigation regions.
node.findFind nodesGodot node: find nodes in a scene by name (glob/substring), type (incl. subclasses), group, script or property value.
node.groupsEdit node groupsGodot node: add or remove a node's groups (saved in the scene). Undoable in the editor.
node.instanceInstance sceneGodot node: instance a .tscn as a linked sub-scene under a parent, optionally with Editable Children. Undoable in the editor.
node.moveReorder nodeGodot node: move a node to another position among its siblings (draw/process order). Undoable in the editor.
project.infoProject infoGodot project facts from project.godot: name, Godot version, main scene, autoloads, input action names, renderer, enabled plugins, C# and test framework detection.
project.pluginsEditor pluginsGodot project: enable or disable editor plugins (addons) and list the available ones.
project.setSet project settingsGodot project: change project settings (project.godot); null resets one to its default. Values are converted to each setting's type.
project.settingsRead project settingsGodot project settings: read raw values from project.godot, filtered by key prefix (e.g. "display/window", "input/jump"). Only non-default values are stored in the file.
project.validateValidate projectGodot project: health check for missing dependencies, stale or duplicate UIDs, script compile errors, broken autoloads, main scene and plugins.
resource.createCreate resourceGodot resource: create a resource file of any Resource class (materials, Theme, Gradient, shapes...) or a .gdshader with code.
resource.depsResource dependenciesGodot resource: list a file's dependencies (missing ones flagged), optionally the files that use it; resolves uid:// paths.
resource.readRead resourceGodot resource: read a .tres/.res/.gdshader (or uid://): class, uid, non-default properties, shader uniforms, theme items.
resource.setSet resource propertiesGodot resource: set properties of an existing resource file and save it (undoable in the editor; open scenes update).
run.outputGame outputGodot run: read output and errors of a game started with godot_run_start (process or editor mode). Use level "error" to see only errors, and "since" (the "next" value from the last call) to page.
run.startRun gameGodot run: start the game (main scene, the current scene, or a given scene). Returns a run_id; read errors and prints with godot_run_output, stop with godot_run_stop.
run.stopStop gameGodot run: stop a running game (the given run_id, the latest process run, or the game playing in the editor).
scene.closeClose scene tabGodot scene: close a scene tab in the editor. Refuses unsaved changes unless save or discard is true.
scene.inheritNew inherited sceneGodot scene: create a new scene file that inherits a base scene (like "New Inherited Scene"); opens it in the editor.
signal.connectConnect signalGodot signal: connect a node's signal to a method (saved in the scene), optionally creating the handler stub in the target's script.
signal.disconnectDisconnect signalGodot signal: remove a saved signal connection from a scene. Undoable in the editor.
signal.listList signal connectionsGodot signal: list saved signal connections of a node or scene and flag problems (missing/mismatched handlers, unconnected _on_* methods).
statusStatusGodot status: call this first. Shows the project, whether the live editor is connected (open scenes, unsaved changes, playing state), the Godot executable found, and running games.
test.runRun testsGodot test: run GUT or GdUnit4 tests headlessly (all, a folder, a file or one test name); returns totals and failures with file:line.
tileset.editEdit TileSetGodot world: create/edit a TileSet .tres: atlas sources, collision (one-way), navigation, occlusion, terrains, custom data, per-tile values, alternative tiles, animation. Saved at once.
visual.layoutControl layoutGodot visual: apply a Control layout preset, anchors/offsets, size flags or minimum size. Undoable.
visual.shader_checkCheck shaderGodot visual: compile shader code or a .gdshader/VisualShader file and report errors with line numbers.
visual.shader_graphEdit visual shaderGodot visual: edit or create a VisualShader .tres with ordered node ops (add, connect, set...).
visual.shader_graph_readRead visual shaderGodot visual: list a VisualShader's nodes (id, class, properties) and connections per shader type.
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 16, 2026 (16 days ago)
- Last release
- Oct 16, 2026 (16 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.shin2344234/godot-mcp- Version
- 0.1.2
- Auth
- No auth
- Packages
- npm @shin2344234/godot-mcp
- License
- MIT
- Repository
- github.com/shin2344234/godot-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
More from shin2344234
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get Godot MCP running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
Godot MCP. Agent Mart. https://agentmart.dev/connectors/shin2344234-godot-mcp (last updated 2026-10-24)