miro-automation

通过Rube MCP(Composio)自动化Miro任务:包括看板、项目、便利贴、框架、共享和连接器。始终优先使用工具搜索当前架构。

查看详情
name:miro-automationdescription:"Automate Miro tasks via Rube MCP (Composio): boards, items, sticky notes, frames, sharing, connectors. Always search tools first for current schemas."requires:mcp:[rube]

Miro Automation via Rube MCP

Automate Miro whiteboard operations through Composio's Miro toolkit via Rube MCP.

Prerequisites

  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)

  • Active Miro connection via RUBE_MANAGE_CONNECTIONS with toolkit miro

  • Always call RUBE_SEARCH_TOOLS first to get current tool schemas
  • Setup

    Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.


  • Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds

  • Call RUBE_MANAGE_CONNECTIONS with toolkit miro

  • If connection is not ACTIVE, follow the returned auth link to complete Miro OAuth

  • Confirm connection status shows ACTIVE before running any workflows
  • Core Workflows

    1. List and Browse Boards

    When to use: User wants to find boards or get board details

    Tool sequence:

  • MIRO_GET_BOARDS2 - List all accessible boards [Required]

  • MIRO_GET_BOARD - Get detailed info for a specific board [Optional]
  • Key parameters:

  • query: Search term to filter boards by name

  • sort: Sort by 'default', 'last_modified', 'last_opened', 'last_created', 'alphabetically'

  • limit: Number of results per page (max 50)

  • offset: Pagination offset

  • board_id: Specific board ID for detailed retrieval
  • Pitfalls:

  • Pagination uses offset-based approach, not cursor-based

  • Maximum 50 boards per page; iterate with offset for full list

  • Board IDs are long alphanumeric strings; always resolve by search first
  • 2. Create Boards and Items

    When to use: User wants to create a new board or add items to an existing board

    Tool sequence:

  • MIRO_CREATE_BOARD - Create a new empty board [Optional]

  • MIRO_CREATE_STICKY_NOTE_ITEM - Add sticky notes to a board [Optional]

  • MIRO_CREATE_FRAME_ITEM2 - Add frames to organize content [Optional]

  • MIRO_CREATE_ITEMS_IN_BULK - Add multiple items at once [Optional]
  • Key parameters:

  • name / description: Board name and description (for CREATE_BOARD)

  • board_id: Target board ID (required for all item creation)

  • data: Content object with content field for sticky note text

  • style: Styling object with fillColor for sticky note color

  • position: Object with x and y coordinates

  • geometry: Object with width and height
  • Pitfalls:

  • board_id is required for ALL item operations; resolve via GET_BOARDS2 first

  • Sticky note colors use hex codes (e.g., '#FF0000') in the fillColor field

  • Position coordinates use the board's coordinate system (origin at center)

  • BULK create has a maximum items-per-request limit; check current schema

  • Frame items require geometry with both width and height
  • 3. Browse and Manage Board Items

    When to use: User wants to view, find, or organize items on a board

    Tool sequence:

  • MIRO_GET_BOARD_ITEMS - List all items on a board [Required]

  • MIRO_GET_CONNECTORS2 - List connections between items [Optional]
  • Key parameters:

  • board_id: Target board ID (required)

  • type: Filter by item type ('sticky_note', 'shape', 'text', 'frame', 'image', 'card')

  • limit: Number of items per page

  • cursor: Pagination cursor from previous response
  • Pitfalls:

  • Results are paginated; follow cursor until absent for complete item list

  • Item types must match Miro's predefined types exactly

  • Large boards may have thousands of items; use type filtering to narrow results

  • Connectors are separate from items; use GET_CONNECTORS2 for relationship data
  • 4. Share and Collaborate on Boards

    When to use: User wants to share a board with team members or manage access

    Tool sequence:

  • MIRO_GET_BOARDS2 - Find the board to share [Prerequisite]

  • MIRO_SHARE_BOARD - Share the board with users [Required]

  • MIRO_GET_BOARD_MEMBERS - Verify current board members [Optional]
  • Key parameters:

  • board_id: Board to share (required)

  • emails: Array of email addresses to invite

  • role: Access level ('viewer', 'commenter', 'editor')

  • message: Optional invitation message
  • Pitfalls:

  • Email addresses must be valid; invalid emails cause the entire request to fail

  • Role must be one of the predefined values; case-sensitive

  • Sharing with users outside the organization may require admin approval

  • GET_BOARD_MEMBERS returns all members including the owner
  • 5. Create Visual Connections

    When to use: User wants to connect items on a board with lines or arrows

    Tool sequence:

  • MIRO_GET_BOARD_ITEMS - Find items to connect [Prerequisite]

  • MIRO_GET_CONNECTORS2 - View existing connections [Optional]
  • Key parameters:

  • board_id: Target board ID

  • startItem: Object with id of the source item

  • endItem: Object with id of the target item

  • style: Connector style (line type, color, arrows)
  • Pitfalls:

  • Both start and end items must exist on the same board

  • Item IDs are required for connections; resolve via GET_BOARD_ITEMS first

  • Connector styles vary; check available options in schema

  • Self-referencing connections (same start and end) are not allowed
  • Common Patterns

    ID Resolution

    Board name -> Board ID:

    1. Call MIRO_GET_BOARDS2 with query=board_name
  • Find board by name in results

  • Extract id field
  • Item lookup on board:

    1. Call MIRO_GET_BOARD_ITEMS with board_id and optional type filter
  • Find item by content or position

  • Extract item id for further operations
  • Pagination

  • Boards: Use offset and limit (offset-based)

  • Board items: Use cursor and limit (cursor-based)

  • Continue until no more results or cursor is absent

  • Default page sizes vary by endpoint
  • Coordinate System

  • Board origin (0,0) is at the center

  • Positive X is right, positive Y is down

  • Items positioned by their center point

  • Use position: {x: 0, y: 0} for center of board

  • Frames define bounded areas; items inside inherit frame position
  • Known Pitfalls

    Board IDs:

  • Board IDs are required for virtually all operations

  • Always resolve board names to IDs via GET_BOARDS2 first

  • Do not hardcode board IDs; they vary by account
  • Item Creation:

  • Each item type has different required fields

  • Sticky notes need data.content for text

  • Frames need geometry.width and geometry.height

  • Position defaults to (0,0) if not specified; items may overlap
  • Rate Limits:

  • Miro API has rate limits per token

  • Bulk operations preferred over individual item creation

  • Use MIRO_CREATE_ITEMS_IN_BULK for multiple items
  • Response Parsing:

  • Response data may be nested under data key

  • Item types determine which fields are present in response

  • Parse defensively; optional fields may be absent
  • Quick Reference

    TaskTool SlugKey Params
    List boardsMIRO_GET_BOARDS2query, sort, limit, offset
    Get board detailsMIRO_GET_BOARDboard_id
    Create boardMIRO_CREATE_BOARDname, description
    Add sticky noteMIRO_CREATE_STICKY_NOTE_ITEMboard_id, data, style, position
    Add frameMIRO_CREATE_FRAME_ITEM2board_id, data, geometry, position
    Bulk add itemsMIRO_CREATE_ITEMS_IN_BULKboard_id, items
    Get board itemsMIRO_GET_BOARD_ITEMSboard_id, type, cursor
    Share boardMIRO_SHARE_BOARDboard_id, emails, role
    Get membersMIRO_GET_BOARD_MEMBERSboard_id
    Get connectorsMIRO_GET_CONNECTORS2board_id