Connects your AI coding assistant to Miro boards through a full-featured MCP server. You get read and write access to frames, sticky notes, diagrams, tables, and documents. Ships with pre-built skills for Claude Code, Gemini CLI, Cursor, and others that handle common workflows: generating flowcharts and sequence diagrams from code, extracting design specs into your repo, syncing task tables, and running visual code reviews by posting diffs to boards. Supports OAuth so each developer authenticates individually. Especially useful if your team already sketches architecture or tracks sprints in Miro and you want your LLM to read context from those boards or push generated diagrams back without leaving your editor.
Public tool metadata for what this MCP can expose to an agent.
MIRO_CREATE_APP_CARD_ITEMTool to add an app card item to a board. Use when you need to push a rich preview card with custom fields into a Miro board (e.g., after assembling card data).6 paramsTool to add an app card item to a board. Use when you need to push a rich preview card with custom fields into a Miro board (e.g., after assembling card data).
dataobjectstyleobjectparentobjectboard_idstringgeometryobjectpositionobjectMIRO_CREATE_BOARDTool to create a new board. Use when you need to set up a board with a specific name, description, and policies. Example: "Create a new board named Project Plan".5 paramsTool to create a new board. Use when you need to set up a board with a specific name, description, and policies. Example: "Create a new board named Project Plan".
namestringpolicyobjectteamIdstringprojectIdstringdescriptionstringMIRO_DELETE_APP_CARD_ITEMTool to delete an app card item from a board. Use when you need to remove an app card item created by your app after it is no longer needed.2 paramsTool to delete an app card item from a board. Use when you need to remove an app card item created by your app after it is no longer needed.
item_idstringboard_idstringMIRO_DELETE_DOCUMENT_ITEMTool to delete a document item from a board. Use when you need to remove a document item (e.g., PDF or image) that is no longer relevant. Example: "Delete the document item with ID 'item456' from board 'board123'."2 paramsTool to delete a document item from a board. Use when you need to remove a document item (e.g., PDF or image) that is no longer relevant. Example: "Delete the document item with ID 'item456' from board 'board123'."
item_idstringboard_idstringMIRO_DELETE_ITEMTool to delete a specific item from a board. Use when you need to remove an item (e.g., shape, sticky note) after confirming its board and item IDs.2 paramsTool to delete a specific item from a board. Use when you need to remove an item (e.g., shape, sticky note) after confirming its board and item IDs.
item_idstringboard_idstringMIRO_GET_APP_CARD_ITEMTool to retrieve a specific app card item by its ID. Use when you need the details of an existing app card item.2 paramsTool to retrieve a specific app card item by its ID. Use when you need the details of an existing app card item.
item_idstringboard_idstringMIRO_GET_BOARDTool to retrieve details of a specific board. Use when you have a board ID and need to fetch its metadata.1 paramsTool to retrieve details of a specific board. Use when you have a board ID and need to fetch its metadata.
board_idstringMIRO_GET_BOARD_ITEMSTool to list items on a Miro board (shapes, stickies, cards, etc.) with pagination. Use when you need to page through board elements for analytics or reporting.4 paramsTool to list items on a Miro board (shapes, stickies, cards, etc.) with pagination. Use when you need to page through board elements for analytics or reporting.
typestringlimitintegercursorstringboard_idstringMIRO_GET_BOARD_MEMBERSTool to retrieve a list of members for a board. Use when you need to list all users with access to a board after confirming its ID.3 paramsTool to retrieve a list of members for a board. Use when you need to list all users with access to a board after confirming its ID.
limitintegercursorstringboard_idstringMIRO_GET_BOARDSTool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords.7 paramsTool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords.
sortstringdefault · last_created · last_opened · last_modified · alphabeticallylimitintegerownerstringquerystringoffsetintegerteam_idstringproject_idstringMIRO_GET_CONNECTORSTool to retrieve a list of connectors on a board. Use after confirming the board ID and when you need to page through connector items.3 paramsTool to retrieve a list of connectors on a board. Use after confirming the board ID and when you need to page through connector items.
limitintegercursorstringboard_idstringMIRO_GET_TAGTool to retrieve details of a specific tag on a board. Use when you have a board ID and tag ID and need its metadata.2 paramsTool to retrieve details of a specific tag on a board. Use when you have a board ID and tag ID and need its metadata.
tag_idstringboard_idstringMIRO_LIST_ORGANIZATIONSTool to retrieve list of organizations accessible to the user. Use when you need to view all available organizations.Tool to retrieve list of organizations accessible to the user. Use when you need to view all available organizations.
No parameter schema in public metadata yet.
MIRO_UPDATE_APP_CARD_ITEMTool to update an app card item on a board. Use when you need to modify properties of an existing app card item. Include only fields to change.7 paramsTool to update an app card item on a board. Use when you need to modify properties of an existing app card item. Include only fields to change.
dataobjectstyleobjectparentobjectitem_idstringboard_idstringgeometryobjectpositionobjectMIRO_UPDATE_BOARDTool to update properties of a specific board. Use when you have a board ID and need to modify its name, description, or permissions policy. Use after confirming the board exists.6 paramsTool to update properties of a specific board. Use when you have a board ID and need to modify its name, description, or permissions policy. Use after confirming the board exists.
namestringpolicyobjectteamIdstringboard_idstringprojectIdstringdescriptionstringConnect AI coding assistants to your Miro boards. Create diagrams, extract context, generate code from designs, and track tasks—all through natural conversation.
This repo provides everything you need to connect AI tools to Miro:
| Component | What It Does |
|---|---|
| Miro MCP Server | API that gives AI agents access to your Miro boards |
| Plugins & Extensions | Pre-built integrations for popular AI tools |
| Documentation | Guides for using and developing integrations |
| AI Tool | Integration |
|---|---|
| Claude Code | Plugins |
| Gemini CLI | Extensions |
| Codex | Local plugins |
| Kiro | Power |
| Agent Skills | Skills |
| Cursor, VSCode, Windsurf, etc. | MCP Config |
Select your AI tool below and follow the installation steps.
/plugin marketplace add miroapp/miro-ai
/plugin install miro@miro-ai
The miro plugin bundles all skills (browse, code-review, code-spec, code-explain-on-board, diagram, doc, table) and the Miro MCP server.
Restart Claude Code after installation. If you previously configured Miro MCP manually, remove the duplicate to avoid conflicts — the plugin already manages the MCP connection for you.
See Claude Code Plugins for full documentation.
gemini extensions install https://github.com/miroapp/miro-ai
Gemini CLI installs the repo as an extension, registers the Miro MCP server from gemini-extension.json, and auto-discovers the 7 bundled skills from skills/. Restart Gemini CLI and authenticate when prompted.
miroapp/miro-ai and select powers/code-genFor local development, see CONTRIBUTING.md.
See Kiro Powers | Official Docs
Portable knowledge skills that work across AI coding tools (Claude Code, Cursor, VS Code + Copilot, Codex, etc.).
npx skills add miroapp/miro-ai # Interactive install
npx skills add miroapp/miro-ai --list # List available skills
npx skills add miroapp/miro-ai --skill=miro-browse # Install specific skill
Available skills: miro-browse, miro-code-review, miro-code-spec, miro-diagram, miro-doc, miro-table
Add to your MCP client configuration file:
{
"mcpServers": {
"miro": {
"url": "https://mcp.miro.com/"
}
}
}
Note: If a Miro plugin or extension becomes available for your client later, switch to it and remove the manual entry to avoid duplicate servers.
See MCP Setup Guide for client-specific paths.
When you first use a Miro command, you'll be prompted to authenticate:
Test your setup with these example prompts:
"What's on my Miro board https://miro.com/app/board/..."
"Create a flowchart on Miro showing a user login flow"
"Summarize the architecture diagram on my Miro board"
Want to modify plugins, test changes locally, or build your own? See CONTRIBUTING.md for dev setup instructions.
Codex plugins are generated locally into codex-plugins/*/ with the repo marketplace at .agents/plugins/marketplace.json. See Codex Plugins for the generated structure and CONTRIBUTING.md for regeneration and local testing.
If your client has a Miro plugin or extension, use only that — do not also add https://mcp.miro.com/ manually. Each installation method creates an independent MCP connection with its own OAuth session, and running more than one causes duplicate tools and auth confusion.
See the Duplicate MCP Servers guide in Miro's Developer docs for diagnosis and cleanup steps.
Admin Approval Required: If your organization is on a Miro Enterprise plan, your admin must enable the MCP Server before you can connect.
See Enterprise Guide for setup instructions.
Skills auto-activate when you describe what you want naturally. No slash commands required — just include a Miro board URL.
| Skill | Triggers On |
|---|---|
miro-browse | "List the frames on …", "What's on this board …" |
miro-code-review | "Review PR 123 on …", "Visual review of this branch on …" |
miro-code-spec | "Extract specs from …", "Pull the design docs at …" |
miro-diagram | "Create a flowchart on …", "Add a sequence diagram to …" |
miro-doc | "Add a markdown doc to …", "Write a sprint plan on …" |
miro-table | "Make a task tracker table on …", "Sync these rows to …" |
| Capability | Description |
|---|---|
| Generate Diagrams | Create flowcharts, sequence diagrams, ERDs from code or descriptions |
| Generate Code | Convert board designs and wireframes into working code |
| Track Tasks | Sync tasks between AI conversations and Miro tables |
| Extract Context | Read board content to inform AI workflows |
| Plugin | Description |
|---|---|
| miro | Core MCP integration with 7 bundled skills (browse, code-review, code-spec, code-explain-on-board, diagram, doc, table) |
| Extension | Description |
|---|---|
| miro | Core MCP integration with bundled skills |
| Plugin | Description |
|---|---|
| miro | Core MCP integration with native $miro:<skill> activation and MCP access |
| Skill | Description |
|---|---|
| miro-browse | List, filter, summarize items on a Miro board |
| miro-code-review | Visual code review from PRs, local changes, or branch comparisons |
| miro-code-spec | Extract Miro specs (docs, diagrams, prototypes, tables, images) to .miro/specs/ |
| miro-diagram | Create diagrams (flowchart, mindmap, UML, ER) from text or Mermaid |
| miro-doc | Create and edit markdown documents on a Miro board |
| miro-table | Create, populate, and sync structured tables on a Miro board |
| Power | Description |
|---|---|
| code-gen | Design-to-code workflows |
Claude Code, Cursor, VSCode + GitHub Copilot, Gemini CLI, Lovable, Replit, Windsurf, Kiro, Glean, Devin, OpenAI Codex
MIT — see LICENSE
Built with love by Miro
com.mcparmory/google-sheets
domdomegg/google-sheets-mcp
henilcalagiya/google-sheets-mcp
cct15/war-dashboard-data
moooonad/mcp-google-sheets-full
io.github.br0ski777/csv-to-json