Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Godot MCP

NPM · @SHIN2344234/GODOT-MCP

Edit Godot 4 scenes, nodes and scripts; run, test and debug games live in the editor or headless.

+3 this week 80 Trust /100

Last scanned (3 hours ago)

Scores higher than 66% of npm servers

Category Developer Tools

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security99
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 2 of 13 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 19 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability79
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 11717 tokens (~81/item across 143 items; 91 tools + 52 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management67
  • Stability observed for 20 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage88
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 65% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 93 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.

  • 29 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

  • 25 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.

  • 23 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed npm/@shin2344234/godot-mcp@0.1.2

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 13 packages
Packages resolved 13
Stale 2
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 91 exposed · ~9,099 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
godot_addon_install ~52

Godot 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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

godot_anim_edit ~114

Godot 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.

NameTypeReqDescription
allow_missingboolean–Skip existence checks.
animationstring–Default animation for ops that omit it.
opsarrayyes–
playerstring–AnimationPlayer path; optional if the scene has one.
scenestring–Scene; required headless.

No output schema declared.

No examples provided.

godot_anim_frames ~114

Godot 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.

NameTypeReqDescription
nodestring–AnimatedSprite2D/3D; optional if the scene has one.
opsarray––
pathstring–SpriteFrames .tres instead of a node.
scenestring–Scene; required headless.

No output schema declared.

No examples provided.

godot_anim_read ~131

Godot 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.

NameTypeReqDescription
animationstring–"name" or "library/name": include its tracks.
librarystring–AnimationLibrary .tres instead of a player.
max_keysnumber–Keys per track (default 50).
playerstring–AnimationPlayer path; optional if the scene has one.
scenestring–Scene; required headless.

No output schema declared.

No examples provided.

godot_anim_tree ~112

Godot 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.

NameTypeReqDescription
allow_missingboolean–Skip existence checks.
nestedstring–Edit a nested graph, e.g. "Locomotion".
opsarrayyes–
scenestring–Scene; required headless.
treestring–AnimationTree path; optional if the scene has one.

No output schema declared.

No examples provided.

godot_anim_tree_read ~73

Godot animation: show an AnimationTree's graph (states, transitions, blend points, blend tree nodes) and its parameters.

NameTypeReqDescription
parametersboolean––
scenestring–Scene; required headless.
treestring–AnimationTree path; optional if the scene has one.

No output schema declared.

No examples provided.

godot_audio_buses ~37

Godot audio: list the audio buses (volume, mute, solo, send) and their effects from the project's bus layout.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

godot_audio_edit ~49

Godot audio: add, remove, rename, move and set buses (volume, mute, solo, send) and their effects; saves the bus layout.

NameTypeReqDescription
opsarrayyes–

No output schema declared.

No examples provided.

godot_autoload_edit ~110

Godot project: add, remove or reorder autoloads (global singletons loaded at startup).

NameTypeReqDescription
indexinteger–Load position (0 = first); required for move.
namestringyesAutoload name, e.g. "GameState".
opstringyes–
pathstring–add: script or scene, e.g. "res://game_state.gd".
singletonboolean–Register as a global name (default true).

No output schema declared.

No examples provided.

godot_batch_apply ~90

Godot 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.

NameTypeReqDescription
opsarrayyesLater ops see earlier ones (add a node, then set it).
scenestring–Scene file; defaults to the edited scene, required without the editor.

No output schema declared.

No examples provided.

godot_code_diagnostics ~49

Godot code: GDScript errors and warnings for .gd files or a folder, from the language server.

NameTypeReqDescription
pathsarrayyes.gd files or folders (res://).

No output schema declared.

No examples provided.

godot_code_lookup ~107

Godot code: hover docs, definition, references, signature, completion or highlights at a position in a .gd file.

NameTypeReqDescription
columninteger–1-based column; or give symbol.
kindstring––
limitinteger–Max completion items.
lineintegeryes1-based line.
pathstringyes.gd file (res://).
symbolstring–Identifier text on that line (instead of column).

No output schema declared.

No examples provided.

godot_code_rename ~127

Godot code: rename a GDScript symbol across the project via the language server (skips comments/strings). dry_run previews.

NameTypeReqDescription
columninteger–1-based column; or give symbol.
dry_runboolean––
include_commentsboolean–Also rename matches in comments/strings.
lineintegeryes1-based line.
new_namestringyesNew identifier.
pathstringyes.gd file (res://).
symbolstring–Identifier text on that line (instead of column).

No output schema declared.

No examples provided.

godot_code_symbols ~76

Godot code: outline of a .gd file (funcs, signals, vars, consts, classes with lines), or find symbols by name with query.

NameTypeReqDescription
pathstring–.gd file to outline, or folder to search with query.
querystring–Name substring to search for across scripts.

No output schema declared.

No examples provided.

godot_debug_breakpoints ~83

Godot debug: list, add, remove or clear breakpoints of a game started with godot_run_start (process mode), running or stopped.

NameTypeReqDescription
actionstring––
breakpointsarray–"res://player.gd:42" or {file, line}.
run_idstring–Default: newest process run.

No output schema declared.

No examples provided.

godot_debug_control ~134

Godot debug: continue, pause, step_into/over/out (returns the new location and locals), or evaluate an expression in a stopped game (process runs).

NameTypeReqDescription
actionstringyes–
expressionstring–evaluate: a Godot Expression; sees locals, self's members/methods, autoloads. Can have side effects.
frameinteger–evaluate: stack frame (0 = innermost).
run_idstring–Default: newest process run.
waitnumber–Seconds to wait for the next stop (default 10; continue 0).

No output schema declared.

No examples provided.

godot_debug_state ~122

Godot debug: is the game stopped (breakpoint, error, pause)? Call stack and variables (locals, members, globals) of a frame.

NameTypeReqDescription
expandarray–Object variables to open, e.g. ["self","body"].
frameinteger–Frame for variables (0 = innermost).
globalsboolean–Also globals (autoloads).
run_idstring–Default: newest process run.
variablesboolean––
waitnumber–Seconds to wait for a stop.

No output schema declared.

No examples provided.

godot_docs_class ~116

Godot docs: class reference for an engine or project class, or one member ("Class.member"), as markdown.

NameTypeReqDescription
inheritedboolean–Also list inherited member names.
max_charsinteger–Cap on the whole result; default 4000, 12000 with members/inherited.
membersboolean–List members with one-line briefs.
namestringyese.g. "CharacterBody2D", "Node.add_child", "@GDScript.preload", a project class_name.

No output schema declared.

No examples provided.

godot_docs_search ~73

Godot docs: search the offline class reference (engine + project classes) by class/member name or words.

NameTypeReqDescription
kindstring––
limitinteger––
querystringyese.g. "move_and_slide", "Timer", "Node2D.rot", "play sound".

No output schema declared.

No examples provided.

godot_editor_launch ~65

Godot editor: open this project in the Godot editor and wait until the MCP plugin connects (the plugin must be enabled in the project).

NameTypeReqDescription
headlessboolean–Run the editor without a window (automation, CI).
wait_secondsinteger––

No output schema declared.

No examples provided.

godot_editor_logs ~75

Godot 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".

NameTypeReqDescription
levelstring––
limitinteger––
sinceinteger––

No output schema declared.

No examples provided.

godot_editor_ui ~116

Godot editor: get/set the selected nodes, open a script at a line, save all scenes and scripts, or show a toast.

NameTypeReqDescription
actionstringyes–
columninteger––
lineinteger––
messagestring–toast text.
pathsarray–select: node paths ([] clears).
scenestring–select/get_selection: scene to open first.
scriptstring–open_script: res:// path.
severitystring––

No output schema declared.

No examples provided.

godot_export_preset_set ~97

Godot export: change an export preset's fields/options, or create a preset, in export_presets.cfg.

NameTypeReqDescription
allow_new_keysboolean––
allow_secretsboolean––
createobject––
preset––Preset name or index.
setobject–e.g. {"export_path": "build/game.exe", "binary_format/embed_pck": true}.

No output schema declared.

No examples provided.

godot_export_presets ~50

Godot export: list export presets (platform, path, filters, options; secrets redacted) and whether export templates are installed.

NameTypeReqDescription
preset––Show one preset with all its options.

No output schema declared.

No examples provided.

godot_export_run ~133

Godot export: build the game with an export preset (release, debug, pack-only .pck/.zip, or patch); long-running.

NameTypeReqDescription
allow_outside_projectboolean–Allow an absolute output path outside the project.
modestring––
outputstring–Output file; default the preset's export_path. Relative = inside the project.
patchesarray–patch: base .pck files (default: the preset's patches).
presetstringyesPreset name (see godot_export_presets).
timeout_sinteger––

No output schema declared.

No examples provided.

godot_files_delete ~55

Godot files: delete a file (and its .uid/.import sidecars). Deleting a folder requires recursive: true. This cannot be undone.

NameTypeReqDescription
pathstringyes–
recursiveboolean––

No output schema declared.

No examples provided.

godot_files_edit ~105

Godot 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).

NameTypeReqDescription
new_textstringyes–
old_textstringyesExact text to find, including indentation (tabs vs spaces matter in GDScript).
pathstringyes–
replace_allboolean––

No output schema declared.

No examples provided.

godot_files_list ~135

Godot 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.

NameTypeReqDescription
allboolean––
maxinteger––
pathstring–Folder to list, e.g. "res://scenes".
patternstring–Filter file names, e.g. "*.gd" or "*player*".
recursiveboolean––

No output schema declared.

No examples provided.

godot_files_move ~64

Godot 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.

NameTypeReqDescription
fromstringyes–
tostringyes–

No output schema declared.

No examples provided.

godot_files_read ~91

Godot files: read a text file (script, scene .tscn, resource .tres, shader, config) with line numbers. Use offset/limit for long files.

NameTypeReqDescription
limitinteger–Maximum number of lines.
offsetinteger–First line to return (1-based).
pathstringyesFile path, e.g. "res://player.gd".

No output schema declared.

No examples provided.

godot_files_search ~98

Godot files: search text across project files (scripts, scenes, resources, shaders). Literal by default; set regex for a regular expression.

NameTypeReqDescription
case_sensitiveboolean––
max_resultsinteger––
pathstring–Folder to search in.
patternstring–Only files whose name matches, e.g. "*.gd".
querystringyes–
regexboolean––

No output schema declared.

No examples provided.

godot_files_write ~109

Godot 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.

NameTypeReqDescription
contentstringyes–
overwriteboolean–Set false to fail instead of replacing an existing file.
pathstringyesFile path, e.g. "res://scripts/enemy.gd".

No output schema declared.

No examples provided.

godot_game_edit ~84

Godot 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).

NameTypeReqDescription
opsarrayyes–
run_idstring–Default: newest running game.

No output schema declared.

No examples provided.

godot_game_eval ~131

Godot 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.

NameTypeReqDescription
codestringyes–
inputsobject–Named values for the code.
modestring––
pathstring–Node path: relative to the current scene (default ".") or /root/....
run_idstring–Default: newest running game.

No output schema declared.

No examples provided.

godot_game_get ~124

Godot 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.

NameTypeReqDescription
methodsboolean––
pathstring–Node path: relative to the current scene (default ".") or /root/....
propertiesarray–Only these; "get_x()" calls a getter; ["*"] = all incl. defaults.
run_idstring–Default: newest running game.
signalsboolean––

No output schema declared.

No examples provided.

godot_game_input ~73

Godot 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.

NameTypeReqDescription
run_idstring–Default: newest game.
stepsarrayyes–

No output schema declared.

No examples provided.

godot_game_perf ~134

Godot game: performance monitors of the running game (fps, frame times, memory, objects, draw calls...); optionally sample frames (stats, spikes) and profile script functions.

NameTypeReqDescription
monitorsboolean–Full monitor snapshot. Default: only when no sample/profile is asked for.
profile_scripts_secondsnumber–Top script functions by self time (process runs).
run_idstring–Default: newest run, else the editor's game.
sample_secondsnumber–Record every frame: min/avg/p95/max, spikes.
topinteger–Functions to list.

No output schema declared.

No examples provided.

godot_game_record ~118

Godot 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.

NameTypeReqDescription
actionstringyes–
pathstring–stop: save JSON here (user:// or res://); replay: load from here.
recordingobject–replay: the object stop returned.
run_idstring–Default: newest game.
speednumber–replay speed (default 1).

No output schema declared.

No examples provided.

godot_game_screenshot ~205

Godot 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.

NameTypeReqDescription
compare_tostring–Saved image to diff with (full resolution; changed_rect in viewport px).
formatstring––
max_sizeinteger–Longest side, px.
nodestring–Node to frame (crop to its screen rect), or a viewport.
qualitynumber–JPEG; default 0.85.
regionobject–Crop, in image px (window px with stretch).
run_idstring–Default: newest run, else the editor's game.
save_tostring–user:// or res:// .png/.jpg (full size).
sourcestring––
toleranceinteger–Per-channel diff threshold.

No output schema declared.

No examples provided.

godot_game_time ~193

Godot 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.

NameTypeReqDescription
actionstringyes–
conditionstring–Expression on node, e.g. "position.x > 300".
framesinteger–step: frames to advance (default 1); wait_for: frames.
nodestring–wait_for: node to appear; signal emitter; condition base.
physics_ticksinteger–step: exactly N physics ticks instead.
run_idstring–Default: newest game.
scalenumber–speed: 1 = normal.
secondsnumber–wait_for: game seconds.
signalstring––
timeout_msinteger––

No output schema declared.

No examples provided.

godot_game_tree ~146

Godot 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.

NameTypeReqDescription
classstring–Incl. subclasses.
depthinteger––
groupstring––
max_nodesinteger–Default 150.
namestring–Name contains.
rootstring–Default: current scene; "/root" adds autoloads.
run_idstring–Default: newest running game.
textstring–Visible text contains (Label, Button, LineEdit...).

No output schema declared.

No examples provided.

godot_grid_edit ~89

Godot world: paint a TileMapLayer/GridMap with ordered ops (set, erase, fill_rect, terrain; clear wipes all cells). One undo step.

NameTypeReqDescription
opsarrayyesset/erase/terrain take cells and/or rect. Max 10000 cells.
pathstringyes–
scenestring–Scene; default edited one (required headless)

No output schema declared.

No examples provided.

godot_grid_read ~97

Godot world: read a TileMapLayer/GridMap: cells, bounds and the TileSet tiles/terrains or MeshLibrary items to paint with.

NameTypeReqDescription
limitinteger––
pathstringyes–
regionobject–{x,y,w,h}; GridMap +z,d
scenestring–Scene; default edited one (required headless)
summary_onlyboolean––

No output schema declared.

No examples provided.

godot_import_get ~66

Godot import: show an asset's importer, non-default options (full: all), uid and whether its imported files exist (imports new assets first).

NameTypeReqDescription
fullboolean––
pathstringyesImported asset, e.g. "res://icon.svg".

No output schema declared.

No examples provided.

godot_import_set ~90

Godot import: change an asset's import options (or importer) and reimport it.

NameTypeReqDescription
importerstring–Switch importer, e.g. "image", "keep".
optionsobject–Option keys from import.get (full), e.g. {"compress/mode": 2}.
pathstringyesImported asset, e.g. "res://icon.svg".

No output schema declared.

No examples provided.

godot_input_edit ~47

Godot project: edit the input map (actions and their key/mouse/gamepad bindings), applied in order and saved to project.godot.

NameTypeReqDescription
opsarrayyes–

No output schema declared.

No examples provided.

godot_navigation_bake ~89

Godot world: bake a NavigationRegion2D/3D from its child colliders, meshes, GridMaps and TileMapLayers.

NameTypeReqDescription
agent_radiusnumber––
outlinearray–2D walkable polygon
pathstring–Region; default the only one
scenestring–Scene; default edited one (required headless)

No output schema declared.

No examples provided.

godot_navigation_path ~87

Godot world: shortest path between two points over the scene's baked navigation regions.

NameTypeReqDescription
fromarrayyes[x,y] or [x,y,z]
layersnumber––
optimizeboolean––
pathstring––
scenestring–Scene; default edited one (required headless)
toarrayyes–

No output schema declared.

No examples provided.

godot_node_add ~235

Godot node: add a node of a built-in type (e.g. Sprite2D, CollisionShape2D, Label) or an instance of a .tscn scene, with optional initial properties. Undoable in the editor.

NameTypeReqDescription
indexinteger–Child position; omit to append.
instancestring–Scene to instance, e.g. "res://enemy.tscn".
namestring––
parentstring–Parent node path; "." for the scene root.
propertiesobject–Property values. Godot types accept literals ("Vector2(10, 20)"), arrays ([10, 20]), "#ff0000" colors, "res://" paths to load resources, or {"new": "CircleShape2D", "properties": {...}}.
scenestring–Scene file, e.g. "res://main.tscn". Defaults to the scene open in the editor; required when the editor is closed.
typestring–Node class, e.g. "Sprite2D". Give type or instance.

No output schema declared.

No examples provided.

godot_node_duplicate ~102

Godot node: duplicate a node (with children, script and properties) next to the original.

NameTypeReqDescription
namestring––
pathstringyesNode path relative to the scene root ("." is the root), e.g. "Player/Sprite2D".
scenestring–Scene file, e.g. "res://main.tscn". Defaults to the scene open in the editor; required when the editor is closed.

No output schema declared.

No examples provided.

Install

How do I install the Godot MCP server?

Godot MCP runs locally as an npm package, launched with npx -y @shin2344234/godot-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @shin2344234/godot-mcp

# add to Claude Code
claude mcp add shin2344234-godot-mcp -- npx -y @shin2344234/godot-mcp
Common questions

What is the Godot MCP server?

Godot MCP is listed in the public MCP registry as io.github.shin2344234/godot-mcp. Edit Godot 4 scenes, nodes and scripts; run, test and debug games live in the editor or headless. This page covers its npm package (@shin2344234/godot-mcp).

Is the Godot MCP server safe to use?

Godot MCP scores 80 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Godot MCP server expose?

Godot MCP exposes 91 tools: godot_status, godot_addon_install, godot_project_info, godot_project_settings, godot_files_list, and 86 more. Their descriptions and schemas cost roughly 9,099 tokens of context every time the server is loaded.

Is the Godot MCP server still maintained?

Godot MCP is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Godot MCP server under?

Godot MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.