Arenula MCP
Arenula
Suite de servidores MCP para el motor de juego s&box. Conecta asistentes de codificación por IA al editor de s&box — leyendo escenas, creando objetos, compilando código, gestionando activos y más.
Diseñado siguiendo las mejores prácticas de MCP de Anthropic: herramientas omnímodas con enumeraciones de acciones, descripciones enriquecidas con orientación negativa, respuestas recortadas, errores procesables.
Arenula — Latín para "grano de arena". Un grano en la caja de arena.
Envoltorio de respuesta
Las herramientas de mutación devuelven JSON con estos campos:
message— breve confirmación legible por humanos.verified— (opcional) relectura del estado después de la mutación, para que los llamantes puedan confirmar que el cambio realmente se aplicó. P. ej., después decomponent.add:{ "component_exists": true, "component_type": "ModelRenderer" }. Después deterrain.configure_clutter:{ "clutter_assigned": "volcano_ground", "seed": 42, "mode": "Infinite" }. Cuando este campo falta, el llamante debe asumir que la mutación no está verificada.warnings— (opcional) array de notas de éxito parcial por campo, cada una{ field, message, suggestion? }. Se usa cuando la operación principal tuvo éxito pero algún subpaso se omitió — p. ej.,networking.add_helpercon una mezcla de IDs de punto de aparición válidos e inválidos devolverá el helper conectado y una advertencia por cada ID incorrecto.
Los errores aún devuelven el cuerpo estándar { error, action, suggestion } con isError: true. Cualquier valor orientado al usuario que no pueda resolverse a un recurso real del motor ahora genera un error con una sugerencia procesable en lugar de no hacer nada silenciosamente.
Related MCP server: sbox-mcp-documentation
Servidores
Servidor | Qué hace | Entorno de ejecución | Transporte |
Editor | Manipulación de escenas, compilación, activos, terreno | Plugin C# dentro de s&box | SSE |
API | Referencia offline de tipos/miembros (~1.800 tipos, ~15.000 miembros), obtención de texturas PBR | Node.js | stdio |
Docs | Documentación narrativa de sbox.game (markdown sin procesar vía endpoints | Node.js | stdio |
Configuración
1. Clonar Arenula-MCP
Clona o descarga este repositorio en algún lugar de tu máquina. Aquí es donde residirán los servidores API y Docs — no necesitan estar dentro de tu proyecto de s&box.
C:\Projects\Arenula-MCP\ <-- can be anywhere you like
editor/ goes into your s&box project (step 2)
api/ stays here, runs from here
docs/ stays here, runs from here2. Plugin del editor
Copia editor/ en la carpeta Libraries de tu proyecto de s&box:
YourProject/
Libraries/
arenula_mcp/ <-- copy the contents of editor/ here
Editor/
Core/
Handlers/
sbox_mcp.sbprojAbre s&box — Arenula se compila automáticamente e inicia el servidor MCP en el puerto 8098.
3. Compilar API y Docs
Desde la raíz de Arenula-MCP, instala y compila ambos servidores Node.js:
npm run setup # installs dependencies and builds both serversEsto compila api/dist/index.js y docs/dist/index.js — esos son los archivos a los que tu cliente de IA apuntará.
4. Configurar tu cliente de IA
Añade un archivo .mcp.json a la raíz de tu proyecto de s&box (o copia .mcp.json.example). Actualiza las rutas a donde clonaste Arenula-MCP:
{
"mcpServers": {
"editor": {
"type": "sse",
"url": "http://localhost:8098/sse"
},
"api": {
"command": "node",
"args": ["C:/Projects/Arenula-MCP/api/dist/index.js"],
"env": {
"SBOX_API_URL": "https://cdn.sbox.game/releases/..."
}
},
"docs": {
"command": "node",
"args": ["C:/Projects/Arenula-MCP/docs/dist/index.js"]
}
}
}Reemplaza C:/Projects/Arenula-MCP con donde hayas clonado el repositorio. Obtén la URL del esquema API más reciente desde sbox.game/api/schema (haz clic en Descargar, copia la URL).
Las herramientas aparecen como mcp__editor__*, mcp__api__*, mcp__docs__* en tu cliente de IA.
Herramientas del Editor
23 herramientas omnímodas, 182 acciones. Cada herramienta toma un parámetro action obligatorio.
Herramienta | Acciones | Número |
scene | summary, hierarchy, statistics, find, find_in_radius, get_details, prefab_instances | 7 |
gameobject | create, destroy, duplicate, reparent, rename, enable, set_tags, set_transform, batch_transform | 9 |
component | add, remove, set_property, set_enabled, get_properties, get_types, copy | 7 |
compile | trigger, status, errors, generate_solution, wait | 5 |
prefab | instantiate, get_structure, get_instances, break, update, create, save_overrides, revert, get_overrides | 9 |
asset_query | browse, search, open, get_dependencies, get_model_info, get_material_properties, get_mesh_info, get_bounds, get_unsaved, get_status, get_json, get_references | 12 |
asset_manage | create, delete, rename, move, save, reload, get_references | 7 |
editor | select, get/set_selected, clear/frame_selection, get_play_state, start/stop_play, get_log, save_scene, save_scene_as, save_all, undo/redo, console_list, console_run, open_code_file, get/set_preferences | 19 |
session | list, set_active, load_scene | 3 |
lighting | create, configure, create_skybox, set_skybox | 4 |
physics | add_collider, configure_collider, add_rigidbody, create_model_physics, create_character_controller, create_joint | 6 |
audio | create, configure | 2 |
effects | create, configure_particle, configure_post_processing, configure_sprite, configure_prop, configure_world_panel | 6 |
camera | create, configure, capture_viewport, capture_tour, orbit_capture | 5 |
mesh | create_block, create_plane, create_cylinder, create_wedge, create_arch, create_clutter, extrude_faces, remove_faces, add_face, clip_faces, scale_mesh, thicken_faces, bevel_edges, bevel_vertices, split_edges, quad_slice_faces, dissolve_edges, bridge_edges, connect_vertices, flip_faces, extend_edges, set_face_material, set_texture_params, vertex ops, get_info | 27 |
navmesh | create_agent, create_area, create_link, generate, generate_tile, unload_tile, set_defer_generation, get_status, query_path | 9 |
cloud | search, get_package, get_versions, mount | 4 |
project | get_collision, set_collision_rule, get_input, get_info | 4 |
terrain | create, configure, get_info, get_height, get_height_region, set_height, noise, erode, stamp, add/remove_material, get_material_at, blend_materials, set_hole, paint_material, import/export_heightmap, sync, configure_clutter, regenerate_clutter, clear_clutter | 21 |
trace | ray, sphere_cast, box_cast, sample_grid, multi_ray | 5 |
player | create, configure_movement, configure_camera, configure_body, configure_interaction | 5 |
networking | add_helper, configure_object, get_status | 3 |
schema | export, info, clear | 3 |
Arquitectura
33 archivos fuente en C# — 9 de infraestructura principal, 24 manejadores por herramienta (incl. ConsoleHandler).

Atribución
Editor basado en Ozmium MCP Server por ozmium7 (GPL-3.0)
API basada en sbox-api-mcp por sofianebel (MIT)
Documentación basada en sbox-docs-mcp por sofianebel (MIT)
Licencia
GPL-3.0 (Editor) · MIT (API, Docs, schemagen) — consulta LICENSE para saber por qué existe la división
y cuál se aplica al código que copies.
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
An MCP server that gives your AI access to the source code and docs of all public github repos
MCP server for building and testing AI agents with multi-model experimentation and insights.
Related MCP Servers
- AlicenseCqualityBmaintenanceAn MCP server providing AI assistants with 149 tools to fully control the Godot game engine, including runtime code execution, scene manipulation, physics, audio, networking, animation, and more.10085 npm476MIT
- AlicenseAqualityBmaintenanceAn MCP server that provides AI assistants with searchable access to the full s&box game engine documentation and API reference.712 npm11MIT
- AlicenseAqualityBmaintenanceA local-first MCP server for AI-assisted Garry's Mod addon development.3836 npm2MIT
- FlicenseAqualityAmaintenanceMCP server that connects AI coding assistants to a live Godot editor, enabling scene, node, script, resource, runtime, debugger, and test workflows through natural language.45-