Skip to main content
Glama

Arenula

nyx000.github.io/arenula-mcp

s&boxゲームエンジン向けのMCPサーバースイートです。AIコーディングアシスタントをs&boxエディタに接続し、シーンの読み取り、オブジェクトの作成、コードのコンパイル、アセットの管理などを行います。

AnthropicのMCPベストプラクティスに従って設計されています:アクション列挙型を持つオムニバスツール、ネガティブガイダンス付きのリッチな説明、トリミングされた応答、実行可能なエラー。

Arenula — ラテン語で「砂粒」の意味。砂場の中の一粒。

応答エンベロープ

ミューテーションツールは以下のフィールドを持つJSONを返します:

  • message — 短い人間が読める確認メッセージ。

  • verified — (オプション)ミューテーション後の状態の読み戻し。呼び出し元が変更が実際に反映されたことを確認できます。例:component.add 後:{ "component_exists": true, "component_type": "ModelRenderer" }。terrain.configure_clutter 後:{ "clutter_assigned": "volcano_ground", "seed": 42, "mode": "Infinite" }。このフィールドがない場合、呼び出し元はミューテーションが未確認であると想定する必要があります。

  • warnings — (オプション)フィールドごとの部分成功ノートの配列。各要素は { field, message, suggestion? } です。メイン操作は成功したが一部のサブステップがスキップされた場合に使用されます。例:networking.add_helper で有効なスポーンポイントIDと無効なものが混在している場合、ヘルパーは接続され、不正なIDごとに警告が返されます。

エラーは引き続き標準の { error, action, suggestion } ボディを isError: true とともに返します。実際のエンジンリソースに解決できないユーザー向けの値は、サイレントに何もしないのではなく、実行可能な提案とともにエラーを返すようになりました。

Related MCP server: sbox-mcp-documentation

サーバー

サーバー

機能

ランタイム

トランスポート

Editor

シーン操作、コンパイル、アセット、地形

s&box 内のC#プラグイン

SSE :8098

API

オフラインの型/メンバー参照(約1,800タイプ、約15,000メンバー)、PBRテクスチャの取得

Node.js

stdio

Docs

sbox.game からのナラティブドキュメント(.mdエンドポイント経由の生マークダウン)

Node.js

stdio

セットアップ

1. Arenula-MCP のクローン

Arenula-MCP をマシンのどこかにクローンまたはダウンロードします。ここにAPIサーバーとDocsサーバーが配置されます。これらは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 here

2. Editor プラグイン

editor/ をs&boxプロジェクトの Libraries フォルダにコピーします:

YourProject/
  Libraries/
    arenula_mcp/               <-- copy the contents of editor/ here
      Editor/
        Core/
        Handlers/
      sbox_mcp.sbproj

s&boxを開きます — Arenula は自動的にコンパイルされ、ポート8098でMCPサーバーを起動します。

3. API & Docs のビルド

Arenula-MCP のルートから、両方のNode.jsサーバーをインストールしてビルドします:

npm run setup        # installs dependencies and builds both servers

これにより api/dist/index.js と docs/dist/index.js がビルドされます — これらがAIクライアントが参照するファイルです。

4. AIクライアントの設定

s&boxプロジェクトのルートに .mcp.json ファイルを追加します(または .mcp.json.example をコピーします)。パスを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"]
    }
  }
}

C:/Projects/Arenula-MCP をリポジトリをクローンした場所に置き換えます。最新のAPIスキーマURLは sbox.game/api/schema から取得します(ダウンロードをクリックし、URLをコピー)。

ツールはAIクライアントで mcp__editor__*、mcp__api__*、mcp__docs__* として表示されます。

Editor ツール

23個のオムニバスツール、182個のアクション。各ツールは必須の action パラメータを取ります。

ツール

アクション

件数

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

アーキテクチャ

33のC#ソースファイル — うち9つがコアインフラストラクチャ、24がツール別ハンドラ(ConsoleHandlerを含む)。

アーキテクチャ

帰属

  • エディタは Ozmium MCP Server(作成者: ozmium7、GPL-3.0)をベースとしています。

  • APIは sbox-api-mcp(作成者: sofianebel、MIT)をベースとしています。

  • ドキュメントは sbox-docs-mcp(作成者: sofianebel、MIT)をベースとしています。

ライセンス

GPL-3.0(エディタ) · MIT(API、ドキュメント、スキーマ生成) — 分割の理由と、コピーしたコードにどのライセンスが適用されるかについては、LICENSE を参照してください。

Related MCP Connectors

Related MCP Servers