Entity tools¶
Create, read, change, move, duplicate and delete entities; read component schemas.
10 tools in the entity category. Badges: read-only tools never change the project; mutating tools are undoable and attributed; open-world tools reach outside the engine and MCP clients ask before running them.
| Tool | Summary |
|---|---|
entity_get |
Full data of one entity: components (all fields), tags, vars, behaviors (intent + Wander source). |
entity_create |
Create an entity. |
entity_update |
Change an entity. |
transform |
Move/rotate/scale an entity. |
entity_delete |
Delete an entity and all its children (undoable). |
entity_duplicate |
Copy an entity (with children, components and behaviors). |
component_schema |
JSON schema of components (transform, mesh, light, camera) and the environment, with field docs, ranges and enums. |
entity_refs |
Who references an entity and what it references (joint targets, camera follow, look-at, bone attachments, IK, groom/particle colliders...). |
entity_copy |
Copy entities (with children) to a clipboard document for entity_paste — in this scene or after scene_load in another. |
entity_paste |
Create copies of a clipboard document from entity_copy. |
entity_get¶
Get entity read-only
Full data of one entity: components (all fields), tags, vars, behaviors (intent + Wander source).
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | yes | Entity id (number) or exact name |
entity_create¶
Create entity mutating
Create an entity. Shorthands: mesh (primitive name), color, position, rotation (degrees), scale. components takes full component objects, e.g. {"light": {"kind": "point", "intensity": 3}}. Returns the new id.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
name |
string | yes | Display name | |
parent |
integer | string | Parent entity (id or name) | ||
mesh |
string | Primitive: cube, sphere, plane, cylinder, cone, quad, capsule, torus | ||
color |
string | Base color "#rrggbb" | ||
position |
number[3] | Position [x, y, z] in meters | ||
rotation |
number[3] | Rotation [pitch, yaw, roll] in degrees | ||
scale |
number[3] | Scale [x, y, z] | ||
tags |
string[] | Tags | ||
vars |
object | Free-form entity variables | ||
components |
object | Component name -> fields |
entity_update¶
Update entity mutating
Change an entity. Only given keys change; component objects are merged field-by-field. Set a component to null to remove it. Example: {"entity": "Lamp", "components": {"light": {"intensity": 5}}}.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | yes | Entity id (number) or exact name | |
name |
string | New name | ||
parent |
integer | string | New parent (0 for root) | ||
enabled |
boolean | Enable/disable | ||
tags |
string[] | Replace tags | ||
vars |
object | Merge into vars (null deletes) | ||
unique |
boolean | Unique name in its prefab instance / scene: Wander find("%Name") finds it | ||
components |
object | Component name -> partial fields |
transform¶
Transform entity mutating
Move/rotate/scale an entity. Absolute: position, rotation (degrees), scale. Relative: translate, rotate. space=world interprets position in world space even if the entity has a parent.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | yes | Entity id (number) or exact name | |
position |
number[3] | Absolute position | ||
rotation |
number[3] | Absolute rotation, degrees | ||
scale |
number[3] | Absolute scale | ||
translate |
number[3] | Relative offset | ||
rotate |
number[3] | Relative rotation, degrees | ||
space |
string | Space for position (default local) |
local world |
entity_delete¶
Delete entity mutating destructive
Delete an entity and all its children (undoable).
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | yes | Entity id (number) or exact name |
entity_duplicate¶
Duplicate entity mutating
Copy an entity (with children, components and behaviors). Optional new name and position offset. entities duplicates several together: links between them (joint targets, look-at, follow...) point at the copies, so a duplicated rig stays wired to itself. Prefab instances stay linked.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | Entity id (number) or exact name | ||
entities |
integer | string[] | Several entities duplicated as one group | ||
name |
string | Name of the copy (single entity) | ||
offset |
number[3] | Offset added to the copy's position | ||
count |
integer | Number of copies (default 1, max 100); offsets accumulate |
component_schema¶
Component schema read-only
JSON schema of components (transform, mesh, light, camera) and the environment, with field docs, ranges and enums.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
component |
string | One component name; omit for all |
entity_refs¶
Entity references read-only
Who references an entity and what it references (joint targets, camera follow, look-at, bone attachments, IK, groom/particle colliders...). Links store the target's id plus its name, so they survive renames. Without entity: a scene-wide health check listing dangling links (pointing at nothing), links that only resolve by name (fragile), duplicate unique names and broken prefab instances, each with a fix. Example: {"entity": "Door"} before renaming or deleting it.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entity |
integer | string | Entity to inspect; omit for the scene-wide check | ||
limit |
integer | Max problems listed (default 50) |
entity_copy¶
Copy entities read-only
Copy entities (with children) to a clipboard document for entity_paste — in this scene or after scene_load in another. Links between copied entities and prefab instances inside the copy are kept.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
entities |
integer | string[] | yes | Entities to copy (their children come along) |
Minimal call with the required arguments; see the table for everything else.
entity_paste¶
Paste entities mutating
Create copies of a clipboard document from entity_copy. Links among the pasted entities point at the new copies (a pasted rig stays wired to itself); links to other entities keep their target; prefab instances stay linked. Optional parent and position offset.
| Argument | Type | Required | Description | Values |
|---|---|---|---|---|
data |
object | yes | The clipboard document from entity_copy | |
parent |
integer | string | Parent of the pasted roots (default: none) | ||
offset |
number[3] | Added to each pasted root's position |
Minimal call with the required arguments; see the table for everything else.