mcpField
M
MCP Miro Server

MCP Miro Server

Local
github.com/k-jarzynaProductivity65Updated 10w ago

About MCP Miro Server

MCP Miro Server is an MCP server for the Miro platform that lets AI assistants such as Claude access Miro boards and manage their content. It suits users who want an assistant to read and edit board items. It requires Node.js 16 or newer and a Miro OAuth token.

Key features

  1. 01Create, read, update and delete boards
  2. 02Manage board items such as sticky notes, cards and images
  3. 03Manage connectors, groups, tags and mindmap nodes
  4. 04Manage board and project members
  5. 05Launch via npx or from a local build

Use cases

  1. 01Having an assistant read a board and organize sticky notes
  2. 02Creating board items in bulk from a prompt
  3. 03Adding tags, groups or connectors to board content

MCP support

Runs as an MCP server that exposes Miro board and item operations to MCP clients such as Claude Desktop.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"miro-k-jarzyna": {
"command": "npx",
"args": [
"-y",
"@k-jarzyna/mcp-miro"
],
"env": {
"MIRO_ACCESS_TOKEN": "<MIRO_ACCESS_TOKEN>"
}
}
}
}
Run commandnpx -y @k-jarzyna/mcp-miro
Environment variables to set
MIRO_ACCESS_TOKENSecret

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@k-jarzyna/mcp-miro

Tools

97

Saved tool list · updated 3w ago

ParameterTypeRequiredDescription
limitnumberNoMaximum number of boards to return (default: 50)
offsetnumberNoOffset for pagination (default: 0)

Details

From the project README

MCP Miro Server

Trust Score smithery badge

Model Context Protocol (MCP) server integrating with the Miro platform. It enables AI assistants (like Claude) to access Miro boards and manage their content through a standardized interface.


Requirements
  • Node.js v16 or newer installed
  • Miro account with API token
Generate Miro Access Token
  1. Go to the Miro Developer Portal
  2. Create a new app or use an existing one
  3. Make sure to create token with permission selected below
  4. Generate OAuth token by selecting Install app and get OAuth token
PermissionRequired
boards:read✅
boards:write✅
identity:read✅
identity:write✅
team:read✅
team:write✅
microphone:listen❌
screen:record❌
webcam:record❌
auditlogs:read❌
sessions:delete❌
Connecting with Claude Desktop
  1. Install Claude Desktop

  2. Open or create the configuration file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  3. Update it to include this server:

{
   "mcpServers":{
      "miro":{
         "command":"npx",
         "args":[
            "-y",
            "@k-jarzyna/mcp-miro"
         ],
         "env":{
            "MIRO_ACCESS_TOKEN":"your_miro_access_token"
         }
      }
   }
}
  1. Restart Claude Desktop

Available Tools and Resources

Tools
Miro SDK FunctionMCP ToolAvailable
List boardslist-boards✅
Create boardcreate-board✅
Update boardupdate-board✅
Delete boarddelete-board✅
Copy boardcopy-board✅
Get specific boardget-specific-board✅
Get items on boardget-items-on-board✅
Get specific itemget-specific-item✅
Update item positionupdate-item-position✅
Delete itemdelete-item✅
Create app card itemcreate-app-card-item✅
Get app card itemget-app-card-item✅
Update app card itemupdate-app-card-item✅
Delete app card itemdelete-app-card-item✅
Create card itemcreate-card-item✅
Get card itemget-card-item✅
Update card itemupdate-card-item✅
Delete card itemdelete-card-item✅
Create connectorcreate-connector✅
Get connectorsget-connectors✅
Get specific connectorget-specific-connector✅
Update connectorupdate-connector✅
Delete connectordelete-connector✅
Create sticky note itemcreate-sticky-note-item✅
Get sticky note itemget-sticky-note-item✅
Update sticky note itemupdate-sticky-note-item✅
Delete sticky note itemdelete-sticky-note-item✅
Create framecreate-frame✅
Get frame itemget-frame-item✅
Update frame itemupdate-frame-item✅
Delete frame itemdelete-frame-item✅
Create document itemcreate-document-item✅
Get document itemget-document-item✅
Update document itemupdate-document-item✅
Delete document itemdelete-document-item✅
Create text itemcreate-text-item✅
Get text itemget-text-item✅
Update text itemupdate-text-item✅
Delete text itemdelete-text-item✅
Create items in bulkcreate-items-in-bulk✅
Create image item using URLcreate-image-item-using-url✅
Create image item using filecreate-image-item-using-file✅
Get image itemget-image-item✅
Update image itemupdate-image-item✅
Update image item using fileupdate-image-item-using-file✅
Delete image itemdelete-image-item✅
Create shape itemcreate-shape-item✅
Get shape itemget-shape-item✅
Update shape itemupdate-shape-item✅
Delete shape itemdelete-shape-item✅
Create embed itemcreate-embed-item✅
Get embed itemget-embed-item✅
Update embed itemupdate-embed-item✅
Delete embed itemdelete-embed-item✅
Create tagcreate-tag✅
Get tagget-tag✅
Get all tagsget-all-tags✅
Update tagupdate-tag✅
Delete tagdelete-tag✅
Attach tagattach-tag✅
Detach tagdetach-tag✅
Get item tagsget-item-tags✅
Get all board membersget-all-board-members✅
Get specific board memberget-specific-board-member✅
Remove board memberremove-board-member✅
Share boardshare-board✅
Update board memberupdate-board-member✅
Create groupcreate-group✅
Get all groupsget-all-groups✅
Get groupget-group✅
Get group itemsget-group-items✅
Update groupupdate-group✅
Ungroup itemsungroup-items✅
Delete groupdelete-group✅
Create items in bulk using filecreate-items-in-bulk-using-file✅
Create mindmap nodecreate-mindmap-node✅
Get mindmap nodeget-mindmap-node✅
Get mindmap nodesget-mindmap-nodes✅
Delete mindmap nodedelete-mindmap-node✅
Add project memberadd-project-member✅
Create board export jobcreate-board-export-job✅
Get all casesget-all-cases✅
Get all legal holdsget-all-legal-holds✅
Get audit logsget-audit-logs✅
Get board classificationget-board-classification✅
Get board content logsget-board-content-logs✅
Get board export job resultsget-board-export-job-results✅
Get board export job statusget-board-export-job-status✅
Get caseget-case✅
Get legal holdget-legal-hold✅
Get legal hold content itemsget-legal-hold-content-items✅
Get organization infoget-organization-info✅
Get organization memberget-organization-member✅
Get organization membersget-organization-members✅
Get project memberget-project-member✅
Remove project memberremove-project-member✅
Update board classificationupdate-board-classification✅

Local Development

  1. Install dependencies:
npm install
  1. Create a .env file based on the template:
cp .env.template .env
  1. Edit the .env file and add your Miro access token

  2. Build the server:

npm run build
Running the Server

To run the server:

node build/index.js

License

Apache License 2.0

This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.