Miro MCP Server

by olgasafonova

Not rated
GitHub

About

Control Miro whiteboards with AI. 77 tools for board management, sticky notes, shapes, connectors, frames, and Mermaid diagram generation.

Details

Author
olgasafonova
Categories
Productivity, Communication, Project Management

Setup

Install Miro MCP Server in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/olgasafonova/miro-mcp-server

Follow the installation instructions in the repository README, then restart your MCP client.

Run yourMiroworkshops, retros, and planning sessions from the command line. Read boards, create stickies, organize frames, and generate diagrams through Claude, Cursor, or any MCP client.

Community project— Not officially affiliated with Miro. Seeofficial optionsbelow.

110 tools|Single binary|All platforms|All major AI tools

brew tap olgasafonova/tap && brew install miro-mcp-server
curl -fsSL https://raw.githubusercontent.com/olgasafonova/miro-mcp-server/main/install.sh | sh
docker pull ghcr.io/olgasafonova/miro-mcp-server:latest

Manual download:SeeSETUP.mdfor all platforms
- Go to
miro.com/app/settings/user-profile/apps
- Create an app withboards:readandboards:writepermissions
- Install to your team and copy the token

claude mcp add miro -e MIRO_ACCESS_TOKEN=your-token -- miro-mcp-server

Claude Desktop / Cursor / VS Code:SeeSETUP.md

Not working?Tell us what made it hard— even one sentence helps.

- "Add a yellow sticky saying 'Review PRs'"
- "Create a flowchart: Start → Decision → End"
- "What boards do I have?"
- "Share the Design board with
jane@example.com"
- "Create a mindmap with 'Project Ideas' as root"

For Claude clients that support skills (Claude Code, Claude Desktop), this repo includes amiro-workflowskill that describes how to assemble a few common board layouts from the atomic create-item tools.

Each one specifies frame sizes, gap math, sticky placement, color conventions (the Miro API takes hex for frame fills and named values for stickies; two different vocabularies), and the tool-call order to follow. For single-tool calls ("add one sticky") or read-only inspection, the atomic tools are usually enough on their own.

The skill is new and likely needs adjustment as more layouts get exercised against real boards. Files live underskills/miro-workflow/. Claude Code auto-discovers skills from~/Projects/claude-code-config/skills/; for other hosts, follow your client's skill installation docs.

The badge above is awarded bySkillCheck Pro; this skill currently scores 92/100 with zero Critical issues and zero Warnings. Skills in this repo earn the badge at ≥90/100 with zero Critical and zero Warnings; below that bar, the badge is dropped until the skill passes again.

For shell-first usage, this server has a sibling:miro-cli. Same author, same Miro API coverage, different runtime. One verb per endpoint, JSON in and out, plus a local SQLite mirror for offline search. Reach for it when you're scripting Miro in CI, bulk-migrating stickies between boards, or querying boards offline without burning API quota.

The MCP server and the CLI overlap deliberately. Use the MCP server when an agent runtime is in the loop (Claude Code, Claude Desktop, Cursor). Use the CLI when bash, Makefiles, or CI are. Use both if you want.

brew install olgasafonova/tap/miro-cli # or go install github.com/olgasafonova/miro-cli/cmd/miro-cli@latest

Companion MCP Apps server:miro-mcp-apps

If you want Miro data to render as interactiveUIin the chat (cards, tables, color clusters, SVG graphs) instead of streamed JSON, there's a TypeScript sibling:miro-mcp-apps. Eleven tools built on theMCP Apps extension(SEP-1865), reusing the sameMIRO_ACCESS_TOKEN. The two servers run side-by-side: this one for the 110-tool CRUD surface, that one for visual at-a-glance views.

The MCP Apps pattern is TypeScript-only today (Go SDK has noext-appshelpers), which is why this companion lives in a separate repo instead of bolting onto the Go server.

The full tool surface (110 tools) costs roughly20.8K tokensof preload; theessentialsprofile trims that to ~2.8K. For sessions where that footprint matters, setMIRO_TOOLS_PROFILE=essentialsin your client config; the server then registers a curated 15-tool subset (boards, list/find/search, sticky/text/frame/connector creation, list/get/update/delete items) plus one discovery meta-tool. Agents reach the rest viamiro_tool_searchon demand.

Savings:~17,760 tokens (86.2% reduction)when you opt intoessentials. Description tokens are exact (JSON-marshaled); schema cost is estimated at 200 bytes per tool. Reproduce locally withgo run ./cmd/token-count/.

miro_tool_search(query?, category?, limit?)is registered in both profiles. It searches tool names, titles, descriptions, and categories with weighted keyword scoring (name 3×, title 2×, category 2.5×, description 1×), returns up to 50 matches, and never recommends itself. Use it when you don't know which tool to reach for, or to scope to a category before browsing. Empty query plus a category returns the category's tools alphabetically.

SeeCONFIG.mdfor the full env-var reference.

Sharing and role-change tools are guarded for prompt-injection safety. SeeSECURITY.mdandCONFIG.md.

Create flowcharts and sequence diagrams from Mermaid syntax:

flowchart TB A[Start] --> B{Decision} B -->|Yes| C[Success] B -->|No| D[Retry] D --> B
sequenceDiagram Alice->>Bob: Hello Bob! Bob-->>Alice: Hi Alice!

Supported:flowchart/graph,sequenceDiagram, directions (TB/LR/BT/RL), shapes ([]rectangle,{}diamond,(())circle), labeled edges.

Miro released theirofficial MCP serverin December 2025 and has grown it substantially since. Comparison refreshed 18-08-2026 by enumerating the63 toolsthe hosted server actually registers atmcp.miro.com, rather than counting thedocumented set— the docs lag the deployment in both directions:board_trashandspace_delete, present on 17-08-2026, were gone the next day, leaving the surface with no hard-destructive verbs. Recent additions come from their changelogs onnew MCP toolsandcode widget endpoints.

Where the differences come from.Spaces, sections, canvas-SVG and prototypes have no endpoints in the[public REST API v2— checked 13-08-2026 against the 114-path OpenAPI spec tracked inapi-tracking/, and re-checked by probing the live API, since the spec omits endpoints Miro does ship. Those run on Miro-internal APIs. The reverse also holds: mindmaps, tags, groups, connectors and export are public REST surfaces the official server has not wrapped.

Board context is a design difference rather than a gap.context_getreturns a server-side AI summary of a board;miro_get_board_contentreturns the structured content itself — items by type, frame hierarchy, connectors and tags — and lets the model already in your session do the summarizing, with no second inference hop.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.