Skip to content

create_canvas

Create a new .canvas with optional initial nodes/edges. Overwriting an existing canvas requires confirmation. Domain: structured.

Domain structured
Scopes write:canvas
Access write
Tags writes, destructive, hitl, domain:structured
Profile full only
Annotation Value
Read-only no
Destructive yes
Idempotent no
Accepts an idempotency key yes

Idempotent is the advisory MCP idempotentHint. Destructive is also yes for a tool that asks for confirmation only on some calls.

The handler asks for confirmation only when a call crosses a boundary (for example an overwrite, a folder-boundary crossing or a bulk-cost floor); other calls need none.

  • The confirmation binds to the vault paths the call names, which are also checked against the folder ACL.
Parameter Type Required Default Description
vault string — Vault id. May be omitted when only one vault is available. length 1–64; pattern ^[a-z0-9_-]+$
path string yes — length 1–1024
nodes object[] [] —
nodes[].id string with parent — length ≥ 1
nodes[].type enum with parent — One of: "text", "file", "link", "group"
nodes[].x number with parent — —
nodes[].y number with parent — —
nodes[].width number with parent — —
nodes[].height number with parent — —
nodes[].color string — —
nodes[].text string — —
nodes[].file string — —
nodes[].subpath string — —
nodes[].url string — —
nodes[].label string — —
edges object[] [] —
edges[].id string with parent — length ≥ 1
edges[].fromNode string with parent — length ≥ 1
edges[].fromSide enum — One of: "top", "right", "bottom", "left"
edges[].fromEnd enum — One of: "none", "arrow"
edges[].toNode string with parent — length ≥ 1
edges[].toSide enum — One of: "top", "right", "bottom", "left"
edges[].toEnd enum — One of: "none", "arrow"
edges[].color string — —
edges[].label string — —
overwrite boolean false —
options object {} —
options.idempotency_key string — length 1–128
options.create_dirs boolean true —
elicit_token string — pattern ^[a-f0-9]{32}$
Field Type Always present Description
vault string yes —
path string yes —
created boolean yes —
node_count integer yes range ≥ -9007199254740991
edge_count integer yes range ≥ -9007199254740991
content_hash string yes —

Other tools in the structured domain: add_kanban_card, create_base, create_excalidraw, format_table, insert_table_column, insert_table_row, list_kanban_boards, move_kanban_card, query_base, query_canvas, read_base, read_canvas, read_excalidraw, read_kanban_board, sort_table_by_column, update_base, update_canvas, update_excalidraw.

Back to the tool catalog.