# Canvs MCP server

AI-powered diagrams, mind maps, flowcharts on a free unlimited collaborative whiteboard

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-voronkovm-canvs
- Website: https://app.canvs.io

## Install
- Endpoint: https://app.canvs.io/mcp
- Auth: Not captured

## Setup notes
- Remote endpoint: https://app.canvs.io/mcp

## Tools
- get_guide - ⚠️ MANDATORY FIRST STEP - Call this tool BEFORE using any other Canvs tools! Returns comprehensive instructions for creating whiteboards: tool selection strategy, iterative workflow, and examples. Following these instructions ensures correct diagrams. Endpoint: https://app.canvs.io/mcp
- add_elements - Manual fallback for creating canvas and adding elements. ⚠️ IMPORTANT: Call get_guide first and follow its instructions! Use this tool only when the user's request is not a good fit for Mermaid. If the request can be represented in Mermaid, use add_elements_from_mermaid instead. If room_url is NOT provided - creates a NEW canvas and returns room_url. If the user did not explicitly mention an existing board/canvas/room, do NOT ask for a room_url; create a new canvas instead. If a previous Canvs tool result or assistant message in the same conversation contains a room_url, reuse it for follow-up requests like 'add to it' or 'same board'. If the user refers to a previous board but no usable room_url is available, create a new canvas instead of asking for the URL by default. If room_url IS provided - adds elements to that canvas. If the canvas is displayed as an inline widget in the interface, do NOT include room_url in your reply. If no widget is shown, share the room_url so the user can open the canvas.Use cases: wireframes, UI mockups, freeform illustrations, standalone shapes, and manual layouts that Mermaid does not cover well. Do not use this tool for diagrams that Mermaid can express. Element types: rectangle, ellipse, diamond, text, arrow, line. TEXT IN SHAPES: use containerId on text element pointing to shape id. ARROWS: Position at EDGE of source shape. Auto-bound within 30px. Colors: strokeColor, backgroundColor (hex). Endpoint: https://app.canvs.io/mcp
- update_elements - Update elements on a canvas. Requires room_url from add_elements. Pass elements array with id and fields to update. Endpoint: https://app.canvs.io/mcp
- delete_elements - Delete elements from a canvas. Requires room_url from add_elements. Pass ids array of element IDs to delete. Endpoint: https://app.canvs.io/mcp
- query_elements - Query elements on a canvas. Requires room_url from add_elements. Returns elements matching optional filters. If no browser has the canvas open, returns an error — ask the user to open the canvas URL in their browser and retry. Endpoint: https://app.canvs.io/mcp
- add_elements_from_mermaid - Preferred method for creating diagram elements from Mermaid. ⚠️ IMPORTANT: Call get_guide first and follow its instructions! Use this tool whenever the user's request can be represented in Mermaid. Prefer translating the request into Mermaid instead of manually recreating it with add_elements. If room_url is NOT provided - creates a NEW canvas and returns room_url. If the user did not explicitly mention an existing board/canvas/room, do NOT ask for a room_url; create a new canvas instead. If a previous Canvs tool result or assistant message in the same conversation contains a room_url, reuse it for follow-up requests like 'add to it' or 'same board'. If the user refers to a previous board but no usable room_url is available, create a new canvas instead of asking for the URL by default. If room_url IS provided - adds diagram elements to that canvas. If the canvas is displayed as an inline widget in the interface, do NOT include room_url in your reply. If no widget is shown, share the room_url so the user can open the canvas.Supports: flowchart, graph, flowchart-elk, sequenceDiagram, classDiagram, classDiagram-v2, stateDiagram, stateDiagram-v2, erDiagram, journey, gantt, pie, gitGraph, mindmap, timeline, C4Context, C4Container, C4Component, C4Dynamic, C4Deployment, sankey, sankey-beta, quadrantChart, xychart, xychart-beta, requirement, requirementDiagram, kanban, architecture, block, block-beta, packet, packet-beta, radar-beta, treemap, info. Example: "flowchart TD\n  A[Start] --> B{Decision}\n  B -->|Yes| C[OK]\n  B -->|No| D[Cancel]" Endpoint: https://app.canvs.io/mcp

## Resources
- ui://widget/canvas-preview.html - Preview widget for canvas rooms MIME type: text/html;profile=mcp-app

## Prompts
Not captured

## Metadata
- Owner: io.github.voronkovm
- Version: 1.0.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Feb 12, 2026
- Source: https://registry.modelcontextprotocol.io
