Canvas
Ambiguous Canvas. Infinite collaborative whiteboard for humans and AI coworkers.
Map a product flow, lay out a cross-team operation in swimlanes, or run a timed sticky-note brainstorm on one infinite board. Your team and your AI coworkers work on it together with live cursors. Every shape, sticky, and connector is a JSON element, so your coworker adds a step or moves a box and the arrows re-route on their own.
Features
Start from a template or a blank board. Draw shapes, drop stickies, and join steps with arrows that follow the shapes they connect. Everyone on the board sees each other's cursors live.
Included from day one
The rest of the Canvas feature set. Every item ships in every workspace, for your team and your AI coworkers alike.
Shapes you type into
Rectangle, rounded, ellipse, diamond, parallelogram, and cylinder. Double-click any shape to type inside it.
Connectors that re-route
Arrows attach to a shape's north, south, east, or west anchor. Move the shape and every attached arrow follows. Straight, elbow, or curved, with labels.
Flowchart and swimlane templates
Start from a flowchart or a swimlane operations board, then map the real process step by step.
Timed brainstorms
Start a shared countdown, fill the board with stickies, then group what came up.
Screenshots from the clipboard
Paste a screenshot onto the board and annotate it. The image lives in Drive, and cropping never touches the original.
Live presence and follow
See every collaborator's cursor and selection. Follow someone to see exactly what they see.
Present and export
Present frames fullscreen. Export a whole board or one frame to PNG or PDF.
Links, comments, and history
Copy a link to any object and it opens centered on that object. Pin comments to a spot on the board. Revert to any earlier version.
One product, two ways in
Your agent works on the same board through MCP, REST, or the ambiguous canvas CLI. It reads a bounded manifest instead of the whole board, then changes one element at a time. Ask it to extend a flowchart and it places the next shape beside the last one and connects them in one call.
// Read the board's manifest: ids, types, and bounds only
const manifest = await mcp.callTool("get_canvas_manifest", { id: "brd_7Kq2" });
// Extend the flow: the server places a diamond east of "Create workspace"
// and draws a connector to it
const { element, connector } = await mcp.callTool("add_connected_element", {
id: "brd_7Kq2",
source_element_id: "el_create",
direction: "e",
element: { type: "shape", shape: "diamond" }
});# Move one shape; the connectors attached to it re-route
curl -X PATCH https://app.ambiguous.ai/api/canvas/brd_7Kq2/elements/el_create \
-H "Authorization: Bearer $AMBIGUOUS_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "x": 240, "y": 80 }'npx ambiguous canvas boards create --title "Onboarding flow"What your agent can do in Canvas
Every action your team takes in Canvas, your agent can do the same way.
| Method | Description |
|---|---|
| create_canvas_board | Create a new empty whiteboard |
| get_canvas_manifest | List every element's id, type, and bounds without the full board |
| create_canvas_element | Add one shape, sticky, text, frame, swimlane, image, or connector |
| add_connected_element | Place a new shape beside an existing one and connect them |
| patch_canvas_element | Move, restyle, or relabel one element; attached connectors re-route |
| delete_canvas_element | Remove one element from the board |
| update_canvas_timer | Start, pause, or reset the board's shared countdown timer |
Every shape, sticky, and connector is JSON your agent reads and edits
A board is one flat list of typed elements. Your agent reads a compact manifest of ids, types, and bounds, then creates, moves, or deletes one element at a time. A connector stores the shapes it joins, not a drawn path, so an agent's move re-routes the arrows exactly like a drag.
Get started
Frequently asked questions
Yes. A board is JSON: one flat list of typed elements (shapes, stickies, text, connectors, frames, swimlanes, images, code blocks). Agents create, patch, or delete one element at a time via MCP, REST, or the CLI, and every other element stays untouched.
Connectors attach to a shape's north, south, east, or west anchor, and their path is computed from the shapes they join. Drag a shape, or have your agent patch its position, and every attached arrow re-routes the same way.
Yes. Export a whole board or a single frame to PNG or PDF. Canvas does not import boards from other whiteboard tools.