gradeNot graded
list_room_stylesAnswer
List the bedroom design styles available in DOMus, each with a one-line tagline. Call this first when the user wants a designed room without naming a style.
View tool JSON
{
"name": "list_room_styles",
"kind": "answer",
"impl": "imperative",
"description": "List the bedroom design styles available in DOMus, each with a one-line tagline. Call this first when the user wants a designed room without naming a style.",
"inputSchema": {},
"page": "/DOMus/"
}get_style_guideAnswer
Get the full design guide for one bedroom style — palette, rules, recommended furniture composition, and placement hints. Pass one of: scandinavian, japandi, boho, industrial, minimalist.
View tool JSON
{
"name": "get_style_guide",
"kind": "answer",
"impl": "imperative",
"description": "Get the full design guide for one bedroom style — palette, rules, recommended furniture composition, and placement hints. Pass one of: scandinavian, japandi, boho, industrial, minimalist.",
"inputSchema": {
"type": "object",
"properties": {
"style": {
"type": "string"
}
},
"required": [
"style"
]
},
"page": "/DOMus/"
}suggest_color_paletteAction
Return a 5-color coordinated palette (hex codes) for a given style. The keys are primary/secondary/accent/wall/floor and can be passed straight to set_room_colors and set_furniture_color.
View tool JSON
{
"name": "suggest_color_palette",
"kind": "act",
"impl": "imperative",
"description": "Return a 5-color coordinated palette (hex codes) for a given style. The keys are primary/secondary/accent/wall/floor and can be passed straight to set_room_colors and set_furniture_color.",
"inputSchema": {
"type": "object",
"properties": {
"style": {
"type": "string"
},
"baseHex": {
"anyOf": [
{
"not": {}
},
{
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
],
"description": "Optional anchor hex color; the palette stays style-faithful either way."
}
},
"required": [
"style"
]
},
"page": "/DOMus/"
}suggest_layoutAction
Suggest an arrangement plan (in plain text with sample coordinates) tailored to a given style and the current room dimensions. Always call get_room_state first to read the current dimensions.
View tool JSON
{
"name": "suggest_layout",
"kind": "act",
"impl": "imperative",
"description": "Suggest an arrangement plan (in plain text with sample coordinates) tailored to a given style and the current room dimensions. Always call get_room_state first to read the current dimensions.",
"inputSchema": {
"type": "object",
"properties": {
"style": {
"type": "string"
},
"room": {
"type": "object",
"properties": {
"width": {
"type": "number"
},
"length": {
"type": "number"
}
},
"required": [
"width",
"length"
],
"additionalProperties": false
}
},
"required": [
"style",
"room"
]
},
"page": "/DOMus/"
}furniture_combo_for_styleAnswer
Return a list of recommended furniture pieces (kind, target placement notes, palette) for a given style. Use this to plan the sequence of add_furniture calls.
View tool JSON
{
"name": "furniture_combo_for_style",
"kind": "answer",
"impl": "imperative",
"description": "Return a list of recommended furniture pieces (kind, target placement notes, palette) for a given style. Use this to plan the sequence of add_furniture calls.",
"inputSchema": {
"type": "object",
"properties": {
"style": {
"type": "string"
}
},
"required": [
"style"
]
},
"page": "/DOMus/"
}get_design_principlesAnswer
Return a short text on a single design principle. Useful for deepening a specific aspect (balance, rhythm, focal_point, lighting, proportion).
View tool JSON
{
"name": "get_design_principles",
"kind": "answer",
"impl": "imperative",
"description": "Return a short text on a single design principle. Useful for deepening a specific aspect (balance, rhythm, focal_point, lighting, proportion).",
"inputSchema": {
"type": "object",
"properties": {
"topic": {
"type": "string",
"enum": [
"balance",
"rhythm",
"focal_point",
"lighting",
"proportion"
]
}
},
"required": [
"topic"
]
},
"page": "/DOMus/"
}get_room_stateAnswer
Return the full current room state — dimensions, colors, every furniture item with id/position/colors. Call this before mutating anything to read current values.
View tool JSON
{
"name": "get_room_state",
"kind": "answer",
"impl": "imperative",
"description": "Return the full current room state — dimensions, colors, every furniture item with id/position/colors. Call this before mutating anything to read current values.",
"inputSchema": {},
"page": "/DOMus/"
}set_room_dimensionsAction
Set the bedroom dimensions in meters. Width and length 2-20, height 2-4.
View tool JSON
{
"name": "set_room_dimensions",
"kind": "act",
"impl": "imperative",
"description": "Set the bedroom dimensions in meters. Width and length 2-20, height 2-4.",
"inputSchema": {
"type": "object",
"properties": {
"width": {
"type": "number",
"minimum": 2,
"maximum": 20
},
"length": {
"type": "number",
"minimum": 2,
"maximum": 20
},
"height": {
"type": "number",
"minimum": 2,
"maximum": 4
}
},
"required": [
"width",
"length",
"height"
]
},
"page": "/DOMus/"
}set_room_colorsAction
Set the wall and/or floor color of the room. Both args are optional 6-digit hex (#RRGGBB).
View tool JSON
{
"name": "set_room_colors",
"kind": "act",
"impl": "imperative",
"description": "Set the wall and/or floor color of the room. Both args are optional 6-digit hex (#RRGGBB).",
"inputSchema": {
"type": "object",
"properties": {
"wallColor": {
"anyOf": [
{
"not": {}
},
{
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
]
},
"floorColor": {
"anyOf": [
{
"not": {}
},
{
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
]
}
}
},
"page": "/DOMus/"
}add_furnitureAction
Add a furniture item at exact room-local coordinates (meters). Room origin is at the (0,0,0) floor corner; x along room width, z along room length, y up. The store clamps the footprint to the room bounds — out-of-bounds placements are clamped silently. Returns the new item id, which you need for any later set_furniture_color / move_furniture / rotate_furniture calls.
View tool JSON
{
"name": "add_furniture",
"kind": "act",
"impl": "imperative",
"description": "Add a furniture item at exact room-local coordinates (meters). Room origin is at the (0,0,0) floor corner; x along room width, z along room length, y up. The store clamps the footprint to the room bounds — out-of-bounds placements are clamped silently. Returns the new item id, which you need for any later set_furniture_color / move_furniture / rotate_furniture calls.",
"inputSchema": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"bed",
"nightstand",
"wardrobe",
"dresser",
"lamp"
]
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "meters along room width (X) axis"
},
"y": {
"type": "number",
"description": "meters above the floor; 0 = on the floor"
},
"z": {
"type": "number",
"description": "meters along room length (Z) axis"
}
},
"required": [
"x",
"y",
"z"
],
"additionalProperties": false
},
"rotationY": {
"anyOf": [
{
"not": {}
},
{
"type": "number",
"minimum": 0,
"maximum": 6.283185307179586
}
],
"description": "Rotation around the vertical axis, in radians. 0 = facing +Z, PI/2 = facing +X."
},
"scale": {
"anyOf": [
{
"not": {}
},
{
"type": "object",
"properties": {
"x": {
"type": "number",
"exclusiveMinimum": 0
},
"y": {
"type": "number",
"exclusiveMinimum": 0
},
"z": {
"type": "number",
"exclusiveMinimum": 0
}
},
"required": [
"x",
"y",
"z"
],
"additionalProperties": false
}
]
},
"colors": {
"anyOf": [
{
"not": {}
},
{
"type": "object",
"properties": {
"primary": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"secondary": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"accent": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
},
"additionalProperties": false
}
]
}
},
"required": [
"kind",
"position"
]
},
"page": "/DOMus/"
}remove_furnitureAction
Remove a furniture item by id. Call list_furniture first if you need the id.
View tool JSON
{
"name": "remove_furniture",
"kind": "act",
"impl": "imperative",
"description": "Remove a furniture item by id. Call list_furniture first if you need the id.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
}
},
"required": [
"id"
]
},
"page": "/DOMus/"
}list_furnitureAnswer
Return a one-line-per-item summary table (id, kind, position, colors). Use this to discover ids before mutating them.
View tool JSON
{
"name": "list_furniture",
"kind": "answer",
"impl": "imperative",
"description": "Return a one-line-per-item summary table (id, kind, position, colors). Use this to discover ids before mutating them.",
"inputSchema": {},
"page": "/DOMus/"
}set_furniture_colorAction
Set one color slot of a furniture item. The slot depends on the kind: bed/nightstand/wardrobe/dresser/lamp all accept primary, secondary, accent (some slots may be unused).
View tool JSON
{
"name": "set_furniture_color",
"kind": "act",
"impl": "imperative",
"description": "Set one color slot of a furniture item. The slot depends on the kind: bed/nightstand/wardrobe/dresser/lamp all accept primary, secondary, accent (some slots may be unused).",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"slot": {
"type": "string",
"enum": [
"primary",
"secondary",
"accent"
]
},
"hex": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
},
"required": [
"id",
"slot",
"hex"
]
},
"page": "/DOMus/"
}set_furniture_scaleAction
Set per-axis scale multipliers for a furniture item. Each axis is clamped to the kind-specific range.
View tool JSON
{
"name": "set_furniture_scale",
"kind": "act",
"impl": "imperative",
"description": "Set per-axis scale multipliers for a furniture item. Each axis is clamped to the kind-specific range.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"x": {
"anyOf": [
{
"not": {}
},
{
"type": "number",
"exclusiveMinimum": 0
}
]
},
"y": {
"anyOf": [
{
"not": {}
},
{
"type": "number",
"exclusiveMinimum": 0
}
]
},
"z": {
"anyOf": [
{
"not": {}
},
{
"type": "number",
"exclusiveMinimum": 0
}
]
}
},
"required": [
"id"
]
},
"page": "/DOMus/"
}move_furnitureAction
Move a furniture item to new (x, z) coordinates. Y is preserved. Position is clamped to room bounds.
View tool JSON
{
"name": "move_furniture",
"kind": "act",
"impl": "imperative",
"description": "Move a furniture item to new (x, z) coordinates. Y is preserved. Position is clamped to room bounds.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"x": {
"type": "number",
"description": "meters"
},
"z": {
"type": "number",
"description": "meters"
}
},
"required": [
"id",
"x",
"z"
]
},
"page": "/DOMus/"
}rotate_furnitureAction
Rotate a furniture item around the vertical axis. rotationY is in radians [0, 2π).
View tool JSON
{
"name": "rotate_furniture",
"kind": "act",
"impl": "imperative",
"description": "Rotate a furniture item around the vertical axis. rotationY is in radians [0, 2π).",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"rotationY": {
"type": "number",
"minimum": 0,
"maximum": 6.283185307179586
}
},
"required": [
"id",
"rotationY"
]
},
"page": "/DOMus/"
}undoAction
Undo the last mutation. Reverts to the previous state of the scene.
View tool JSON
{
"name": "undo",
"kind": "act",
"impl": "imperative",
"description": "Undo the last mutation. Reverts to the previous state of the scene.",
"inputSchema": {},
"page": "/DOMus/"
}redoAction
Redo the last undone mutation.
View tool JSON
{
"name": "redo",
"kind": "act",
"impl": "imperative",
"description": "Redo the last undone mutation.",
"inputSchema": {},
"page": "/DOMus/"
}reset_roomAction
Reset the room to default dimensions and remove all furniture. Cannot be undone except via the global undo stack.
View tool JSON
{
"name": "reset_room",
"kind": "act",
"impl": "imperative",
"description": "Reset the room to default dimensions and remove all furniture. Cannot be undone except via the global undo stack.",
"inputSchema": {},
"page": "/DOMus/"
}