gradeNot graded
inspect_documentAnswer
Read a compact, filterable, paginated summary of the active Easel File, its Canvas, Frames, Layers, bindings, assets, and selection.
View tool JSON
{
"name": "inspect_document",
"kind": "answer",
"impl": "imperative",
"description": "Read a compact, filterable, paginated summary of the active Easel File, its Canvas, Frames, Layers, bindings, assets, and selection.",
"inputSchema": {
"type": "object",
"properties": {
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"scope": {
"type": "string",
"enum": [
"file",
"frame",
"selection",
"annotations",
"history"
]
},
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"nodeIds": {
"type": "array",
"maxItems": 20,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"content": {
"type": "string",
"maxLength": 6000
},
"bindingKey": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"maxFrames": {
"type": "integer",
"minimum": 1,
"maximum": 8
},
"maxLayers": {
"type": "integer",
"minimum": 1,
"maximum": 80
},
"maxTextChars": {
"type": "integer",
"minimum": 20,
"maximum": 600
},
"offset": {
"type": "integer",
"minimum": 0
},
"detail": {
"type": "string",
"enum": [
"compact",
"full"
]
},
"includeResolved": {
"type": "boolean"
}
},
"additionalProperties": false
}
}open_fileAction
Switch to one saved Easel File by exact ID or exact name and return its active summary.
View tool JSON
{
"name": "open_file",
"kind": "act",
"impl": "imperative",
"description": "Switch to one saved Easel File by exact ID or exact name and return its active summary.",
"inputSchema": {
"type": "object",
"properties": {
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"oneOf": [
{
"required": [
"fileId"
]
},
{
"required": [
"fileName"
]
}
],
"additionalProperties": false
}
}inspect_assetsAnswer
Read compact asset names, sources, types, dimensions, and stable asset IDs with exact filters and pagination.
View tool JSON
{
"name": "inspect_assets",
"kind": "answer",
"impl": "imperative",
"description": "Read compact asset names, sources, types, dimensions, and stable asset IDs with exact filters and pagination.",
"inputSchema": {
"type": "object",
"properties": {
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"source": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"type": {
"type": "string",
"enum": [
"image"
]
},
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"maxAssets": {
"type": "integer",
"minimum": 1,
"maximum": 40
},
"offset": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
}focus_for_inspectionAction
Center requested Layers or Frames for visual inspection and temporarily hide side panels.
View tool JSON
{
"name": "focus_for_inspection",
"kind": "act",
"impl": "imperative",
"description": "Center requested Layers or Frames for visual inspection and temporarily hide side panels.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array",
"minItems": 1,
"maxItems": 8,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
}
},
"required": [
"ids"
],
"additionalProperties": false
}
}capture_frameAction
Render one Frame as a visible PNG preview at 1x or 2x and return bounded snapshot metadata.
View tool JSON
{
"name": "capture_frame",
"kind": "act",
"impl": "imperative",
"description": "Render one Frame as a visible PNG preview at 1x or 2x and return bounded snapshot metadata.",
"inputSchema": {
"type": "object",
"properties": {
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"scale": {
"type": "integer",
"enum": [
1,
2
]
}
},
"required": [
"frameId"
],
"additionalProperties": false
}
}create_frameAction
Create a named Website, Graphic, or custom-size Frame on the active Canvas.
View tool JSON
{
"name": "create_frame",
"kind": "act",
"impl": "imperative",
"description": "Create a named Website, Graphic, or custom-size Frame on the active Canvas.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"preset": {
"type": "string",
"enum": [
"website",
"website-mobile",
"graphic"
]
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
}
},
"required": [
"name"
],
"additionalProperties": false
}
}write_frameAction
Append or explicitly replace a Frame child tree using at most 100 editable structured Layers.
View tool JSON
{
"name": "write_frame",
"kind": "act",
"impl": "imperative",
"description": "Append or explicitly replace a Frame child tree using at most 100 editable structured Layers.",
"inputSchema": {
"type": "object",
"properties": {
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"mode": {
"type": "string",
"enum": [
"append",
"replace"
]
},
"elements": {
"type": "array",
"minItems": 1,
"maxItems": 100,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"rotation": {
"type": "number",
"minimum": -360,
"maximum": 360
},
"sizing": {
"type": "object",
"properties": {
"width": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
},
"height": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
}
},
"required": [
"width",
"height"
],
"additionalProperties": false
},
"content": {
"type": "string",
"maxLength": 6000
},
"style": {
"type": "object",
"properties": {
"fill": {
"type": "string",
"maxLength": 80
},
"opacity": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"borderColor": {
"type": "string",
"maxLength": 80
},
"borderWidth": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"borderStyle": {
"type": "string",
"enum": [
"solid",
"dashed",
"dotted"
]
},
"borderRadius": {
"type": "number",
"minimum": 0,
"maximum": 20000
},
"color": {
"type": "string",
"maxLength": 80
},
"fontFamily": {
"type": "string",
"maxLength": 160
},
"fontSize": {
"type": "number",
"minimum": 1,
"maximum": 400
},
"fontWeight": {
"type": "number",
"enum": [
400,
500,
600,
700
]
},
"lineHeight": {
"type": "number",
"minimum": 0.5,
"maximum": 4
},
"letterSpacing": {
"type": "number",
"minimum": -40,
"maximum": 80
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
}
},
"additionalProperties": false
},
"layout": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"free",
"flex-row",
"flex-column"
]
},
"gap": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"padding": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"alignItems": {
"type": "string",
"enum": [
"start",
"center",
"end",
"stretch"
]
},
"justifyContent": {
"type": "string",
"enum": [
"start",
"center",
"end",
"space-between"
]
},
"clipContent": {
"type": "boolean"
},
"wrap": {
"type": "boolean"
}
},
"additionalProperties": false
},
"shape": {
"type": "object",
"properties": {
"sides": {
"type": "integer",
"minimum": 3,
"maximum": 12
}
},
"additionalProperties": false
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"role": {
"type": "string",
"enum": [
"reference",
"content"
]
},
"label": {
"type": "string",
"maxLength": 160
},
"alt": {
"type": "string",
"maxLength": 240
}
},
"required": [
"assetId"
],
"additionalProperties": false
},
"hidden": {
"type": "boolean"
},
"locked": {
"type": "boolean"
},
"binding": {
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"sourceLabel": {
"type": "string",
"maxLength": 120
}
},
"required": [
"key"
],
"additionalProperties": false
},
"children": {
"type": "array",
"maxItems": 100,
"items": {}
}
},
"required": [
"type",
"width",
"height"
],
"additionalProperties": false
}
},
"force": {
"type": "boolean",
"description": "Deliberately include locked content in a replace."
}
},
"required": [
"frameId",
"mode",
"elements"
],
"additionalProperties": false
}
}insert_elementsAction
Insert a bounded editable Layer tree into one exact Frame using the shared action layer.
View tool JSON
{
"name": "insert_elements",
"kind": "act",
"impl": "imperative",
"description": "Insert a bounded editable Layer tree into one exact Frame using the shared action layer.",
"inputSchema": {
"type": "object",
"properties": {
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"parentId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"elements": {
"type": "array",
"minItems": 1,
"maxItems": 100,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"rotation": {
"type": "number",
"minimum": -360,
"maximum": 360
},
"sizing": {
"type": "object",
"properties": {
"width": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
},
"height": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
}
},
"required": [
"width",
"height"
],
"additionalProperties": false
},
"content": {
"type": "string",
"maxLength": 6000
},
"style": {
"type": "object",
"properties": {
"fill": {
"type": "string",
"maxLength": 80
},
"opacity": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"borderColor": {
"type": "string",
"maxLength": 80
},
"borderWidth": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"borderStyle": {
"type": "string",
"enum": [
"solid",
"dashed",
"dotted"
]
},
"borderRadius": {
"type": "number",
"minimum": 0,
"maximum": 20000
},
"color": {
"type": "string",
"maxLength": 80
},
"fontFamily": {
"type": "string",
"maxLength": 160
},
"fontSize": {
"type": "number",
"minimum": 1,
"maximum": 400
},
"fontWeight": {
"type": "number",
"enum": [
400,
500,
600,
700
]
},
"lineHeight": {
"type": "number",
"minimum": 0.5,
"maximum": 4
},
"letterSpacing": {
"type": "number",
"minimum": -40,
"maximum": 80
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
}
},
"additionalProperties": false
},
"layout": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"free",
"flex-row",
"flex-column"
]
},
"gap": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"padding": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"alignItems": {
"type": "string",
"enum": [
"start",
"center",
"end",
"stretch"
]
},
"justifyContent": {
"type": "string",
"enum": [
"start",
"center",
"end",
"space-between"
]
},
"clipContent": {
"type": "boolean"
},
"wrap": {
"type": "boolean"
}
},
"additionalProperties": false
},
"shape": {
"type": "object",
"properties": {
"sides": {
"type": "integer",
"minimum": 3,
"maximum": 12
}
},
"additionalProperties": false
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"role": {
"type": "string",
"enum": [
"reference",
"content"
]
},
"label": {
"type": "string",
"maxLength": 160
},
"alt": {
"type": "string",
"maxLength": 240
}
},
"required": [
"assetId"
],
"additionalProperties": false
},
"hidden": {
"type": "boolean"
},
"locked": {
"type": "boolean"
},
"binding": {
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"sourceLabel": {
"type": "string",
"maxLength": 120
}
},
"required": [
"key"
],
"additionalProperties": false
},
"children": {
"type": "array",
"maxItems": 100,
"items": {}
}
},
"required": [
"type",
"width",
"height"
],
"additionalProperties": false
}
}
},
"required": [
"elements"
],
"oneOf": [
{
"required": [
"frameId"
]
},
{
"required": [
"parentId"
]
}
],
"additionalProperties": false
}
}update_elementsAction
Update Website mock-up Layers or use the explicit history branch to undo or redo the active File. When an edit addresses a visible review note, include that note ID in annotationIds on the same update; a successful update removes only those addressed notes in the same undoable transaction.
View tool JSON
{
"name": "update_elements",
"kind": "act",
"impl": "imperative",
"description": "Update Website mock-up Layers or use the explicit history branch to undo or redo the active File. When an edit addresses a visible review note, include that note ID in annotationIds on the same update; a successful update removes only those addressed notes in the same undoable transaction.",
"inputSchema": {
"type": "object",
"properties": {
"updates": {
"type": "array",
"minItems": 1,
"maxItems": 50,
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"target": {
"type": "object",
"properties": {
"selection": {
"type": "boolean",
"const": true
},
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"content": {
"type": "string",
"maxLength": 6000
},
"bindingKey": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"additionalProperties": false
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 20000
},
"rotation": {
"type": "number",
"minimum": -360,
"maximum": 360
},
"annotationIds": {
"type": "array",
"maxItems": 20,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"description": "Review note IDs explicitly addressed by this update; successful updates remove only these notes."
},
"sizing": {
"type": "object",
"properties": {
"width": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
},
"height": {
"type": "string",
"enum": [
"fixed",
"hug",
"fill"
]
}
},
"minProperties": 1,
"additionalProperties": false
},
"content": {
"type": "string",
"maxLength": 6000
},
"style": {
"type": "object",
"properties": {
"fill": {
"type": "string",
"maxLength": 80
},
"opacity": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"borderColor": {
"type": "string",
"maxLength": 80
},
"borderWidth": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"borderStyle": {
"type": "string",
"enum": [
"solid",
"dashed",
"dotted"
]
},
"borderRadius": {
"type": "number",
"minimum": 0,
"maximum": 20000
},
"color": {
"type": "string",
"maxLength": 80
},
"fontFamily": {
"type": "string",
"maxLength": 160
},
"fontSize": {
"type": "number",
"minimum": 1,
"maximum": 400
},
"fontWeight": {
"type": "number",
"enum": [
400,
500,
600,
700
]
},
"lineHeight": {
"type": "number",
"minimum": 0.5,
"maximum": 4
},
"letterSpacing": {
"type": "number",
"minimum": -40,
"maximum": 80
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
}
},
"additionalProperties": false
},
"layout": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"free",
"flex-row",
"flex-column"
]
},
"gap": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"padding": {
"type": "number",
"minimum": 0,
"maximum": 1000
},
"alignItems": {
"type": "string",
"enum": [
"start",
"center",
"end",
"stretch"
]
},
"justifyContent": {
"type": "string",
"enum": [
"start",
"center",
"end",
"space-between"
]
},
"clipContent": {
"type": "boolean"
},
"wrap": {
"type": "boolean"
}
},
"additionalProperties": false
},
"shape": {
"type": "object",
"properties": {
"sides": {
"type": "integer",
"minimum": 3,
"maximum": 12
}
},
"additionalProperties": false
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"role": {
"type": "string",
"enum": [
"reference",
"content"
]
},
"label": {
"type": "string",
"maxLength": 160
},
"alt": {
"type": "string",
"maxLength": 240
}
},
"additionalProperties": false
},
"parentId": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 120
},
{
"type": "null"
}
]
},
"hidden": {
"type": "boolean"
},
"locked": {
"type": "boolean"
}
},
"oneOf": [
{
"required": [
"id"
],
"not": {
"required": [
"target"
]
}
},
{
"required": [
"target"
],
"not": {
"required": [
"id"
]
}
}
],
"additionalProperties": false
}
},
"history": {
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"undo",
"redo"
]
},
"steps": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"action",
"steps"
],
"additionalProperties": false
},
"force": {
"type": "boolean",
"description": "Deliberately allow writes to locked Layers."
}
},
"oneOf": [
{
"required": [
"updates"
],
"not": {
"required": [
"history"
]
}
},
{
"required": [
"history"
],
"not": {
"required": [
"updates"
]
}
}
],
"additionalProperties": false
}
}annotate_elementsAction
Add, update, or delete a review note on one exact Website mock-up Layer, Frame, or current selection.
View tool JSON
{
"name": "annotate_elements",
"kind": "act",
"impl": "imperative",
"description": "Add, update, or delete a review note on one exact Website mock-up Layer, Frame, or current selection.",
"inputSchema": {
"type": "object",
"properties": {
"nodeId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"target": {
"type": "object",
"properties": {
"selection": {
"type": "boolean",
"const": true
},
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"content": {
"type": "string",
"maxLength": 6000
},
"bindingKey": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"enum": [
"add",
"update",
"delete"
]
},
"annotationId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"text": {
"type": "string",
"maxLength": 6000
},
"resolved": {
"type": "boolean"
}
},
"required": [
"action"
],
"oneOf": [
{
"required": [
"nodeId"
],
"not": {
"required": [
"target"
]
}
},
{
"required": [
"target"
],
"not": {
"required": [
"nodeId"
]
}
}
],
"allOf": [
{
"oneOf": [
{
"required": [
"text"
],
"properties": {
"action": {
"const": "add"
}
}
},
{
"required": [
"annotationId"
],
"properties": {
"action": {
"const": "update"
}
}
},
{
"required": [
"annotationId"
],
"properties": {
"action": {
"const": "delete"
}
}
}
]
}
],
"additionalProperties": false
}
}duplicate_elementsAction
Deep-clone explicit Layers or Frames, preserving hierarchy and returning stable mappings.
View tool JSON
{
"name": "duplicate_elements",
"kind": "act",
"impl": "imperative",
"description": "Deep-clone explicit Layers or Frames, preserving hierarchy and returning stable mappings.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array",
"minItems": 1,
"maxItems": 20,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"offset": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"force": {
"type": "boolean",
"description": "Deliberately include locked roots."
}
},
"required": [
"ids"
],
"additionalProperties": false
}
}delete_elementsSensitive Action
Delete explicit Layers or Frames with predictable cascading children.
View tool JSON
{
"name": "delete_elements",
"kind": "transact",
"impl": "imperative",
"description": "Delete explicit Layers or Frames with predictable cascading children.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array",
"minItems": 1,
"maxItems": 20,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"force": {
"type": "boolean",
"description": "Deliberately delete locked content."
}
},
"required": [
"ids"
],
"additionalProperties": false
}
}bind_context_fieldsAction
Attach one semantic context key such as event.title to exact text or image Layers.
View tool JSON
{
"name": "bind_context_fields",
"kind": "act",
"impl": "imperative",
"description": "Attach one semantic context key such as event.title to exact text or image Layers.",
"inputSchema": {
"type": "object",
"properties": {
"bindings": {
"type": "array",
"minItems": 1,
"maxItems": 50,
"items": {
"type": "object",
"properties": {
"nodeId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"target": {
"type": "object",
"properties": {
"selection": {
"type": "boolean",
"const": true
},
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"type": {
"type": "string",
"enum": [
"frame",
"text",
"rectangle",
"ellipse",
"line",
"arrow",
"polygon",
"image"
]
},
"content": {
"type": "string",
"maxLength": 6000
},
"bindingKey": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"additionalProperties": false
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"sourceLabel": {
"type": "string",
"maxLength": 120
}
},
"required": [
"key"
],
"oneOf": [
{
"required": [
"nodeId"
]
},
{
"required": [
"target"
]
}
],
"additionalProperties": false
}
}
},
"required": [
"bindings"
],
"additionalProperties": false
}
}apply_context_valuesAction
Apply semantic values across all bound unlocked text or image Layers without changing their styling or layout.
View tool JSON
{
"name": "apply_context_values",
"kind": "act",
"impl": "imperative",
"description": "Apply semantic values across all bound unlocked text or image Layers without changing their styling or layout.",
"inputSchema": {
"type": "object",
"properties": {
"values": {
"type": "array",
"minItems": 1,
"maxItems": 30,
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"value": {
"anyOf": [
{
"type": "string",
"maxLength": 6000
},
{
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"label": {
"type": "string",
"maxLength": 160
},
"alt": {
"type": "string",
"maxLength": 240
}
},
"required": [
"assetId"
],
"additionalProperties": false
}
]
}
},
"required": [
"key",
"value"
],
"additionalProperties": false
}
},
"force": {
"type": "boolean",
"description": "Deliberately apply values to locked Layers."
}
},
"required": [
"values"
],
"additionalProperties": false
}
}import_and_place_assetAction
Create or deduplicate one small image Asset and place it inside a Frame. A placement landing in a named Image Area, Image Box, or Image Placeholder replaces that target at its exact bounds with a centered, aspect-ratio-preserving cover crop.
View tool JSON
{
"name": "import_and_place_asset",
"kind": "act",
"impl": "imperative",
"description": "Create or deduplicate one small image Asset and place it inside a Frame. A placement landing in a named Image Area, Image Box, or Image Placeholder replaces that target at its exact bounds with a centered, aspect-ratio-preserving cover crop.",
"inputSchema": {
"type": "object",
"properties": {
"data": {
"type": "string",
"minLength": 1,
"maxLength": 1500000
},
"filename": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"mimeType": {
"type": "string",
"enum": [
"image/png",
"image/jpeg",
"image/webp",
"image/gif",
"image/svg+xml"
]
},
"source": {
"type": "string",
"maxLength": 40
},
"target": {
"type": "object",
"properties": {
"fileId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"fileName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"frameName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"oneOf": [
{
"required": [
"frameId"
]
},
{
"required": [
"frameName"
]
}
],
"additionalProperties": false
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -20000,
"maximum": 20000
},
"y": {
"type": "number",
"minimum": -20000,
"maximum": 20000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 12000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 12000
},
"name": {
"type": "string",
"maxLength": 120
},
"alt": {
"type": "string",
"maxLength": 240
}
},
"required": [
"data",
"filename",
"mimeType",
"target",
"position"
],
"additionalProperties": false
}
}validate_documentAction
Check Frames and Layers for overflow, images, empty text, dimensions, binding consistency, locks, hidden critical content, and export blockers.
View tool JSON
{
"name": "validate_document",
"kind": "act",
"impl": "imperative",
"description": "Check Frames and Layers for overflow, images, empty text, dimensions, binding consistency, locks, hidden critical content, and export blockers.",
"inputSchema": {
"type": "object",
"properties": {
"frameIds": {
"type": "array",
"maxItems": 16,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
}
},
"additionalProperties": false
}
}export_framesAction
Prepare explicit Frames as PNG, SVG, static HTML/CSS, or File JSON and return actual file metadata.
View tool JSON
{
"name": "export_frames",
"kind": "act",
"impl": "imperative",
"description": "Prepare explicit Frames as PNG, SVG, static HTML/CSS, or File JSON and return actual file metadata.",
"inputSchema": {
"type": "object",
"properties": {
"frameIds": {
"type": "array",
"minItems": 1,
"maxItems": 8,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"format": {
"type": "string",
"enum": [
"png",
"svg",
"html",
"json"
]
},
"scale": {
"type": "integer",
"enum": [
1,
2
]
}
},
"required": [
"frameIds",
"format"
],
"additionalProperties": false
}
}