Tool tree
gradeNot graded
create_objectAction
Create a solid primitive. Types: cube, sphere, icosphere, cylinder, cone, torus, plane, capsule, tube, prism, pyramid, wedge, rounded_box.
View tool JSON
{
"name": "create_object",
"kind": "act",
"impl": "imperative",
"description": "Create a solid primitive. Types: cube, sphere, icosphere, cylinder, cone, torus, plane, capsule, tube, prism, pyramid, wedge, rounded_box.",
"inputSchema": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"position": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"rotation": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"scale": {},
"material": {
"type": "string"
},
"color": {
"type": "string"
},
"params": {
"type": "object"
},
"tags": {
"type": "array"
}
}
}
}delete_objectSensitive Action
Delete objects by id, ids, or the current selection.
View tool JSON
{
"name": "delete_object",
"kind": "transact",
"impl": "imperative",
"description": "Delete objects by id, ids, or the current selection.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ids": {
"type": "array"
}
}
}
}duplicate_objectAction
Duplicate objects with an optional positional offset.
View tool JSON
{
"name": "duplicate_object",
"kind": "act",
"impl": "imperative",
"description": "Duplicate objects with an optional positional offset.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ids": {
"type": "array"
},
"offset": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
}
}
}
}move_objectAction
Set absolute position, apply a delta, or drop to the ground plane.
View tool JSON
{
"name": "move_object",
"kind": "act",
"impl": "imperative",
"description": "Set absolute position, apply a delta, or drop to the ground plane.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ids": {
"type": "array"
},
"position": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"delta": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"drop_to_ground": {
"type": "boolean"
}
}
}
}rotate_objectAction
Rotate in degrees (default) or radians, absolutely or by delta, or about a named axis.
View tool JSON
{
"name": "rotate_object",
"kind": "act",
"impl": "imperative",
"description": "Rotate in degrees (default) or radians, absolutely or by delta, or about a named axis.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"rotation": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"delta": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"axis": {
"type": "string"
},
"angle": {
"type": "number"
},
"degrees": {
"type": "boolean"
}
}
}
}scale_objectAction
Uniform factor, per-axis vector, or a single-axis stretch.
View tool JSON
{
"name": "scale_object",
"kind": "act",
"impl": "imperative",
"description": "Uniform factor, per-axis vector, or a single-axis stretch.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"factor": {
"type": "number"
},
"scale": {},
"axis": {
"type": "string"
},
"amount": {
"type": "number"
}
}
}
}set_materialAction
Set material, colour, roughness, metalness and opacity.
View tool JSON
{
"name": "set_material",
"kind": "act",
"impl": "imperative",
"description": "Set material, colour, roughness, metalness and opacity.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ids": {
"type": "array"
},
"material": {
"type": "string"
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"opacity": {
"type": "number"
}
}
}
}set_cameraAction
Position the camera, frame the whole scene, jump to a named view preset, or switch projection (perspective/orthographic).
View tool JSON
{
"name": "set_camera",
"kind": "act",
"impl": "imperative",
"description": "Position the camera, frame the whole scene, jump to a named view preset, or switch projection (perspective/orthographic).",
"inputSchema": {
"type": "object",
"properties": {
"position": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"target": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"up": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"fov": {
"type": "number"
},
"near": {
"type": "number"
},
"far": {
"type": "number"
},
"projection": {
"type": "string"
},
"preset": {
"type": "string"
},
"frame_all": {
"type": "boolean"
},
"direction": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
}
}
}
}group_objectsAction
Group objects under a named parent for collective reasoning.
View tool JSON
{
"name": "group_objects",
"kind": "act",
"impl": "imperative",
"description": "Group objects under a named parent for collective reasoning.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"name": {
"type": "string"
}
}
}
}ungroup_objectsAction
Dissolve a group, leaving its children in the scene.
View tool JSON
{
"name": "ungroup_objects",
"kind": "act",
"impl": "imperative",
"description": "Dissolve a group, leaving its children in the scene.",
"inputSchema": {
"type": "object",
"properties": {
"group_id": {
"type": "string"
}
}
}
}boolean_operationAction
Exact CSG: union, subtract, intersect or xor over two or more solids. Returns a closed manifold result.
View tool JSON
{
"name": "boolean_operation",
"kind": "act",
"impl": "imperative",
"description": "Exact CSG: union, subtract, intersect or xor over two or more solids. Returns a closed manifold result.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"operation": {
"type": "string"
},
"keep_operands": {
"type": "boolean"
},
"name": {
"type": "string"
}
}
}
}undoAction
Step backwards through the mutation journal.
View tool JSON
{
"name": "undo",
"kind": "act",
"impl": "imperative",
"description": "Step backwards through the mutation journal.",
"inputSchema": {
"type": "object",
"properties": {
"steps": {
"type": "number"
}
}
}
}redoAction
Step forwards after an undo.
View tool JSON
{
"name": "redo",
"kind": "act",
"impl": "imperative",
"description": "Step forwards after an undo.",
"inputSchema": {
"type": "object",
"properties": {
"steps": {
"type": "number"
}
}
}
}inspect_sceneAnswer
Full scene read: objects, bounds, triangles, camera, environment, history.
View tool JSON
{
"name": "inspect_scene",
"kind": "answer",
"impl": "imperative",
"description": "Full scene read: objects, bounds, triangles, camera, environment, history.",
"inputSchema": {
"type": "object",
"properties": {
"deep": {
"type": "boolean"
}
}
}
}inspect_objectAction
Deep read of one object including manifold report and nearest neighbours.
View tool JSON
{
"name": "inspect_object",
"kind": "act",
"impl": "imperative",
"description": "Deep read of one object including manifold report and nearest neighbours.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
}
}
}select_objectAction
Select by id, ids, semantic query, tag, type, material, raycast, all or none.
View tool JSON
{
"name": "select_object",
"kind": "act",
"impl": "imperative",
"description": "Select by id, ids, semantic query, tag, type, material, raycast, all or none.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ids": {
"type": "array"
},
"query": {
"type": "string"
},
"tag": {
"type": "string"
},
"ray": {
"type": "object"
},
"all": {
"type": "boolean"
},
"none": {
"type": "boolean"
}
}
}
}create_profile_solidAction
Freeform geometry: extrude, revolve or sweep a 2D profile into a closed solid. Supports bevel and twist.
View tool JSON
{
"name": "create_profile_solid",
"kind": "act",
"impl": "imperative",
"description": "Freeform geometry: extrude, revolve or sweep a 2D profile into a closed solid. Supports bevel and twist.",
"inputSchema": {
"type": "object",
"properties": {
"method": {
"type": "string"
},
"profile": {
"type": "array"
},
"depth": {
"type": "number"
},
"path": {
"type": "array"
},
"options": {
"type": "object"
}
}
}
}add_modifierAction
Push a procedural modifier onto the object stack: array, mirror, twist, bend, taper, inflate, shell, smooth, subdivide, decimate, lattice, displace.
View tool JSON
{
"name": "add_modifier",
"kind": "act",
"impl": "imperative",
"description": "Push a procedural modifier onto the object stack: array, mirror, twist, bend, taper, inflate, shell, smooth, subdivide, decimate, lattice, displace.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"modifier": {
"type": "string"
},
"options": {
"type": "object"
},
"index": {
"type": "number"
}
}
}
}remove_modifierAction
Remove a modifier from the stack by id or index.
View tool JSON
{
"name": "remove_modifier",
"kind": "act",
"impl": "imperative",
"description": "Remove a modifier from the stack by id or index.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"modifier_id": {
"type": "string"
},
"index": {
"type": "number"
}
}
}
}reorder_modifiersAction
Reorder the non-destructive modifier stack.
View tool JSON
{
"name": "reorder_modifiers",
"kind": "act",
"impl": "imperative",
"description": "Reorder the non-destructive modifier stack.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"order": {
"type": "array"
}
}
}
}define_graphAction
Register a reusable parametric node graph and statically validate it.
View tool JSON
{
"name": "define_graph",
"kind": "act",
"impl": "imperative",
"description": "Register a reusable parametric node graph and statically validate it.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"graph": {
"type": "object"
}
}
}
}evaluate_graphAction
Evaluate a parametric graph with parameter overrides and instantiate the result.
View tool JSON
{
"name": "evaluate_graph",
"kind": "act",
"impl": "imperative",
"description": "Evaluate a parametric graph with parameter overrides and instantiate the result.",
"inputSchema": {
"type": "object",
"properties": {
"graph_id": {
"type": "string"
},
"graph": {
"type": "object"
},
"parameters": {
"type": "object"
},
"instantiate": {
"type": "boolean"
}
}
}
}import_meshAction
Import OBJ, STL (ascii/binary), PLY, glTF or GLB into the scene, optionally normalised to a target size.
View tool JSON
{
"name": "import_mesh",
"kind": "act",
"impl": "imperative",
"description": "Import OBJ, STL (ascii/binary), PLY, glTF or GLB into the scene, optionally normalised to a target size.",
"inputSchema": {
"type": "object",
"properties": {
"data": {},
"format": {
"type": "string"
},
"normalize": {
"type": "boolean"
},
"target_size": {
"type": "number"
}
}
}
}export_sceneAction
Export to STL, ASCII STL, OBJ, PLY or glTF 2.0. Optionally weld everything into one solid first.
View tool JSON
{
"name": "export_scene",
"kind": "act",
"impl": "imperative",
"description": "Export to STL, ASCII STL, OBJ, PLY or glTF 2.0. Optionally weld everything into one solid first.",
"inputSchema": {
"type": "object",
"properties": {
"format": {
"type": "string"
},
"ids": {
"type": "array"
},
"weld_solid": {
"type": "boolean"
},
"selection_only": {
"type": "boolean"
}
}
}
}list_capabilitiesAnswer
Enumerate every primitive, material, modifier, format, node type and joint the kernel supports.
View tool JSON
{
"name": "list_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Enumerate every primitive, material, modifier, format, node type and joint the kernel supports.",
"inputSchema": {
"type": "object",
"properties": {}
}
}compute_mass_propertiesAction
Exact volume, mass, centre of mass and inertia tensor for a chosen physical material.
View tool JSON
{
"name": "compute_mass_properties",
"kind": "act",
"impl": "imperative",
"description": "Exact volume, mass, centre of mass and inertia tensor for a chosen physical material.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"material": {
"type": "string"
},
"density": {
"type": "number"
}
}
}
}analyze_stabilityAction
Support polygon, stability margin and tipping angle — will the design stand up?
View tool JSON
{
"name": "analyze_stability",
"kind": "act",
"impl": "imperative",
"description": "Support polygon, stability margin and tipping angle — will the design stand up?",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"material": {
"type": "string"
}
}
}
}check_collisionsAnswer
Broad-phase AABB plus narrow-phase containment collision detection across the scene.
View tool JSON
{
"name": "check_collisions",
"kind": "answer",
"impl": "imperative",
"description": "Broad-phase AABB plus narrow-phase containment collision detection across the scene.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"include_touching": {
"type": "boolean"
}
}
}
}add_jointAction
Add a mechanical joint (fixed, revolute, prismatic, spherical, planar) and report linkage mobility.
View tool JSON
{
"name": "add_joint",
"kind": "act",
"impl": "imperative",
"description": "Add a mechanical joint (fixed, revolute, prismatic, spherical, planar) and report linkage mobility.",
"inputSchema": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"parent": {
"type": "string"
},
"child": {
"type": "string"
},
"axis": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"limits": {
"type": "array"
}
}
}
}simulateAction
Deterministic rigid-body settle under gravity; optionally apply the resting positions.
View tool JSON
{
"name": "simulate",
"kind": "act",
"impl": "imperative",
"description": "Deterministic rigid-body settle under gravity; optionally apply the resting positions.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"steps": {
"type": "number"
},
"apply": {
"type": "boolean"
}
}
}
}check_printabilityAnswer
Overhang ratio, layer count, wall thickness and support advice for additive manufacturing.
View tool JSON
{
"name": "check_printability",
"kind": "answer",
"impl": "imperative",
"description": "Overhang ratio, layer count, wall thickness and support advice for additive manufacturing.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"nozzle": {
"type": "number"
},
"layer_height": {
"type": "number"
}
}
}
}validate_sceneAction
Manifold, winding, volume, ground and interpenetration diagnostics with severities.
View tool JSON
{
"name": "validate_scene",
"kind": "act",
"impl": "imperative",
"description": "Manifold, winding, volume, ground and interpenetration diagnostics with severities.",
"inputSchema": {
"type": "object",
"properties": {
"ground_check": {
"type": "boolean"
}
}
}
}measureAction
Measure one object or the distance between two.
View tool JSON
{
"name": "measure",
"kind": "act",
"impl": "imperative",
"description": "Measure one object or the distance between two.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"between": {
"type": "array"
}
}
}
}set_environmentAction
HDRI, exposure, background, shadows and post-processing (bloom, SSAO, vignette, tonemap).
View tool JSON
{
"name": "set_environment",
"kind": "act",
"impl": "imperative",
"description": "HDRI, exposure, background, shadows and post-processing (bloom, SSAO, vignette, tonemap).",
"inputSchema": {
"type": "object",
"properties": {
"hdri": {
"type": "string"
},
"exposure": {
"type": "number"
},
"post": {
"type": "object"
}
}
}
}get_historyAnswer
Read the full mutation journal with the current index.
View tool JSON
{
"name": "get_history",
"kind": "answer",
"impl": "imperative",
"description": "Read the full mutation journal with the current index.",
"inputSchema": {
"type": "object",
"properties": {}
}
}clear_sceneAction
Remove every object, group and joint.
View tool JSON
{
"name": "clear_scene",
"kind": "act",
"impl": "imperative",
"description": "Remove every object, group and joint.",
"inputSchema": {
"type": "object",
"properties": {}
}
}