Godot MCP Pro

Servidor MCP premium para el motor de juegos Godot con 84 herramientas impulsadas por IA para edición de escenas, scripting, animación, tilemap, shader, simulación de entrada y depuración en tiempo de ejecución.

Documentación

Godot MCP Pro

Servidor MCP (Model Context Protocol) premium para desarrollo de juegos en Godot impulsado por IA. Conecta asistentes de IA como Claude directamente a tu editor de Godot con 187 herramientas potentes.

Arquitectura

AI Assistant ←—stdio/MCP—→ Node.js Server ←—WebSocket:6505—→ Godot Editor Plugin
  • Tiempo real: La conexión WebSocket proporciona retroalimentación instantánea, sin sondeo de archivos
  • Integración con el editor: Acceso completo a la API del editor de Godot, sistema UndoRedo y árbol de escenas
  • JSON-RPC 2.0: Protocolo estándar con códigos de error y sugerencias adecuados

Qué hay en este repositorio

⚠️ Este repositorio público solo contiene el addon/plugin gratuito de Godot. El servidor MCP (Node.js, necesario para conectar asistentes de IA) se distribuye como parte del paquete de pago — compra única, actualizaciones de por vida:

El zip de pago incluye el addon, el directorio server/ con JavaScript precompilado, INSTALL.md e instrucciones para clientes de IA. Si clonaste este repositorio y no ves una carpeta server/, eso es lo esperado — obtén el paquete completo desde uno de los enlaces anteriores.

Inicio rápido

1. Instala el Plugin de Godot

Copia la carpeta addons/godot_mcp/ dentro del directorio addons/ de tu proyecto de Godot.

Habilita el plugin: Proyecto → Configuración del proyecto → Plugins → Godot MCP Pro → Habilitar

2. Instala el Servidor MCP

El directorio server/ solo se incluye en el paquete completo de pago (ver arriba). Después de descargar y extraer el zip, ejecuta:

cd server
npm install
npm run build

3. Configura Claude Code

Añade a tu .mcp.json:

{
  "mcpServers": {
    "godot-mcp-pro": {
      "command": "node",
      "args": ["/path/to/server/build/index.js"],
      "env": {
        "GODOT_MCP_PORT": "6505"
      }
    }
  }
}

4. Elige tu Modo

Godot MCP Pro ofrece cuatro modos para adaptarse al límite de herramientas de cualquier cliente:

ModoHerramientasMejor para
Completo (predeterminado)187Claude Code, Cline, VS Code Copilot, Cursor
3D (--3d)100Antigravity y otros clientes con límite de 100 herramientas que necesitan 3D
Ligero (--lite)88Windsurf, JetBrains Junie, Gemini CLI
Mínimo (--minimal)35OpenCode, LLMs locales con contexto pequeño

--3d incluye las herramientas principales más física, AnimationTree y navegación, pero omite uid_to_project_path, project_path_to_uid, compare_screenshots, clear_output, close_script, reload_open_scripts, set_anchor_preset y click_button_by_text para mantenerse dentro del límite de 100 herramientas.

{
  "mcpServers": {
    "godot-mcp-pro": {
      "command": "node",
      "args": ["/path/to/server/build/index.js", "--lite"]
    }
  }
}

Reemplaza --lite con --minimal para la huella más pequeña.

  • Ligero incluye: herramientas de proyecto, escena, nodo, script, editor, entrada, tiempo de ejecución y mapa de entrada.
  • Mínimo incluye: 35 herramientas esenciales — información del proyecto, gestión de escenas, CRUD de nodos, edición de scripts, errores del editor, simulación de entrada e inspección en tiempo de ejecución.

5. Modo CLI (Alternativa a MCP)

Para clientes sin soporte MCP, o cuando quieras cero sobrecarga de contexto, usa la CLI directamente desde una herramienta de terminal/bash. La CLI requiere que el servidor esté compilado primero (Paso 2).

# Top-level help — shows all command groups
node /path/to/server/build/cli.js --help

# Group help — shows commands in a group
node /path/to/server/build/cli.js node --help

# Command help — shows options for a command
node /path/to/server/build/cli.js node add --help

# Execute
node /path/to/server/build/cli.js project info
node /path/to/server/build/cli.js scene play
node /path/to/server/build/cli.js node add --type CharacterBody3D --name Player

Reemplaza /path/to/ con la ruta real donde extrajiste los archivos.

La CLI se conecta directamente al plugin del editor de Godot mediante WebSocket. Requiere:

  • Editor de Godot ejecutándose con el plugin MCP habilitado
  • Servidor compilado (node build/setup.js install)
  • Un puerto disponible en el rango 6510-6514

Ventaja: Los LLMs descubren capacidades progresivamente mediante --help en lugar de cargar todas las definiciones de herramientas de antemano. Esto funciona con cualquier cliente LLM que tenga acceso a terminal, independientemente de los límites de cantidad de herramientas.

6. Compatibilidad de Clientes

ClienteModo recomendadoNotas
Claude CodeCompleto (predeterminado)Carga diferida de herramientas — costo de contexto mínimo
VS Code CopilotCompletoLas herramientas virtuales agrupan herramientas automáticamente
OpenAI Codex CLICompletoMCPSearch difiere el desbordamiento
ClineCompletoSin límite estricto; usa enabledTools para la lista blanca
Roo CodeCompletoSin límite estricto
WindsurfLigeroLímite de 100 herramientas
JetBrains JunieLigeroLímite de 100 herramientas
Gemini CLILigero~100 límite del cliente; usa excludeTools para un control más fino
CursorCompletoLímite de herramientas eliminado (Descubrimiento Dinámico de Contexto)
OpenCodeMínimo o CLILos modelos se degradan más allá de ~40 herramientas
LLMs locales (LM Studio, etc.)Mínimo o CLILa ventana de contexto es el cuello de botella

7. Úsalo

Abre tu proyecto de Godot con el plugin habilitado, luego usa Claude Code para interactuar con el editor.

Las 187 Herramientas

Herramientas de Proyecto (10)

HerramientaDescripción
get_project_infoMetadatos del proyecto, versión, viewport, autoloads
get_filesystem_treeÁrbol de archivos recursivo con filtrado
search_filesBúsqueda de archivos difusa/glob
search_in_filesBuscar contenido en archivos del proyecto
get_project_settingsLeer configuración de project.godot
set_project_settingEstablecer configuración del proyecto mediante la API del editor
uid_to_project_pathConversión UID → res://
project_path_to_uidConversión res:// → UID
add_autoloadRegistrar singleton autoload
remove_autoloadEliminar singleton autoload

Herramientas de Escena (10)

HerramientaDescripción
get_scene_treeÁrbol de escena en vivo con jerarquía
get_scene_file_contentContenido crudo del archivo .tscn
create_sceneCrear nuevos archivos de escena
open_sceneAbrir escena en el editor
delete_sceneEliminar archivo de escena
add_scene_instanceInstanciar escena como nodo hijo
play_sceneEjecutar escena (principal/actual/personalizada)
stop_sceneDetener escena en ejecución
save_sceneGuardar escena actual en disco
get_scene_exportsListar variables @export de todos los nodos con script en un archivo de escena

Herramientas de Nodo (17)

HerramientaDescripción
add_nodeAñadir nodo con tipo y propiedades
delete_nodeEliminar nodo (con soporte de deshacer)
duplicate_nodeDuplicar nodo e hijos
move_nodeMover/reparentar nodo
update_propertyEstablecer cualquier propiedad (análisis automático de tipos)
get_node_propertiesObtener todas las propiedades del nodo
add_resourceAñadir Shape/Material/etc. a un nodo
set_anchor_presetEstablecer preset de anclaje de Control
rename_nodeRenombrar un nodo en la escena
connect_signalConectar señal entre nodos
disconnect_signalDesconectar conexión de señal
get_node_groupsObtener grupos a los que pertenece un nodo
set_node_groupsEstablecer membresía de grupo de nodo
find_nodes_in_groupEncontrar todos los nodos en un grupo
get_editor_selectionObtener nodos seleccionados en el dock de Escena
select_nodesSeleccionar (y opcionalmente enfocar/inspeccionar) nodos en el dock de Escena
clear_editor_selectionLimpiar la selección del dock de Escena

Herramientas de Script (9)

HerramientaDescripción
list_scriptsListar todos los scripts con información de clase
read_scriptLeer contenido del script
create_scriptCrear nuevo script con plantilla
edit_scriptBuscar/reemplazar o edición completa
attach_scriptAdjuntar script a nodo
validate_scriptValidar sintaxis de GDScript
close_scriptCerrar pestaña del editor de scripts; se niega si hay ediciones sin guardar a menos que se indique descartar (Godot 4.7+)
reload_open_scriptsRecargar scripts abiertos desde disco, conservando buffers sin guardar (Godot 4.7+)
get_open_scriptsListar scripts abiertos en el editor

Herramientas de Editor (15)

HerramientaDescripción
get_editor_errorsObtener errores y trazas de pila
get_output_logObtener contenido del panel de salida
get_editor_screenshotCapturar viewport del editor
get_game_screenshotCapturar juego en ejecución
execute_editor_scriptEjecutar GDScript arbitrario en el editor
clear_outputLimpiar panel de salida
get_signalsObtener todas las señales de un nodo con conexiones
reload_pluginRecargar el plugin MCP (reconexión automática)
reload_projectReescaneo del sistema de archivos y recarga de scripts
compare_screenshotsComparar dos capturas de pantalla
set_auto_dismissDescartar automáticamente diálogos bloqueantes del editor ("¿Recargar desde disco?" etc.)
get_editor_cameraObtener posición/rotación/FOV de la cámara 3D del editor (+ configuración de ajuste en 4.6+)
set_editor_cameraMover la cámara 3D del editor para encuadrar una vista
get_unsaved_stateReportar escenas/scripts abiertos con cambios sin guardar (las listas sin guardar necesitan Godot 4.7+)
save_allGuardar todas las escenas abiertas y buffers de script modificados, reportar lo guardado (los scripts necesitan Godot 4.7+)

Herramientas de Entrada (5)

HerramientaDescripción
simulate_keySimular pulsación/soltura de tecla de teclado
simulate_mouse_clickSimular clic de ratón en posición
simulate_mouse_moveSimular movimiento de ratón
simulate_actionSimular Acción de Entrada de Godot
simulate_sequenceSecuencia de eventos de entrada con retrasos de fotogramas

Herramientas de Mapa de Entrada (2)

HerramientaDescripción
get_input_actionsListar todas las acciones de entrada
set_input_actionCrear/modificar acción de entrada

Herramientas de Tiempo de Ejecución (20)

HerramientaDescripción
get_game_scene_treeÁrbol de escena del juego en ejecución
get_game_node_propertiesPropiedades de nodo en el juego en ejecución
set_game_node_propertyEstablecer propiedad de nodo en el juego en ejecución
execute_game_scriptEjecutar GDScript en el contexto del juego
capture_framesCaptura de pantalla de múltiples fotogramas
record_framesGrabar muchos fotogramas en archivos PNG en disco
monitor_propertiesGrabar valores de propiedades a lo largo del tiempo
watch_signalsRegistrar emisiones de señales en nodos durante una duración
start_recordingIniciar grabación de entrada
stop_recordingDetener grabación de entrada
replay_recordingReproducir entrada grabada
find_nodes_by_scriptEncontrar nodos del juego por script
get_autoloadObtener propiedades de nodos autoload
find_ui_elementsEncontrar elementos de UI en el juego
click_button_by_textHacer clic en botón por contenido de texto
wait_for_nodeEsperar a que aparezca un nodo
find_nearby_nodesEncontrar nodos cerca de una posición
navigate_toNavegar a posición objetivo
move_toCaminar personaje hasta el objetivo
batch_get_propertiesObtener múltiples propiedades de nodo en lote

Herramientas de Animación (6)

HerramientaDescripción
list_animationsListar todas las animaciones en AnimationPlayer
create_animationCrear nueva animación
add_animation_trackAñadir pista (valor/posición/rotación/método/bezier)
set_animation_keyframeInsertar fotograma clave en pista
get_animation_infoInformación detallada de animación con todas las pistas/claves
remove_animationEliminar una animación

Herramientas de TileMap (6)

HerramientaDescripción
tilemap_set_cellEstablecer una sola celda de tile
tilemap_fill_rectRellenar región rectangular con tiles
tilemap_get_cellObtener datos de tile en celda
tilemap_clearLimpiar todas las celdas
tilemap_get_infoInformación de TileMapLayer y fuentes de tile set
tilemap_get_used_cellsLista de celdas usadas

Herramientas de Tema y UI (8)

HerramientaDescripción
create_themeCrear archivo de recurso Theme
set_theme_colorEstablecer anulación de color de tema
set_theme_constantEstablecer anulación de constante de tema
set_theme_font_sizeEstablecer anulación de tamaño de fuente de tema
set_theme_styleboxEstablecer anulación de StyleBoxFlat
setup_controlConfigurar diseño de Control/Container en una llamada
add_virtual_joystickAñadir VirtualJoystick en pantalla vinculado a acciones de entrada (Godot 4.7+)
get_theme_infoObtener información de anulaciones de tema

Herramientas de Perfilado (2)

HerramientaDescripción
get_performance_monitorsTodos los monitores de rendimiento (FPS, memoria, física, etc.)
get_editor_performanceResumen rápido de rendimiento

Herramientas de Lote y Refactorización (7)

HerramientaDescripción
find_nodes_by_typeEncontrar todos los nodos de un tipo
find_signal_connectionsEncontrar todas las conexiones de señales en la escena
batch_set_propertyEstablecer propiedad en todos los nodos de un tipo
batch_add_nodesAñadir un árbol de nodos completo en una llamada
find_node_referencesBuscar patrón en archivos del proyecto
get_scene_dependenciesObtener dependencias de recursos
cross_scene_set_propertyEstablecer propiedad en todas las escenas

Herramientas de Shader (6)

HerramientaDescripción
create_shaderCrear shader con plantilla
read_shaderLeer archivo de shader
edit_shaderEditar shader (reemplazar/buscar-reemplazar)
assign_shader_materialAsignar ShaderMaterial a un nodo
set_shader_paramEstablecer parámetro de shader
get_shader_paramsObtener todos los parámetros del shader

Herramientas de Exportación (4)

HerramientaDescripción
list_export_presetsListar presets de exportación
export_projectObtener comando de exportación para un preset
export_patch_pckExportar un PCK de parche con solo los archivos modificados desde los paquetes base dados
get_export_infoInformación del proyecto relacionada con la exportación

Herramientas de Recursos (4)

HerramientaDescripción
read_resourceLeer propiedades de recursos .tres
edit_resourceEditar propiedades de recursos
create_resourceCrear nuevo recurso .tres
get_resource_previewObtener miniatura del recurso

Herramientas de Física (6)

HerramientaDescripción
setup_collisionAñadir formas de colisión a nodos
set_physics_layersEstablecer capa/máscara de colisión
get_physics_layersObtener información de capa/máscara de colisión
add_raycastAñadir nodo RayCast2D/3D
setup_physics_bodyConfigurar propiedades del cuerpo de física
get_collision_infoObtener detalles de la forma de colisión

Herramientas de Escena 3D (7)

HerramientaDescripción
add_mesh_instanceAñadir MeshInstance3D con malla primitiva
setup_lightingAñadir/configurar nodos de luz
set_material_3dEstablecer propiedades de StandardMaterial3D
setup_environmentConfigurar WorldEnvironment
setup_camera_3dConfigurar propiedades de Camera3D
add_gridmapConfigurar nodo GridMap
get_gridmap_infoInspeccionar un GridMap: MeshLibrary, límites, recuentos por elemento, celdas filtradas (resumen de octantes en 4.7+)

Herramientas de Partículas (5)

HerramientaDescripción
create_particlesCrear GPUParticles2D/3D
set_particle_materialConfigurar ParticleProcessMaterial
set_particle_color_gradientEstablecer gradiente de color para partículas
apply_particle_presetAplicar preset (fuego, humo, chispas, etc.)
get_particle_infoObtener detalles del sistema de partículas

Herramientas de Navegación (5)

HerramientaDescripción
setup_navigation_regionConfigurar NavigationRegion
bake_navigation_meshHornear malla de navegación
setup_navigation_agentConfigurar NavigationAgent
set_navigation_layersEstablecer capas de navegación
get_navigation_infoObtener información de configuración de navegación

Herramientas de Audio (6)

HerramientaDescripción
get_audio_bus_layoutObtener información del diseño de buses de audio
add_audio_busAñadir bus de audio
set_audio_busConfigurar propiedades del bus de audio
add_audio_bus_effectAñadir efecto al bus de audio
add_audio_playerAñadir nodo AudioStreamPlayer
get_audio_infoObtener información de nodos relacionados con audio

Herramientas de AnimationTree (9)

HerramientaDescripción
create_animation_treeCrear AnimationTree
get_animation_tree_structureObtener estructura del árbol
add_state_machine_stateAñadir estado a la máquina de estados
remove_state_machine_stateEliminar estado de la máquina de estados
add_state_machine_transitionAñadir transición entre estados
remove_state_machine_transitionEliminar transición de estado
set_blend_tree_nodeConfigurar nodos de árbol de mezcla
set_tree_parameterEstablecer parámetro de AnimationTree
setup_ik_modifierAñadir y configurar un IK SkeletonModifier3D (TwoBoneIK3D, CCDIK3D, FABRIK3D, ...) en un Skeleton3D (Godot 4.6+)

Herramientas de Análisis y Búsqueda (6)

HerramientaDescripción
find_unused_resourcesEncontrar recursos sin referencia
analyze_signal_flowMapear conexiones de señales
analyze_scene_complexityAnalizar rendimiento de la escena
find_script_referencesEncontrar dónde se usa el script/recurso
detect_circular_dependenciesEncontrar dependencias circulares de escenas
get_project_statisticsObtener estadísticas del proyecto

Herramientas de Pruebas y QA (6)

HerramientaDescripción
run_test_scenarioEjecutar escenario de prueba automatizado
assert_node_stateVerificar valores de propiedades de nodos
assert_screen_textComprobar texto en pantalla
run_stress_testEjecutar prueba de estrés de rendimiento
set_game_speedLeer/establecer Engine.time_scale del juego en ejecución (cámara lenta / avance rápido)
get_test_reportObtener informe de resultados de pruebas

Herramientas Headless (3)

HerramientaDescripción
run_headless_sceneEjecutar una escena en un proceso Godot headless separado (p. ej., suite de pruebas de un proyecto)
run_headless_scriptEjecutar un script extends SceneTree con godot --headless --script
get_godot_executableRuta del binario Godot del editor, ruta del proyecto y plataforma

Herramientas de Android (3)

HerramientaDescripción
list_android_devicesListar dispositivos Android visibles para adb
get_android_preset_infoLeer nombre de paquete/ruta de exportación de un preset de exportación Android
deploy_to_androidExportar APK, instalar vía adb y lanzar (como Remote Deploy)

Características Clave

  • Integración UndoRedo: Todas las operaciones de nodos/propiedades admiten Ctrl+Z
  • Análisis de Tipos Inteligente: "Vector2(100, 200)", "#ff0000", "Color(1,0,0)" convertidos automáticamente
  • Reconexión Automática: Reconexión con retroceso exponencial (1s → 2s → 4s ... → 60s máx.)
  • Heartbeat: Ping/pong de 10s mantiene la conexión activa
  • Errores Útiles: Las respuestas de error incluyen sugerencias para los siguientes pasos

Comparación Competitiva

Recuento de Herramientas

CategoríaGodot MCP ProGDAI MCP ($19)tomyud1 (gratis)Dokujaa (gratis)Coding-Solo (gratis)ee0pdt (gratis)bradypp (gratis)
Proyecto10540222
Escena108119345
Nodo17808230
Script9564050
Editor15515132
Entrada7200000
Runtime20000000
Animación6000000
TileMap6000000
Tema/UI8000000
Perfilado2000000
Lote/Refactor7000000
Shader6000000
Exportación4000000
Recurso4000000
Física6000000
Escena 3D7000000
Partícula5000000
Navegación5000000
Audio6000000
AnimationTree9000000
Análisis6000000
Pruebas/QA6000000
Asset/AI0016000
Material0002000
Otro0095521
Headless3000000
Despliegue Android3000000
Total187~303239131910

Matriz de Características

CaracterísticaGodot MCP ProGDAI MCP ($19)tomyud1 (gratis)Dokujaa (gratis)Coding-Solo (gratis)
ConexiónWebSocket (tiempo real)stdio (Python)WebSocketTCP SocketCLI Headless
Deshacer/RehacerSíSíNoNoNo
JSON-RPC 2.0SíPersonalizadoPersonalizadoPersonalizadoN/A
Reconexión automáticaSí (retroceso exponencial)N/ANoNoN/A
HeartbeatSí (ping/pong de 10s)NoNoNoNo
Sugerencias de errorSí (pistas contextuales)NoNoNoNo
Captura de captura de pantallaSí (editor + juego)SíNoNoNo
Simulación de entrada de juegoSí (tecla/ratón/acción/secuencia)Sí (básica)NoNoNo
Inspección en runtimeSí (árbol de escena + propiedades + monitor)NoNoNoNo
Gestión de señalesSí (conectar/desconectar/inspeccionar)NoNoNoNo
Visualizador de navegadorNoNoSíNoNo
Generación de malla 3D con IANoNoNoSí (API Meshy)No

Categorías Exclusivas (Ningún Competidor las Tiene)

CategoríaHerramientasPor Qué Importa
Animación6 herramientasCrear animaciones, añadir pistas, establecer fotogramas clave — todo programáticamente
TileMap6 herramientasEstablecer celdas, rellenar rectángulos, consultar datos de tiles — esencial para diseño de niveles 2D
Tema/UI8 herramientasStyleBox, colores, fuentes — construir temas de UI sin trabajo manual en el editor
Perfilado2 herramientasFPS, memoria, llamadas de dibujo, física — monitoreo de rendimiento
Lote/Refactor7 herramientasEncontrar por tipo, cambios de propiedades en lote, actualizaciones entre escenas, análisis de dependencias
Shader6 herramientasCrear/editar shaders, asignar materiales, establecer parámetros
Exportación4 herramientasListar presets, obtener comandos de exportación, verificar plantillas
Física6 herramientasConfigurar formas de colisión, cuerpos, raycasts y gestión de capas
Escena 3D7 herramientasAñadir mallas, cámaras, luces, entorno, soporte GridMap
Partícula5 herramientasCrear partículas con materiales personalizados, presets y gradientes
Navegación5 herramientasConfigurar regiones de navegación, agentes, búsqueda de caminos, horneado
Audio6 herramientasSistema completo de buses de audio, efectos, reproductores, gestión en vivo
AnimationTree9 herramientasMáquinas de estados, transiciones, árboles de mezcla y modificadores IK
Pruebas/QA6 herramientasPruebas automatizadas, verificaciones, pruebas de estrés, comparación de capturas
Runtime20 herramientasInspeccionar y controlar el juego en runtime: inspeccionar, grabar, reproducir, navegar

Ventajas de Arquitectura

AspectoGodot MCP ProCompetidor Típico
ProtocoloJSON-RPC 2.0 (estándar, extensible)JSON personalizado o basado en CLI
ConexiónWebSocket persistente con heartbeatSubproceso por comando o TCP crudo
FiabilidadReconexión automática con retroceso exponencial (1s→60s)Reconexión manual requerida
Seguridad de TiposAnálisis de tipos inteligente (Vector2, Color, Rect2, colores hex)Solo cadenas o tipos limitados
Manejo de ErroresErrores estructurados con códigos + sugerenciasMensajes de error genéricos
Soporte de DeshacerTodas las mutaciones pasan por el sistema UndoRedoModificaciones directas (sin deshacer)
Gestión de PuertosEscaneo automático de puertos 6505-6509Puerto fijo, posibles conflictos

Licencia

Propietaria — consulte LICENSE para más detalles. La compra incluye actualizaciones de por vida.