- Home
- MCP servers
- Miro
Miro
- typescript
0
GitHub Stars
typescript
Language
6 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"soul-script-miro-mcp": {
"command": "npx",
"args": [
"@aditya.mishra/miro-mcp"
],
"env": {
"MIRO_OAUTH_TOKEN": "your_token_here"
}
}
}
}You set up and run a dedicated MCP server for Miro to access and manage boards, content, and collaboration programmatically. This server lets you automate board workflows, create and position items precisely, link content, and manage access with real-time events and scalable bulk operations.
How to use
Run the MCP server locally and connect it to your MCP client. You’ll authenticate with an OAuth token and then issue actions that create, modify, or query boards, items, and relationships. Use the server to perform common tasks such as listing boards, creating frames and cards, linking items with connectors, and sharing boards with teammates. The server supports precise positioning, styling, and advanced operations like bulk creates/updates while handling rate limits and retries.
- Authenticate with your Miro OAuth token and supply it to the MCP server via environment variables.
- Start the MCP server using the provided runtime command or script, ensuring the token is in place.
- Configure your MCP client to point at the server, using the standard mcpServers configuration format.
- Use board actions (list/create/update/delete) and content actions (sticky notes, shapes, images, connectors) to build and organize boards.
- Leverage bulk operations for efficiency, noting the 20-item per operation limit and sequential processing for reliability.
- Monitor rate limits and implement retry/backoff strategies during large changes.
- Use the webhooks feature to receive real-time board events when enabled.
Below are concrete usage patterns you can perform after the server is running. You can mix and match board management, content creation, and organization actions to build automated workflows.
How to install
Prerequisites: Node.js and npm installed on your system. You will run the MCP server as a local process that you can connect to from your MCP client.
# Install the Miro MCP server package
npm install @aditya.mishra/miro-mcp
# Build the server if a build step is required by your setup
npm run build
# Start the server locally with an OAuth token provided in the environment
MIRO_OAUTH_TOKEN=your_token_here node dist/index.js
Configuration and runtime specifics
Configuration is provided via MCP client setup. Use the standard MCP JSON structure to declare your server in the client so you can start, stop, and manage it alongside other MCP servers.
{
"mcpServers": {
"miro-mcp": {
"command": "npx",
"args": ["@aditya.mishra/miro-mcp"],
"env": {
"MIRO_OAUTH_TOKEN": "your_miro_oauth_token_here"
}
}
}
}
Direct execution option
You can run the server directly from your CLI if you prefer. The token is supplied via environment variables and you run the MCP server binary or script.
# Start the server directly with your token
MIRO_OAUTH_TOKEN=your_token miro-mcp
```)
Notes on usage with clients
Configure your MCP client with the server name mirror and token. Typical client configurations place the server under a name such as miro-mcp with command npx and args including the package name. The environment section includes MIRO_OAUTH_TOKEN.
Examples of common workflows
Create a board, add a frame, populate with sticky notes and connectors, then share the board with a teammate.
Troubleshooting
If you encounter rate limits, implement exponential backoff and respect the 20-item limit for bulk operations. Ensure item IDs come from get_board_items or responses from item creation when creating connectors.
Available tools
listBoards
List all boards with optional search and team filtering.
getBoard
Retrieve detailed information about a single board.
createBoard
Create a new board with specified settings.
updateBoard
Modify properties of an existing board.
copyBoard
Duplicate an existing board.
deleteBoard
Permanently remove a board.
createFrame
Create a frame to organize content on a board.
createCard
Create a card with a title and description.
createConnector
Link two items with an optional label.
shareBoardWithUser
Invite a user to collaborate on a board with specific permissions.
createTag
Create and attach tags to items for organization.
bulkCreateItems
Create up to 20 items in a single batch through sequential calls.
bulkUpdateItems
Update up to 20 items in a single batch through sequential calls.
bulkDeleteItems
Delete up to 20 items in a single batch through sequential calls.
getBoardItems
Retrieve items on a board, used to obtain IDs for operations.
getBoardItemsByFilter
Search and filter board items by content and metadata.
bulkCreateConnectors
Create multiple connectors in a single operation to link items efficiently.
createStickyNote
Create a sticky note with color, position, and text.
createTextItem
Create a text item with rich formatting and typography.
createShape
Create shapes with specified geometry and styling.
createImage
Embed images via direct URLs with size control.
createDocument
Embed documents such as PDFs.
createEmbed
Embed video and web content.
createFrameContainer
Create frames to group and organize content.
createTagColor
Apply predefined tag colors for quick categorization.
webhookManagement
Manage webhooks for real-time event notifications.
memberManagement
Invite, remove, and manage board members and roles.