Back

Whimsical

Create diagrams, flowcharts, and boards.

MCP server URL

https://whimsical.gumstack.com/mcp

Works with

Tools 17

  • How To

    Look up Whimsical-specific syntax, examples, and guides. MUST call before creating flowcharts or wireframes. NOT needed for mind maps (pass data.markdown) or simple sequence diagrams (use arrow syntax in data.diagram). Call with no args to see available topics and stamps. Pass `domain` for structured JSON lookups (icons/colors/font-sizes/kinds) instead of markdown topics.

  • Create

    Create content in Whimsical — diagrams, folders, or boards. Pick by intent: source is a sketch, hand-drawn note, photographed whiteboard, or any layout where absolute positions matter → type:'board' (pass data.items for one-shot creation; MUST call how_to('board') first). Source describes semantic structure (steps, hierarchy, sequence, UI) → flowchart, mindmap, sequence_diagram, or wireframe — these auto-layout. Mind maps: pass data.markdown directly (no how_to needed). Sequence diagrams: use data.diagram with arrow syntax (A -> B: msg) — no how_to needed for basic diagrams. Flowcharts: MUST call how_to('flowchart') first for the structured format. Wireframes: MUST call how_to('wireframe') first. For documents, use `doc_create`.

  • Doc Create

    Create a Whimsical document. Markdown content — headings, lists, links, code blocks. For diagrams, boards, or folders, use `create`.

  • Generate Diagram

    Auto-laid-out semantic diagrams ONLY (flowchart, mind map, sequence diagram). DO NOT use for sketches, hand-drawn notes, photographed whiteboards, or any input where absolute positions matter — even if the user says 'diagram' — use create(type:'board') instead (see how_to('board')). Mind maps: pass data.markdown directly (no how_to needed). Sequence diagrams: use data.diagram with arrow syntax (A -> B: msg, A --> B: dashed, A ->> B: open arrow) — no how_to needed for basic diagrams. Flowcharts: MUST call how_to('flowchart') first for the structured format.

  • Generate Mind Map

    Generate a Whimsical mind map from indented text. Format: first line is root, children use '- ' bullets, indent 2 spaces per level. Example: 'Root Topic\n- Child 1\n - Grandchild\n- Child 2'

  • Generate Wireframe

    Generate a Whimsical wireframe with flexbox layout — containers, buttons, inputs, images, icons. IMPORTANT: ALWAYS call how_to('wireframe') first and use the Whimsical-specific syntax — wireframes use a flexbox DSL that requires the correct format.

  • Delete

    Move a Whimsical file, folder, or doc to trash. The item can be restored from the Whimsical trash UI. Pass the item id from a previous file_tree or search result. To delete shapes, text, or connectors inside a board, use the `edit` tool with a `delete` operation instead.

  • Edit

    Edit a Whimsical board or doc. Fetch the board first to get object IDs. Boards: add/update/delete shapes, text, connectors (use temp_id), icons, tables; find_replace/delete_by_text for compound diagrams; mm_update to restructure mindmaps; sd_update for sequence diagrams. Docs: update_block/insert_after_block/append_blocks/delete_block (all markdown). Use how_to('edit') for advanced syntax (table columns, group ops, doc table ops).

  • Search

    Search workspace files and content by name or full text.

  • Fetch

    Read boards, docs, or folders by ID. Returns text by default; set image=true for a PNG snapshot. Use scope to drill into a group, select_kinds to filter by type, grep_text to search.

  • File Tree

    Browse the workspace file hierarchy. With no arguments, lists the Private, Shared, and team sections (teams are sections within a workspace, not separate workspaces) plus the folders and files inside each. Pass filter="teams" to list just the teams (name + id). Pass folder_id — a folder, section, or team id — to list the tree below that parent.

  • List Workspaces

    List all workspaces the user belongs to, with the teams in each. Returns workspace IDs, names, role ("member" can create content / "guest" is read-only), and each workspace's teams (id + name). Teams are sections within a workspace — pass a team id as parent_id to create content in that team.