mcpField
M
miro-automation

miro-automation

github.com/davepoon生産性3.7k117 回インストール今日更新
リポジトリ

miro-automation について

Composio の Miro ツールキットと Rube MCP を介して、Miro のホワイトボード操作を自動化するスキルです。ボードの検索、項目の作成・整理、共同作業を扱います。

主な機能

  1. 01ボードの検索と詳細取得
  2. 02ボード、付箋、フレーム、複数項目の作成
  3. 03ボード項目とコネクターの閲覧
  4. 04ボードの共有とメンバー確認

活用シーン

  1. 01名前でボードを探して詳細を確認
  2. 02ボードに付箋やフレームを追加・配置
  3. 03指定した権限で共同作業者を招待

MCP 対応

Rube MCP 経由で Composio の Miro ツールキットを利用します。ワークフローの実行前に Miro アカウントの接続が必要です。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/davepoon/buildwithclaude --skill miro-automation

インストール後、Claude Code で/miro-automationを入力して読み込まれたか確認します。

詳細

Rube MCP による Miro の自動化

Rube MCP を介して Composio の Miro ツールキットを使用し、Miro のホワイトボード操作を自動化します。

ツールキットのドキュメント:composio.dev/toolkits/miro

前提条件

  • Rube MCP が接続されていること(RUBE_SEARCH_TOOLS が利用可能であること)
  • RUBE_MANAGE_CONNECTIONS でツールキット miro を指定して、Miro への接続が有効になっていること
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください

セットアップ

Rube MCP を入手する:クライアントの構成に https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで動作します。

  1. RUBE_SEARCH_TOOLS が応答することを確認し、Rube MCP が利用可能であることを検証します
  2. ツールキット miro を指定して RUBE_MANAGE_CONNECTIONS を呼び出します
  3. 接続が ACTIVE でない場合は、返された認証リンクに従って Miro OAuth を完了します
  4. ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します

主なワークフロー

1. ボードの一覧表示と閲覧

使用する場面:ユーザーがボードを検索したい場合、またはボードの詳細を確認したい場合

ツールの手順:

  1. MIRO_GET_BOARDS2 - アクセス可能なすべてのボードを一覧表示します[必須]
  2. MIRO_GET_BOARD - 特定のボードの詳細情報を取得します[任意]

主なパラメーター:

  • query:ボード名で絞り込むための検索語
  • sort:'default'、'last_modified'、'last_opened'、'last_created'、'alphabetically' のいずれかで並べ替えます
  • limit:1 ページあたりの結果数(最大 50)
  • offset:ページネーションのオフセット
  • board_id:詳細を取得する特定のボード ID

注意点:

  • ページネーションにはカーソル方式ではなく、オフセット方式を使用します
  • 1 ページあたり最大 50 件のボードが表示されます。全件を取得するには、オフセットを指定して繰り返し取得してください
  • ボード ID は長い英数字の文字列です。必ず最初に検索して特定してください
2. ボードとアイテムの作成

使用する場面:ユーザーが新しいボードを作成したい場合、または既存のボードにアイテムを追加したい場合

ツールの手順:

  1. MIRO_CREATE_BOARD - 新しい空のボードを作成します[任意]
  2. MIRO_CREATE_STICKY_NOTE_ITEM - ボードに付箋を追加します[任意]
  3. MIRO_CREATE_FRAME_ITEM2 - コンテンツを整理するためのフレームを追加します[任意]
  4. MIRO_CREATE_ITEMS_IN_BULK - 複数のアイテムを一度に追加します[任意]

主なパラメーター:

  • name / description:ボード名と説明(CREATE_BOARD 用)
  • board_id:対象のボード ID(すべてのアイテム作成で必須)
  • data:付箋のテキストに使う content フィールドを含むコンテンツオブジェクト
  • style:付箋の色に使う fillColor を含むスタイルオブジェクト
  • position:x と y の座標を含むオブジェクト
  • geometry:width と height を含むオブジェクト

注意点:

  • すべてのアイテム操作で board_id が必須です。まず GET_BOARDS2 で取得してください
  • 付箋の色には、fillColor フィールドで 16 進数コード(例:'#FF0000')を使用します
  • 位置の座標にはボードの座標系を使用します(原点は中央)
  • 一括作成にはリクエストあたりの最大アイテム数の上限があります。現在のスキーマを確認してください
  • フレームアイテムには、幅と高さの両方を指定した geometry が必要です
3. ボード上のアイテムの閲覧と管理

使用する場面:ユーザーがボード上のアイテムを表示、検索、または整理したい場合

ツールの手順:

  1. MIRO_GET_BOARD_ITEMS - ボード上のすべてのアイテムを一覧表示します[必須]
  2. MIRO_GET_CONNECTORS2 - アイテム間の接続を一覧表示します[任意]

主なパラメーター:

  • board_id:対象のボード ID(必須)
  • type:アイテムの種類で絞り込みます('sticky_note'、'shape'、'text'、'frame'、'image'、'card')
  • limit:1 ページあたりのアイテム数
  • cursor:前回のレスポンスから取得したページネーション用カーソル

注意点:

  • 結果はページネーションされます。アイテムをすべて取得するには、cursor がなくなるまで次のページを取得してください
  • アイテムの種類には、Miro で事前定義された正確な名称を指定する必要があります
  • 大規模なボードには数千個のアイテムが含まれる場合があります。結果を絞り込むには種類を指定してください
  • コネクターはアイテムとは別のものです。アイテム間の関係データを取得するには GET_CONNECTORS2 を使用してください
4. ボードを共有して共同作業する

使用する場面:ユーザーがチームメンバーとボードを共有したい場合、またはアクセス権を管理したい場合

ツールの実行順序:

  1. MIRO_GET_BOARDS2 - 共有するボードを見つけます[前提条件]
  2. MIRO_SHARE_BOARD - ボードをユーザーと共有します[必須]
  3. MIRO_GET_BOARD_MEMBERS - 現在のボードメンバーを確認します[任意]

主なパラメーター:

  • board_id:共有するボード(必須)
  • emails:招待するメールアドレスの配列
  • role:アクセス権限('viewer'、'commenter'、'editor')
  • message:任意の招待メッセージ

注意点:

  • メールアドレスは有効である必要があります。無効なメールアドレスが含まれていると、リクエスト全体が失敗します
  • ロールは定義済みの値から指定する必要があります。大文字と小文字は区別されます
  • 組織外のユーザーとの共有には、管理者の承認が必要な場合があります
  • GET_BOARD_MEMBERS はオーナーを含むすべてのメンバーを返します
5. 視覚的なつながりを作成する

使用する場面:ユーザーがボード上のアイテムを線や矢印でつなげたい場合

ツールの実行順序:

  1. MIRO_GET_BOARD_ITEMS - 接続するアイテムを見つけます[前提条件]
  2. MIRO_GET_CONNECTORS2 - 既存の接続を確認します[任意]

主なパラメーター:

  • board_id:対象ボードの ID
  • startItem:ソースアイテムの id を含むオブジェクト
  • endItem:対象アイテムの id を含むオブジェクト
  • style:コネクターのスタイル(線の種類、色、矢印)

注意点:

  • 始点と終点のアイテムは、どちらも同じボード上に存在する必要があります
  • 接続にはアイテム ID が必要です。先に GET_BOARD_ITEMS で解決してください
  • コネクターのスタイルはさまざまです。スキーマで利用可能なオプションを確認してください
  • 自己参照する接続(始点と終点が同じもの)は許可されていません

よく使われるパターン

ID の解決

ボード名 -> ボード ID:

1. Call MIRO_GET_BOARDS2 with query=board_name
2. Find board by name in results
3. Extract id field

ボード上のアイテムの検索:

1. Call MIRO_GET_BOARD_ITEMS with board_id and optional type filter
2. Find item by content or position
3. Extract item id for further operations
ページネーション
  • ボード:offset と limit を使用します(オフセット方式)
  • ボードアイテム:cursor と limit を使用します(カーソル方式)
  • 結果がなくなるか、カーソルが存在しなくなるまで続けます
  • デフォルトのページサイズはエンドポイントによって異なります
座標系
  • ボードの原点(0,0)は中央にあります
  • X の正方向は右、Y の正方向は下です
  • アイテムは中心点を基準に配置されます
  • ボードの中央には position: {x: 0, y: 0} を使用します
  • フレームは範囲を定めます。内部のアイテムはフレームの位置を継承します

既知の注意点

ボード ID:

  • ほぼすべての操作でボード ID が必要です
  • 必ず先に GET_BOARDS2 を使ってボード名を ID に解決してください
  • ボード ID をハードコードしないでください。アカウントによって異なります

アイテムの作成:

  • アイテムの種類ごとに必要なフィールドが異なります
  • 付箋にはテキスト用の data.content が必要です
  • フレームには geometry.width と geometry.height が必要です
  • 指定しない場合、位置はデフォルトで (0,0) になり、アイテムが重なることがあります

レート制限:

  • Miro API にはトークンごとのレート制限があります
  • アイテムを個別に作成するより、一括操作が推奨されます
  • 複数のアイテムには MIRO_CREATE_ITEMS_IN_BULK を使用してください

レスポンスの解析:

  • レスポンスデータは data キーの下にネストされている場合があります
  • アイテムの種類によって、レスポンスに含まれるフィールドが決まります
  • オプションのフィールドは存在しない場合があるため、慎重に解析してください

クイックリファレンス

タスクツールのスラッグ主なパラメーター
ボードの一覧表示MIRO_GET_BOARDS2query, sort, limit, offset
ボードの詳細取得MIRO_GET_BOARDboard_id
ボードの作成MIRO_CREATE_BOARDname, description
付箋の追加MIRO_CREATE_STICKY_NOTE_ITEMboard_id, data, style, position
フレームの追加MIRO_CREATE_FRAME_ITEM2board_id, data, geometry, position
アイテムの一括追加MIRO_CREATE_ITEMS_IN_BULKboard_id, items
ボードアイテムの取得MIRO_GET_BOARD_ITEMSboard_id, type, cursor
ボードの共有MIRO_SHARE_BOARDboard_id, emails, role
メンバーの取得MIRO_GET_BOARD_MEMBERSboard_id
コネクターの取得MIRO_GET_CONNECTORS2board_id

Composio によって提供されています

コメント