morphus.myles4miles.chatgpt.site
Morphus is an AI-native workspace for designing worlds and generating playable game experiences.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 23 · Act 124 · Transact 7 · Score: Not yet scored
Tool inspector
create_articulated_asset
Creates a true Articraft-generated articulated 3D asset in the editor viewport by calling the local Articraft Python SDK/compiler, compiling an Articraft model.py into URDF/mesh assets, and importing the result. Use this for objects with semantic parts and joints such as robot arms, desk lamps, cabinets with drawers, vehicles with wheels, doors, lids, sliders, hinges, levers, grippers, and mechanisms.
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
name |
string | yes | Asset display name, e.g. 'Articulated Desk Lamp' |
prompt |
string | no | The original natural-language asset request. Used as Articraft provenance metadata. |
x |
number | no | Root world X position |
y |
number | no | Root world Y position |
z |
number | no | Root world Z position |
showJointGuides |
boolean | no | Whether to add visible pivot/axis guide primitives for each joint. Default true. |
parts |
array | yes | Semantic parts. Each part becomes a viewport node. Positions are local to parentPartId when provided, otherwise local to the asset root. |
joints |
array | yes | Articulations between parts, using Articraft/URDF-style conventions: origin is in the parent part frame; axis is in the joint frame; revolute values… |
Raw JSON schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Asset display name, e.g. 'Articulated Desk Lamp'"
},
"prompt": {
"type": "string",
"description": "The original natural-language asset request. Used as Articraft provenance metadata."
},
"x": {
"type": "number",
"description": "Root world X position"
},
"y": {
"type": "number",
"description": "Root world Y position"
},
"z": {
"type": "number",
"description": "Root world Z position"
},
"showJointGuides": {
"type": "boolean",
"description": "Whether to add visible pivot/axis guide primitives for each joint. Default true."
},
"parts": {
"type": "array",
"description": "Semantic parts. Each part becomes a viewport node. Positions are local to parentPartId when provided, otherwise local to the asset root.",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Stable part id such as 'base', 'upper_arm', 'drawer'"
},
"name": {
"type": "string",
"description": "Part display name"
},
"parentPartId": {
"type": "string",
"description": "Optional parent part id. Use 'root' or omit for root-level parts."
},
"semanticRole": {
"type": "string",
"description": "Semantic role such as base, housing, hinge, arm, wheel, drawer, lid, handle, bracket, knob"
},
"shape": {
"type": "string",
"enum": [
"cube",
"box",
"sphere",
"cylinder",
"cone"
],
"description": "Simple viewport primitive shape"
},
"x": {
"type": "number",
"description": "Local X position"
},
"y": {
"type": "number",
"description": "Local Y position"
},
"z": {
"type": "number",
"description": "Local Z position"
},
"sizeX": {
"type": "number",
"description": "Part size along X"
},
"sizeY": {
"type": "number",
"description": "Part size along Y"
},
"sizeZ": {
"type": "number",
"description": "Part size along Z"
},
"rotationX": {
"type": "number",
"description": "Local X rotation in radians"
},
"rotationY": {
"type": "number",
"description": "Local Y rotation in radians"
},
"rotationZ": {
"type": "number",
"description": "Local Z rotation in radians"
},
"pivotX": {
"type": "number",
"description": "Optional local pivot X for hinge/slider previews"
},
"pivotY": {
"type": "number",
"description": "Optional local pivot Y for hinge/slider previews"
},
"pivotZ": {
"type": "number",
"description": "Optional local pivot Z for hinge/slider previews"
},
"materialId": {
"type": "string",
"description": "Existing material id to use"
},
"color": {
"type": "string",
"description": "Hex color if a new material should be created for this part"
},
"metalness": {
"type": "number",
"description": "Optional material metalness 0-1"
},
"roughness": {
"type": "number",
"description": "Optional material roughness 0-1"
},
"mass": {
"type": "number",
"description": "Optional physical mass metadata"
}
},
"required": [
"id",
"name",
"shape",
"x",
"y",
"z",
"sizeX",
"sizeY",
"sizeZ"
]
}
},
"joints": {
"type": "array",
"description": "Articulations between parts, using Articraft/URDF-style conventions: origin is in the parent part frame; axis is in the joint frame; revolute values…",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Stable joint id, e.g. 'base_to_arm'"
},
"name": {
"type": "string",
"description": "Joint display name"
},
"type": {
"type": "string",
"enum": [
"fixed",
"revolute",
"continuous",
"prismatic",
"ball"
],
"description": "Joint/articulation type"
},
"parentPartId": {
"type": "string",
"description": "Parent part id"
},
"childPartId": {
"type": "string",
"description": "Child part id"
},
"originX": {
"type": "number",
"description": "Joint origin X in parent part frame"
},
"originY": {
"type": "number",
"description": "Joint origin Y in parent part frame"
},
"originZ": {
"type": "number",
"description": "Joint origin Z in parent part frame"
},
"axisX": {
"type": "number",
"description": "Joint axis X"
},
"axisY": {
"type": "number",
"description": "Joint axis Y"
},
"axisZ": {
"type": "number",
"description": "Joint axis Z"
},
"lower": {
"type": "number",
"description": "Lower motion limit; radians for revolute, meters for prismatic"
},
"upper": {
"type": "number",
"description": "Upper motion limit; radians for revolute, meters for prismatic"
},
"defaultValue": {
"type": "number",
"description": "Optional default preview value"
},
"effort": {
"type": "number",
"description": "Optional effort limit metadata"
},
"velocity": {
"type": "number",
"description": "Optional velocity limit metadata"
},
"mimicJointId": {
"type": "string",
"description": "Optional source joint id this joint mimics"
},
"mimicMultiplier": {
"type": "number",
"description": "Optional mimic multiplier"
},
"mimicOffset": {
"type": "number",
"description": "Optional mimic offset"
}
},
"required": [
"id",
"type",
"parentPartId",
"childPartId"
]
}
}
},
"required": [
"name",
"parts",
"joints"
]
}
Similar websites
damnpdfs.com
Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.
insignifi4nt.github.io
broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.
cabinet.varera.studio
The Cartographer's Cabinet
postext.dev
Try the Postext typesetting engine live: edit markdown, manage figures and tables, tune Knuth-Plass justification, and export print-ready PDF and EPUB — in the …