Tool tree
gradeNot graded
styles_make_componentAction
Moves selected layers and their motion into a linked component, replacing them with an instance. Like Group, uses selected siblings in the first selected layer's parent and leaves other parents alone. Adjacent layers keep their appearance; non-adjacent layers change stacking as Group does, at the first selected sibling's stack position. Returns componentId and instanceId.
View tool JSON
{
"name": "styles_make_component",
"kind": "act",
"impl": "imperative",
"description": "Moves selected layers and their motion into a linked component, replacing them with an instance. Like Group, uses selected siblings in the first selected layer's parent and leaves other parents alone. Adjacent layers keep their appearance; non-adjacent layers change stacking as Group does, at the first selected sibling's stack position. Returns componentId and instanceId.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"layerIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
}
},
"required": [
"layerIds"
]
},
"page": "/app"
}styles_add_instanceAction
Places a linked component at its own size, centred by default. Returns instanceId.
View tool JSON
{
"name": "styles_add_instance",
"kind": "act",
"impl": "imperative",
"description": "Places a linked component at its own size, centred by default. Returns instanceId.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"componentId": {
"type": "string"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"width": {
"type": "number",
"exclusiveMinimum": 0
},
"height": {
"type": "number",
"exclusiveMinimum": 0
}
},
"required": [
"componentId"
]
},
"page": "/app"
}styles_update_instanceAction
Merges layer overrides and changes offset (ms), loop or the linked component. resetOverrides clears all overrides first; an empty layer override clears that layer.
View tool JSON
{
"name": "styles_update_instance",
"kind": "act",
"impl": "imperative",
"description": "Merges layer overrides and changes offset (ms), loop or the linked component. resetOverrides clears all overrides first; an empty layer override clears that layer.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"layerId": {
"type": "string"
},
"overrides": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_instance\"}, property overrides."
},
"offset": {
"type": "number"
},
"loop": {
"type": "boolean"
},
"componentId": {
"type": "string"
},
"resetOverrides": {
"default": false,
"type": "boolean"
}
},
"required": [
"layerId"
]
},
"page": "/app"
}styles_list_componentsAnswer
Lists each component id, name, width, height and number of instances across the design.
View tool JSON
{
"name": "styles_list_components",
"kind": "answer",
"impl": "imperative",
"description": "Lists each component id, name, width, height and number of instances across the design.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_set_documentAction
Sets name, export credit (default on), 3D mode, watermark or film transitions. Fetch nested fields with describe_schema domain:command name:set_document.
View tool JSON
{
"name": "styles_set_document",
"kind": "act",
"impl": "imperative",
"description": "Sets name, export credit (default on), 3D mode, watermark or film transitions. Fetch nested fields with describe_schema domain:command name:set_document.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"credit": {
"type": "boolean"
},
"mode3d": {
"type": "boolean"
},
"mark": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"set_document\"}, property mark."
},
{
"type": "null"
}
]
},
"film": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"set_document\"}, property film."
}
}
},
"page": "/app"
}styles_add_artboardAction
Adds an artboard (one image or video when you export). Give a format id (x-16x9, x-1x1, x-4x5, x-9x16, x-header, ig-post, ig-square, ig-story, ...) or a width and height. Optionally copy another artboard.
View tool JSON
{
"name": "styles_add_artboard",
"kind": "act",
"impl": "imperative",
"description": "Adds an artboard (one image or video when you export). Give a format id (x-16x9, x-1x1, x-4x5, x-9x16, x-header, ig-post, ig-square, ig-story, ...) or a width and height. Optionally copy another artboard.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"format": {
"type": "string"
},
"width": {
"type": "integer",
"minimum": 16,
"maximum": 7680
},
"height": {
"type": "integer",
"minimum": 16,
"maximum": 7680
},
"name": {
"type": "string"
},
"duration": {
"description": "ms",
"type": "number",
"minimum": 100,
"maximum": 300000
},
"copyFrom": {
"description": "Artboard id to duplicate.",
"type": "string"
}
}
},
"page": "/app"
}styles_update_artboardAction
Changes an artboard: name, width, height (or format id), duration (ms), fps, background, bgFx {noise, blur, vignette}, camera {zoom, x, y, rotation, rx, ry}, vfx {type, intensity}. Resizing lays the design out again for the new shape (keepLayout false leaves layers where they are).
View tool JSON
{
"name": "styles_update_artboard",
"kind": "act",
"impl": "imperative",
"description": "Changes an artboard: name, width, height (or format id), duration (ms), fps, background, bgFx {noise, blur, vignette}, camera {zoom, x, y, rotation, rx, ry}, vfx {type, intensity}. Resizing lays the design out again for the new shape (keepLayout false leaves layers where they are).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"format": {
"type": "string"
},
"name": {
"type": "string"
},
"width": {
"type": "integer",
"minimum": 16,
"maximum": 7680
},
"height": {
"type": "integer",
"minimum": 16,
"maximum": 7680
},
"duration": {
"type": "number",
"minimum": 100,
"maximum": 300000
},
"fps": {
"type": "integer",
"minimum": 1,
"maximum": 120
},
"background": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_artboard\"}, property background."
},
"bgFx": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_artboard\"}, property bgFx."
},
"backgroundPreset": {
"type": [
"string",
"null"
]
},
"camera": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_artboard\"}, property camera."
},
"vfx": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_artboard\"}, property vfx."
},
"keepLayout": {
"description": "When resizing, scale layer positions to the new size (default true).",
"type": "boolean"
}
}
},
"page": "/app"
}styles_add_layerAction
Adds a layer on top, at index, or inside parentId. Requires layer.type; fetch its fields/defaults with describe_schema domain:layer. Returns layerId.
View tool JSON
{
"name": "styles_add_layer",
"kind": "act",
"impl": "imperative",
"description": "Adds a layer on top, at index, or inside parentId. Requires layer.type; fetch its fields/defaults with describe_schema domain:layer. Returns layerId.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"layer": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"rect",
"ellipse",
"star",
"path",
"text",
"image",
"video",
"device",
"code",
"chart",
"instance",
"group"
]
}
},
"required": [
"type"
],
"additionalProperties": {},
"description": "Fields/defaults/example: describe_schema {domain:\"layer\",name:<type>}."
},
"parentId": {
"type": "string"
},
"index": {
"description": "0 is the bottom. Default: top.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"layer"
]
},
"page": "/app"
}styles_update_layerAction
Changes any properties of a layer (position x/y is the centre, width, height, rotation, scale, opacity 0..1, rx/ry tilt in degrees, shadow, blur, fill, text, style, media, model, finish, frame...). Nested objects like style, media, browser and shadow are merged, so you can send only what changes.
View tool JSON
{
"name": "styles_update_layer",
"kind": "act",
"impl": "imperative",
"description": "Changes any properties of a layer (position x/y is the centre, width, height, rotation, scale, opacity 0..1, rx/ry tilt in degrees, shadow, blur, fill, text, style, media, model, finish, frame...). Nested objects like style, media, browser and shadow are merged, so you can send only what changes.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"layerId": {
"type": "string"
},
"patch": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:\"update_layer\"}, property patch."
}
},
"required": [
"layerId",
"patch"
]
},
"page": "/app"
}styles_delete_layersSensitive Action
Deletes layers (and their animations).
View tool JSON
{
"name": "styles_delete_layers",
"kind": "transact",
"impl": "imperative",
"description": "Deletes layers (and their animations).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"layerIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"layerIds"
]
},
"page": "/app"
}styles_add_animationAction
Animates a layer or @artboard camera. Requires anim.kind, target, start, end; end > start. Fetch kind fields with describe_schema domain:animation. Returns animId.
View tool JSON
{
"name": "styles_add_animation",
"kind": "act",
"impl": "imperative",
"description": "Animates a layer or @artboard camera. Requires anim.kind, target, start, end; end > start. Fetch kind fields with describe_schema domain:animation. Returns animId.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
},
"anim": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"prop",
"preset",
"text",
"counter",
"path"
]
},
"target": {
"type": "string"
},
"start": {
"type": "number"
},
"end": {
"type": "number"
}
},
"required": [
"kind",
"target",
"start",
"end"
],
"additionalProperties": {},
"description": "Kind fields/example: describe_schema {domain:\"animation\",name:<kind>}."
},
"replaceId": {
"description": "Replace this animation in the same command.",
"type": "string"
}
},
"required": [
"anim"
]
},
"page": "/app"
}styles_list_layersAnswer
Lists the layers of an artboard (id, type, name, box) from bottom to top, flattened, with their parent group.
View tool JSON
{
"name": "styles_list_layers",
"kind": "answer",
"impl": "imperative",
"description": "Lists the layers of an artboard (id, type, name, box) from bottom to top, flattened, with their parent group.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"description": "Artboard id. Defaults to the first artboard.",
"type": "string"
}
}
},
"page": "/app"
}styles_describe_schemaAnswer
Returns detailed JSON input schema, example and shared vocabulary on demand. Domains: layer (type or patch), animation (kind or patch), document (doc/artboard/background/bgFx/camera/mark/film/asset/audio/fill/textStyle/easing), command (any edit_design verb). Omit name to list topics. Fetch before constructing complex payloads; schemas include all supported fields and constraints.
View tool JSON
{
"name": "styles_describe_schema",
"kind": "answer",
"impl": "imperative",
"description": "Returns detailed JSON input schema, example and shared vocabulary on demand. Domains: layer (type or patch), animation (kind or patch), document (doc/artboard/background/bgFx/camera/mark/film/asset/audio/fill/textStyle/easing), command (any edit_design verb). Omit name to list topics. Fetch before constructing complex payloads; schemas include all supported fields and constraints.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"domain": {
"type": "string",
"enum": [
"layer",
"animation",
"document",
"command"
]
},
"name": {
"description": "Omit to list names. layer: type or patch; animation: kind or patch; document: part; command: editing verb.",
"type": "string"
}
},
"required": [
"domain"
]
},
"page": "/app"
}styles_list_templatesAction
Lists templates (id, name, category, format, tags). Start with create_design {template:id}.
View tool JSON
{
"name": "styles_list_templates",
"kind": "act",
"impl": "imperative",
"description": "Lists templates (id, name, category, format, tags). Start with create_design {template:id}.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"category": {
"type": "string"
}
}
},
"page": "/app"
}styles_list_formatsAnswer
Lists sizes for artboards. Use a format id with create_design or add_artboard.
View tool JSON
{
"name": "styles_list_formats",
"kind": "answer",
"impl": "imperative",
"description": "Lists sizes for artboards. Use a format id with create_design or add_artboard.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_list_devicesAnswer
Lists device model ids, finishes and screen sizes for add_layer.
View tool JSON
{
"name": "styles_list_devices",
"kind": "answer",
"impl": "imperative",
"description": "Lists device model ids, finishes and screen sizes for add_layer.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_list_layoutsAnswer
Lists device layouts for edit_design → apply_layout.
View tool JSON
{
"name": "styles_list_layouts",
"kind": "answer",
"impl": "imperative",
"description": "Lists device layouts for edit_design → apply_layout.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_list_backgroundsAnswer
Lists up to 150 background presets. Pass bg and fx to update_artboard.
View tool JSON
{
"name": "styles_list_backgrounds",
"kind": "answer",
"impl": "imperative",
"description": "Lists up to 150 background presets. Pass bg and fx to update_artboard.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"collection": {
"type": "string"
}
}
},
"page": "/app"
}styles_list_fontsAnswer
Lists installed font families and weights for text style. Choose an exact family name.
View tool JSON
{
"name": "styles_list_fonts",
"kind": "answer",
"impl": "imperative",
"description": "Lists installed font families and weights for text style. Choose an exact family name.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_replace_designAction
Restores a full validated document. get_design.docId becomes doc.id in the snapshot. Undo brings back the previous design.
View tool JSON
{
"name": "styles_replace_design",
"kind": "act",
"impl": "imperative",
"description": "Restores a full validated document. get_design.docId becomes doc.id in the snapshot. Undo brings back the previous design.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"doc": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Full snapshot; describe_schema {domain:\"document\",name:\"doc\"}. Restore get_design with doc.id = docId."
}
},
"required": [
"doc"
]
},
"page": "/app"
}styles_make_release_kitAction
Makes four editable artboards from supplied release notes and an optional screenshotAssetId already in this design. No content is fetched. An existing kit updates its common content while preserving layout. Otherwise it replaces the current design; Undo restores it. Submit all common fields on updates; omitted optional fields reset to defaults. Returns named artboard ids; render Release motion as video.
View tool JSON
{
"name": "styles_make_release_kit",
"kind": "act",
"impl": "imperative",
"description": "Makes four editable artboards from supplied release notes and an optional screenshotAssetId already in this design. No content is fetched. An existing kit updates its common content while preserving layout. Otherwise it replaces the current design; Undo restores it. Submit all common fields on updates; omitted optional fields reset to defaults. Returns named artboard ids; render Release motion as video.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"product": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"version": {
"default": "",
"type": "string",
"maxLength": 24
},
"headline": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"summary": {
"default": "",
"type": "string",
"maxLength": 100
},
"notes": {
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"url": {
"default": "",
"type": "string",
"maxLength": 160
},
"accent": {
"default": "#4263eb",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"screenshotAssetId": {
"default": null,
"type": [
"string",
"null"
]
}
},
"required": [
"product",
"headline",
"notes"
]
},
"page": "/app"
}styles_make_post_filmAction
Makes an animated social post card from supplied text, name and handle. Nothing is fetched.
View tool JSON
{
"name": "styles_make_post_film",
"kind": "act",
"impl": "imperative",
"description": "Makes an animated social post card from supplied text, name and handle. Nothing is fetched.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 1200
},
"name": {
"type": "string"
},
"handle": {
"type": "string"
},
"verified": {
"type": "boolean"
},
"date": {
"type": "string"
},
"likes": {
"type": "number"
},
"reposts": {
"type": "number"
},
"replies": {
"type": "number"
},
"views": {
"type": "number"
},
"theme": {
"type": "string",
"enum": [
"dark",
"light"
]
},
"accent": {
"type": "string"
},
"format": {
"type": "string",
"enum": [
"x-16x9",
"x-1x1",
"x-4x5",
"x-9x16"
]
}
},
"required": [
"text",
"name",
"handle"
]
},
"page": "/app"
}styles_make_milestoneAction
Makes an animated celebration of a number, with optional growth history.
View tool JSON
{
"name": "styles_make_milestone",
"kind": "act",
"impl": "imperative",
"description": "Makes an animated celebration of a number, with optional growth history.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"value": {
"type": "number"
},
"label": {
"type": "string"
},
"prefix": {
"type": "string"
},
"suffix": {
"type": "string"
},
"decimals": {
"type": "integer",
"minimum": 0,
"maximum": 4
},
"kicker": {
"type": "string"
},
"accent": {
"type": "string"
},
"history": {
"maxItems": 60,
"type": "array",
"items": {
"type": "number"
}
},
"format": {
"type": "string",
"enum": [
"x-16x9",
"x-1x1",
"x-4x5",
"x-9x16"
]
}
},
"required": [
"value",
"label"
]
},
"page": "/app"
}styles_make_code_videoAction
Makes an animated code window from supplied code.
View tool JSON
{
"name": "styles_make_code_video",
"kind": "act",
"impl": "imperative",
"description": "Makes an animated code window from supplied code.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"code": {
"type": "string",
"minLength": 1,
"maxLength": 6000
},
"lang": {
"type": "string"
},
"title": {
"type": "string"
},
"caption": {
"type": "string"
},
"theme": {
"type": "string"
},
"format": {
"type": "string",
"enum": [
"x-16x9",
"x-1x1",
"x-4x5",
"x-9x16"
]
}
},
"required": [
"code"
]
},
"page": "/app"
}styles_render_videoAction
Renders MP4, WebM or GIF in this browser and returns a browser-local blob URL. Default short side 720, fps 30. film:true plays all artboards.
View tool JSON
{
"name": "styles_render_video",
"kind": "act",
"impl": "imperative",
"description": "Renders MP4, WebM or GIF in this browser and returns a browser-local blob URL. Default short side 720, fps 30. film:true plays all artboards.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"type": "string"
},
"film": {
"default": false,
"type": "boolean"
},
"format": {
"default": "mp4",
"type": "string",
"enum": [
"mp4",
"webm",
"gif"
]
},
"shortSide": {
"default": 720,
"type": "number",
"minimum": 240,
"maximum": 1080
},
"fps": {
"default": 30,
"type": "number",
"minimum": 10,
"maximum": 30
}
}
},
"page": "/app"
}styles_export_lottieAction
Exports Lottie JSON in this browser. Default Light scale 0.5; Sharp scale 1. Returns a browser-local blob URL and notes.
View tool JSON
{
"name": "styles_export_lottie",
"kind": "act",
"impl": "imperative",
"description": "Exports Lottie JSON in this browser. Default Light scale 0.5; Sharp scale 1. Returns a browser-local blob URL and notes.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"type": "string"
},
"scale": {
"default": 0.5,
"type": "number",
"minimum": 0.25,
"maximum": 1
}
}
},
"page": "/app"
}styles_get_designAction
Reads the open design. Browser designId is its local document id; remote designIds are different.
View tool JSON
{
"name": "styles_get_design",
"kind": "act",
"impl": "imperative",
"description": "Reads the open design. Browser designId is its local document id; remote designIds are different.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_create_designAction
Starts an empty design or a template in this editor. Undo brings back the previous design. Default format x-4x5.
View tool JSON
{
"name": "styles_create_design",
"kind": "act",
"impl": "imperative",
"description": "Starts an empty design or a template in this editor. Undo brings back the previous design. Default format x-4x5.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"template": {
"type": "string"
},
"format": {
"type": "string"
},
"name": {
"type": "string"
},
"background": {
"type": "string"
}
}
},
"page": "/app"
}styles_apply_templateAction
Replaces the open design with a template. Media is kept; undo restores the previous design.
View tool JSON
{
"name": "styles_apply_template",
"kind": "act",
"impl": "imperative",
"description": "Replaces the open design with a template. Media is kept; undo restores the previous design.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
},
"page": "/app"
}styles_edit_designAction
Applies up to 80 edits atomically, all or none, as a single undo step. steps.command lists every verb; fetch input fields/examples with describe_schema domain:command name:<verb>.
View tool JSON
{
"name": "styles_edit_design",
"kind": "act",
"impl": "imperative",
"description": "Applies up to 80 edits atomically, all or none, as a single undo step. steps.command lists every verb; fetch input fields/examples with describe_schema domain:command name:<verb>.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"steps": {
"minItems": 1,
"maxItems": 80,
"type": "array",
"items": {
"type": "object",
"properties": {
"command": {
"type": "string",
"enum": [
"make_component",
"add_instance",
"update_instance",
"detach_instance",
"delete_component",
"rename_component",
"set_document",
"add_artboard",
"update_artboard",
"delete_artboard",
"move_artboard",
"add_layer",
"update_layer",
"update_layers",
"delete_layers",
"duplicate_layers",
"reorder_layer",
"group_layers",
"ungroup",
"align_layers",
"apply_layout",
"magic_look",
"auto_animate",
"add_animation",
"update_animation",
"delete_animations",
"shift_animations",
"apply_brand",
"add_annotation",
"add_cursor",
"import_svg",
"make_sizes",
"morph_to",
"clear_animations",
"add_asset",
"add_audio",
"update_audio",
"delete_audio"
]
},
"input": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "Fields/example: describe_schema {domain:\"command\",name:<command>}."
}
},
"required": [
"command",
"input"
]
},
"description": "Atomic; use existing or explicitly assigned ids. Read returned ids in a prior call."
}
},
"required": [
"steps"
]
},
"page": "/app"
}styles_add_iconAction
Adds an editable Lucide path; x/y default to the artboard centre. Find names with search_icons.
View tool JSON
{
"name": "styles_add_icon",
"kind": "act",
"impl": "imperative",
"description": "Adds an editable Lucide path; x/y default to the artboard centre. Find names with search_icons.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"artboardId": {
"type": "string"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"size": {
"type": "number",
"minimum": 8,
"maximum": 4000
},
"color": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"strokeWidth": {
"default": 2,
"description": "Line width in the icon’s 24 px grid.",
"type": "number",
"minimum": 0.25,
"maximum": 6
}
},
"required": [
"name"
]
},
"page": "/app"
}styles_search_iconsAnswer
Finds up to 20 Lucide icon names by words. Use a returned name with add_icon.
View tool JSON
{
"name": "styles_search_icons",
"kind": "answer",
"impl": "imperative",
"description": "Finds up to 20 Lucide icon names by words. Use a returned name with add_icon.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"default": "",
"type": "string"
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 20
}
}
},
"page": "/app"
}styles_paste_layersAction
Pastes layers and linked components from this local document. fromDesignId must equal get_design.designId. To import another document, use replace_design first.
View tool JSON
{
"name": "styles_paste_layers",
"kind": "act",
"impl": "imperative",
"description": "Pastes layers and linked components from this local document. fromDesignId must equal get_design.designId. To import another document, use replace_design first.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"fromDesignId": {
"type": "string",
"description": "Design to copy from (remote), or current document id (browser)."
},
"fromArtboardId": {
"type": "string"
},
"artboardId": {
"type": "string"
},
"layerIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Read layer ids with list_layers."
},
"dx": {
"default": 24,
"type": "number"
},
"dy": {
"default": 24,
"type": "number"
}
},
"required": [
"fromDesignId",
"layerIds"
]
},
"page": "/app"
}styles_add_mediaAction
Adds a screenshot or image from base64 (up to 3 MB) or a public URL via the server’s safe fetch. deviceId explicitly replaces a screenshot; otherwise only an empty device is used. place defaults to device.
View tool JSON
{
"name": "styles_add_media",
"kind": "act",
"impl": "imperative",
"description": "Adds a screenshot or image from base64 (up to 3 MB) or a public URL via the server’s safe fetch. deviceId explicitly replaces a screenshot; otherwise only an empty device is used. place defaults to device.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string"
},
"base64": {
"type": "string"
},
"mimeType": {
"default": "image/png",
"type": "string"
},
"place": {
"default": "device",
"type": "string",
"enum": [
"device",
"layer",
"background",
"none"
]
},
"deviceId": {
"type": "string"
},
"artboardId": {
"type": "string"
}
}
},
"page": "/app"
}styles_add_media_from_urlAction
Compatibility alias for add_media {url,place:"layer"}. Images download through the same-origin safe-fetch route, avoiding CORS. Videos must be uploaded in the editor.
View tool JSON
{
"name": "styles_add_media_from_url",
"kind": "act",
"impl": "imperative",
"description": "Compatibility alias for add_media {url,place:\"layer\"}. Images download through the same-origin safe-fetch route, avoiding CORS. Videos must be uploaded in the editor.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
]
},
"page": "/app"
}styles_select_artboardAction
Shows an existing artboard. Read artboard ids with get_design.
View tool JSON
{
"name": "styles_select_artboard",
"kind": "act",
"impl": "imperative",
"description": "Shows an existing artboard. Read artboard ids with get_design.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"type": "string"
}
},
"required": [
"artboardId"
]
},
"page": "/app"
}styles_playAction
Plays or pauses the preview, or seeks to t milliseconds (clamped to this artboard’s duration).
View tool JSON
{
"name": "styles_play",
"kind": "act",
"impl": "imperative",
"description": "Plays or pauses the preview, or seeks to t milliseconds (clamped to this artboard’s duration).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"playing": {
"type": "boolean"
},
"t": {
"type": "number",
"minimum": 0
}
}
},
"page": "/app"
}styles_undoAction
Run undo in the editor’s shared history. Batch edits are one history step.
View tool JSON
{
"name": "styles_undo",
"kind": "act",
"impl": "imperative",
"description": "Run undo in the editor’s shared history. Batch edits are one history step.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_redoAction
Run redo in the editor’s shared history. Batch edits are one history step.
View tool JSON
{
"name": "styles_redo",
"kind": "act",
"impl": "imperative",
"description": "Run redo in the editor’s shared history. Batch edits are one history step.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/app"
}styles_see_designAction
Returns a preview at t milliseconds (default after intros, matching remote MCP).
View tool JSON
{
"name": "styles_see_design",
"kind": "act",
"impl": "imperative",
"description": "Returns a preview at t milliseconds (default after intros, matching remote MCP).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"type": "string"
},
"t": {
"type": "number",
"minimum": 0
}
}
},
"page": "/app"
}styles_render_imageAction
Returns PNG, JPEG or WebP bytes as image content for the agent. scale 0.25–2, default 1. made with styles is included unless credit:false.
View tool JSON
{
"name": "styles_render_image",
"kind": "act",
"impl": "imperative",
"description": "Returns PNG, JPEG or WebP bytes as image content for the agent. scale 0.25–2, default 1. made with styles is included unless credit:false.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"artboardId": {
"type": "string"
},
"t": {
"type": "number",
"minimum": 0
},
"format": {
"default": "png",
"type": "string",
"enum": [
"png",
"jpeg",
"webp"
]
},
"scale": {
"default": 1,
"type": "number",
"minimum": 0.25,
"maximum": 2
},
"credit": {
"type": "boolean"
}
}
},
"page": "/app"
}styles_export_imageAction
Downloads PNG, JPG or WebP to the person’s browser. Scale 1–4 (default 1); larger exports take longer. Returns image content too. Use render_image for agent inspection.
View tool JSON
{
"name": "styles_export_image",
"kind": "act",
"impl": "imperative",
"description": "Downloads PNG, JPG or WebP to the person’s browser. Scale 1–4 (default 1); larger exports take longer. Returns image content too. Use render_image for agent inspection.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"format": {
"default": "png",
"type": "string",
"enum": [
"png",
"jpg",
"webp"
]
},
"scale": {
"default": 1,
"type": "number",
"minimum": 1,
"maximum": 4
}
}
},
"page": "/app"
}