Miro Mcp Server について
Miro MCP Server は、Claude や Cursor などの MCP クライアントから 110 のツールで Miro ホワイトボードを操作できる、コミュニティ開発のオープンソース MCP サーバーです。ワークショップ、レトロスペクティブ、計画セッションを行うチーム向けで、単一のバイナリとして提供されます。
主な機能
- 01ボード、アイテム、フレーム、コネクターを扱う 110 のツール
- 02Mermaid からのフローチャートとシーケンス図の生成
- 03親子関係を持つマインドマップノードの管理
- 04コメントスレッドの作成、返信、解決
- 05SVG によるボード内容の読み取りと更新
- 06事前読み込みトークンを減らす essentials プロファイル
活用シーン
- 01自然言語の指示によるスプリントボードやレトロボードの作成
- 02付箋のグリッドを作成してフレームに整理
- 03ボード内容からフローチャートやマインドマップを生成
MCP 対応
このプロジェクトは MCP サーバーであり、ボード、アイテム、コメント、メンバーの管理などの Miro 操作を MCP クライアントにツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Miro MCP サーバー
Miro のワークショップ、レトロスペクティブ、プランニングセッションをコマンドラインから実行できます。ボードの読み取り、付箋の作成、フレームの整理、図の生成を Claude、Cursor、その他任意の MCP クライアントを通じて行えます。
コミュニティプロジェクト — Miro とは公式に提携していません。以下を参照してください: 公式の選択肢。
110 個のツール | 単一バイナリ | 全プラットフォーム | 主要な AI ツールすべて
ドキュメント
| ドキュメント | 説明 |
|---|---|
| QUICKSTART.md | 2 分で使い始める |
| SETUP.md | すべての AI ツール向けの完全なセットアップ |
| CONFIG.md | 設定リファレンス |
| PERFORMANCE.md | 最適化ガイド |
| CHANGELOG.md | バージョン履歴 |
| ERRORS.md | エラー処理とトラブルシューティング |
クイックスタート
1. インストール
Homebrew (macOS/Linux):
brew tap olgasafonova/tap && brew install miro-mcp-server
ワンライナー (macOS/Linux):
curl -fsSL https://raw.githubusercontent.com/olgasafonova/miro-mcp-server/main/install.sh | sh
Docker:
docker pull ghcr.io/olgasafonova/miro-mcp-server:latest
手動ダウンロード: すべてのプラットフォームについては SETUP.md を参照してください
2. Miro トークンを取得する
- miro.com/app/settings/user-profile/apps にアクセスします
boards:readとboards:write権限を持つアプリを作成します- チームにインストールし、トークンをコピーします
3. AI ツールを設定する
Claude Code:
claude mcp add miro -e MIRO_ACCESS_TOKEN=your-token -- miro-mcp-server
Claude Desktop / Cursor / VS Code: SETUP.md を参照してください
Cursor Marketplace:
/add-plugin miro
うまく動作しませんか? どこでつまずいたか教えてください — 一文だけでも助かります。
できること
| カテゴリ | 例 |
|---|---|
| ボード | 作成、コピー、削除、更新、共有、メンバーの一覧表示 |
| アイテム | 付箋、図形、テキスト、カード、アプリカード、画像、ドキュメント、フレーム、ドキュメント |
| 図 | Mermaid からフローチャートとシーケンス図を生成する。ネイティブの図アイテムを一覧表示して検査する |
| ドキュメント | ボード上で Markdown ドキュメントを作成および管理する |
| アップロード | ローカルの画像ファイルとドキュメントファイルをボードにアップロードして置き換える |
| テーブル | ボード上のテーブルを検出して検査する |
| マインドマップ | 親子関係を持つマインドマップノードを作成する |
| コードウィジェット | ボード上の構文ハイライトされたコードスニペット (v2-experimental) |
| 一括操作 | 複数のアイテムを一度に作成する、付箋グリッド |
| タグ | タグを作成、付与、更新して整理する |
| グループ | アイテムグループをグループ化、一覧表示、管理する |
| コネクタ | スタイル付きの矢印でアイテムを接続する |
| エクスポート | ボードのサムネイル、PDF/SVG エクスポート (Enterprise) |
音声の例
- 「『PR をレビュー』と書いた黄色い付箋を追加して」
- 「フローチャートを作成して: 開始 → 判断 → 終了」
- 「私が持っているボードは?」
- 「Design ボードを [email protected] と共有して」
- 「『プロジェクトのアイデア』をルートとするマインドマップを作成して」
コンパニオンスキル: miro-workflow
スキルをサポートする Claude クライアント(Claude Code、Claude Desktop)向けに、このリポジトリには miro-workflow スキルが含まれています。これは、アトミックなアイテム作成ツールからいくつかの一般的なボードレイアウトを組み立てる方法を説明するものです。
対象となるレイアウトは 5 つです:
| ワークフロー | トリガーフレーズの例 |
|---|---|
| スプリントボード | 「スプリント 42 のスプリントボードをセットアップして」 |
| レトロスペクティブ | 「チームのレトロボードを作成して」 |
| ブレインストーム | 「[トピック] のブレインストームボード」 |
| ストーリーマップ | 「[プロダクト] のユーザージャーニーをマッピングして」 |
| カンバン | 「バックログのカンバン」 |
それぞれがフレームサイズ、間隔の計算、付箋の配置、色の規則(Miro API はフレームの塗りつぶしに 16 進数、付箋には名前付きの値を使用するという、2 つの異なる語彙)、および従うべきツール呼び出しの順序を指定します。単一のツール呼び出し(「付箋を 1 つ追加」)や読み取り専用の検査では、通常、アトミックツールだけで十分です。
このスキルは新しく、より多くのレイアウトが実際のボードで試されるにつれて調整が必要になる可能性があります。ファイルは skills/miro-workflow/ の下にあります。Claude Code は ~/Projects/claude-code-config/skills/ からスキルを自動検出します。他のホストについては、お使いのクライアントのスキルインストールドキュメントに従ってください。
上記のバッジは SkillCheck Pro によって授与されています。このスキルは現在 92/100 で、Critical 問題ゼロ、警告ゼロです。このリポジトリのスキルは、90/100 以上で Critical ゼロ・警告ゼロの場合にバッジを獲得します。その基準を下回ると、スキルが再び合格するまでバッジは外されます。
コンパニオン CLI: miro-cli
シェルファーストの使い方には、このサーバーには兄弟プロジェクトがあります: miro-cli。同じ作者、同じ Miro API カバレッジ、異なるランタイムです。エンドポイントごとに 1 つの動詞、JSON の入出力、さらにオフライン検索用のローカル SQLite ミラーを備えています。CI で Miro をスクリプト化するとき、ボード間で付箋を一括移行するとき、または API クォータを消費せずにオフラインでボードをクエリするときに、これを手に取ってください。
MCP サーバーと CLI は意図的に重複しています。エージェントランタイムがループに入っている場合(Claude Code、Claude Desktop、Cursor)は MCP サーバーを使用してください。bash、Makefile、または CI の場合は CLI を使用してください。両方を使いたい場合は両方を使ってください。
インストール:
brew install olgasafonova/tap/miro-cli
# or
go install github.com/olgasafonova/miro-cli/cmd/miro-cli@latest
コンパニオン MCP Apps サーバー: miro-mcp-apps
Miro データをストリーミングされた JSON ではなく、チャット内でインタラクティブな UI(カード、テーブル、色クラスター、SVG グラフ)としてレンダリングしたい場合は、TypeScript の兄弟プロジェクトがあります: miro-mcp-apps。MCP Apps 拡張(SEP-1865)上に構築された 11 のツールで、同じ MIRO_ACCESS_TOKEN を再利用します。2 つのサーバーは並行して動作します。こちらは 110 ツールの CRUD サーフェス用、あちらは一目でわかる視覚的ビュー用です。
| やりたいこと… | 使用するもの |
|---|---|
| プログラムによる制御: アイテムの作成/更新/移動/接続、図の生成 | miro-mcp-server(このリポジトリ) |
| 視覚的なボードの要約、付箋の色クラスター、インラインでレンダリングされるコネクタグラフ | miro-mcp-apps |
| bash、CI、または Makefile で同じこと | miro-cli |
MCP Apps パターンは現在 TypeScript 専用です(Go SDK には ext-apps ヘルパーがありません)。そのため、このコンパニオンは Go サーバーに付け足すのではなく、別のリポジトリに置かれています。
トークン効率
ツールサーフェス全体(110 ツール)はプリロードでおよそ 20.8K トークン を消費しますが、essentials プロファイルでは約 2.8K に削減されます。このフットプリントが問題になるセッションでは、クライアント設定で MIRO_TOOLS_PROFILE=essentials を設定してください。するとサーバーは厳選された 14 ツールのサブセット(ボード、一覧/検索/検索、付箋/テキスト/フレーム/コネクタの作成、アイテムの一覧/取得/更新/削除)に加えて 1 つのディスカバリ用メタツールを登録します。エージェントは必要に応じて miro_tool_search を通じて残りのツールに到達できます。
| プロファイル | ツール | プリロードトークン(推定) |
|---|---|---|
full(デフォルト) | 110 | ~20,795 |
essentials | 15 | ~2,848 |
削減量: essentials を選択した場合、約 17,760 トークン(86.2% 削減)。説明のトークンは正確です(JSON マーシャリング)。スキーマのコストはツールあたり 200 バイトで見積もっています。go run ./cmd/token-count/ でローカルに再現できます。
miro_tool_search(query?, category?, limit?) は両方のプロファイルで登録されます。ツール名、タイトル、説明、カテゴリを重み付きキーワードスコアリング(名前 3×、タイトル 2×、カテゴリ 2.5×、説明 1×)で検索し、最大 50 件の一致を返し、自身を推薦することはありません。どのツールを使うべきか分からないときや、閲覧前にカテゴリを絞り込むときに使用します。空のクエリとカテゴリを指定すると、そのカテゴリのツールがアルファベット順で返されます。
環境変数の完全なリファレンスについては CONFIG.md を参照してください。
全 110 ツール
ボード管理 (9)
| ツール | 説明 |
|---|---|
miro_list_boards | アクセス可能なボードをオーナー、チーム、タイムスタンプとともに一覧表示 |
miro_find_board | 名前でボードを検索、一覧と同じメタデータ付き |
miro_get_board | ボードの詳細を取得 |
miro_get_board_summary | ボードの統計とアイテム数を取得 |
miro_get_board_content | AI 分析用にすべてのボードコンテンツを取得 |
miro_create_board | 新しいボードを作成 |
miro_copy_board | 既存のボードをコピー |
miro_update_board | ボード名/説明を更新 |
miro_delete_board | ボードを削除 |
ボードメンバー (5)
| ツール | 説明 |
|---|---|
miro_list_board_members | アクセス権を持つユーザーを一覧表示 |
miro_get_board_member | メンバーの詳細を取得 |
miro_share_board | メールでボードを共有 ( MIRO_SHARE_ALLOWED_DOMAINS が必要、デフォルトではフェイルクローズ) |
miro_update_board_member | メンバーの役割を更新 (破壊的: 役割昇格の前にプロンプトを表示) |
miro_remove_board_member | ボードからメンバーを削除 |
共有と役割変更のツールはプロンプトインジェクション対策のためにガードされています。
SECURITY.mdとCONFIG.mdを参照してください。
アイテムの作成 (18)
| ツール | 説明 |
|---|---|
miro_create_sticky | 付箋を作成 |
miro_create_sticky_grid | 付箋をグリッドレイアウトで作成 |
miro_create_shape | 図形(長方形、円など)を作成 |
miro_create_flowchart_shape | フローチャート図形を作成(実験的 API) |
miro_create_text | テキスト要素を作成 |
miro_create_frame | フレームコンテナを作成 |
miro_create_card | 期日付きのカードを作成 |
miro_create_app_card | カスタムフィールド付きのアプリカードを作成 |
miro_create_image | URL から画像を追加 |
miro_upload_image | ローカルの画像ファイルをアップロード |
miro_upload_document | ローカルのドキュメントファイル(PDF、DOCX など)をアップロード |
miro_create_doc | Markdown ドキュメントを作成 |
miro_create_document | URL からドキュメントを追加 |
miro_create_embed | YouTube、Figma などを埋め込み |
miro_create_connector | 矢印で 2 つのアイテムを接続 |
miro_create_group | アイテムをグループ化 |
miro_create_mindmap_node | マインドマップノードを作成 |
miro_bulk_create | 複数のアイテムを一度に作成 |
フレーム (4)
| ツール | 説明 | |------|-------------| | `miro_get_frame` | フレームの詳細を取得 | | `miro_update_frame` | フレームのタイトル/色/サイズを更新 | | `miro_delete_frame` | フレームを削除 | | `miro_get_frame_items` | フレーム内のアイテムを一覧表示 |マインドマップ (3)
| ツール | 説明 |
|---|---|
miro_get_mindmap_node | ノードの詳細を取得 |
miro_list_mindmap_nodes | すべてのマインドマップノードを一覧表示 |
miro_delete_mindmap_node | マインドマップノードを削除 |
コードウィジェット (6、v2-experimental)
| ツール | 説明 |
|---|---|
miro_create_code_widget | シンタックスハイライト付きのコードスニペットを追加 |
miro_get_code_widget | 完全なソースと設定を取得 |
miro_list_code_widgets | コードプレビュー付きでウィジェットを一覧表示 |
miro_update_code_widget | コード、言語、タイトル、サイズを変更 |
miro_move_code_widget | 新しい位置に移動 |
miro_delete_code_widget | コードウィジェットを削除 |
コメント (5、v2-experimental)
| ツール | 説明 |
|---|---|
miro_create_comment | コメントスレッドを開く。任意でアイテムに紐付け可能 |
miro_list_comments | メッセージと解決状態を含むスレッドを一覧表示 |
miro_get_comment | 1 つのスレッドを完全なメッセージ履歴とともに取得 |
miro_reply_comment | スレッドに返信を追加 |
miro_resolve_comment | スレッドを解決、または resolved=false で再オープン |
キャンバス SVG (3、ローカル変換)
| ツール | 説明 |
|---|---|
miro_read_board_svg | ボードアイテムを SVG ドキュメントとしてレンダリング (ローカルで計算)。frame_id でレンダリングを 1 つのフレームに限定 |
miro_create_from_svg | SVG からアイテムを作成: シェイプ、テキスト、付箋、フレーム (data-type ヒント)、三角形、画像、コネクター (data-start/data-end 付きの line) |
miro_update_from_svg | data-miro-id をキーとする SVG 差分を適用: その場で更新、削除 (data-deleted)、追加的に作成。読み取り出力は再送信可能 |
アイテムの読み取り (9)
| ツール | 説明 |
|---|---|
miro_list_items | ボード上のアイテムを一覧表示 |
miro_list_all_items | 自動ページネーションで全アイテムを取得 |
miro_get_item | アイテムの詳細を取得 |
miro_get_image | 画像の詳細と Miro ホストの URL を取得 |
miro_get_document | ドキュメントの詳細と Miro ホストの URL を取得 |
miro_get_app_card | アプリカードの詳細を取得 |
miro_get_doc | Markdown ドキュメントの内容を取得 |
miro_search_board | コンテンツでアイテムを検索 |
miro_who_am_i | アクセストークンを内省: ユーザー、チーム、組織、アプリケーション、スコープ |
アイテムの更新と削除 (18)
| ツール | 説明 |
|---|---|
miro_update_item | アイテムの内容/位置/色を更新 |
miro_update_sticky | 付箋を更新 (形状、色) |
miro_update_shape | シェイプを更新 (塗りつぶし、テキスト色、種類) |
miro_update_text | テキスト要素を更新 |
miro_update_card | カードのフィールドを更新 |
miro_update_image | 画像のプロパティを更新 |
miro_update_image_from_file | 既存アイテムの画像ファイルを置き換え |
miro_update_document | ドキュメントのプロパティを更新 |
miro_update_document_from_file | 既存アイテムのドキュメントファイルを置き換え |
miro_update_embed | 埋め込みのプロパティを更新 |
miro_update_group | グループのプロパティを更新 |
miro_update_app_card | アプリカードのフィールドを更新 |
miro_bulk_update | 複数のアイテムを一度に更新 |
miro_delete_item | アイテムを削除 |
miro_delete_app_card | アプリカードを削除 |
miro_update_doc | ドキュメントの内容を更新 (全体または検索と置換) |
miro_delete_doc | Markdown ドキュメントを削除 |
miro_bulk_delete | 複数のアイテムを一度に削除 |
タグ (9)
| Tool | Description | |------|-------------| | `miro_create_tag` | タグを作成 | | `miro_list_tags` | ボード上のすべてのタグを一覧表示 | | `miro_get_tag` | IDでタグの詳細を取得 | | `miro_attach_tag` | アイテムにタグを付与 | | `miro_detach_tag` | アイテムからタグを削除 | | `miro_get_item_tags` | アイテムに付いているタグを取得 | | `miro_get_items_by_tag` | 特定のタグが付いたすべてのアイテムを取得 | | `miro_update_tag` | タグの名前/色を更新 | | `miro_delete_tag` | タグを削除 |コネクター(4)
| Tool | Description |
|---|---|
miro_list_connectors | すべてのコネクターを一覧表示 |
miro_get_connector | コネクターの詳細を取得 |
miro_update_connector | コネクターのスタイル/キャプションを更新 |
miro_delete_connector | コネクターを削除 |
グループ(4)
| Tool | Description |
|---|---|
miro_list_groups | ボード上のすべてのグループを一覧表示 |
miro_get_group | グループの詳細を取得 |
miro_get_group_items | グループ内のアイテムを一覧表示 |
miro_delete_group | グループを削除、またはグループ化を解除 |
エクスポート(4)
| Tool | Description |
|---|---|
miro_get_board_picture | ボードのサムネイルを取得 |
miro_create_export_job | PDF/SVG にエクスポート(Enterprise) |
miro_get_export_job_status | エクスポートの進行状況を確認 |
miro_get_export_job_results | ダウンロードリンクを取得 |
テーブル(2)
| Tool | Description |
|---|---|
miro_list_tables | ボード上のテーブル(data_table_format)を一覧表示 |
miro_get_table | IDでテーブルのメタデータを取得 |
検索(1)
| Tool | Description |
|---|---|
miro_tool_search | キーワードまたはカテゴリで適切なツールを検索。両方のプロファイルに登録されており、essentials モードで全機能にアクセスする唯一の手段です |
図表と監査(6)
| Tool | Description |
|---|---|
miro_generate_diagram | Mermaid 構文から図表を作成 |
miro_list_diagrams | ボード上のネイティブ図表アイテムを一覧表示 |
miro_get_diagram | IDでネイティブ図表のメタデータを取得 |
miro_get_audit_log | このサーバーのローカル実行ログを照会 |
miro_get_org_audit_logs | MIRO の組織全体の監査ログを照会(Enterprise;auditlogs:read) |
miro_get_desire_paths | エージェントの正規化パターンを照会(エージェントが送信した内容と自動修正された内容) |
図表の生成
Mermaid 構文からフローチャートやシーケンス図を作成します。
フローチャート:
flowchart TB
A[Start] --> B{Decision}
B -->|Yes| C[Success]
B -->|No| D[Retry]
D --> B
シーケンス図:
sequenceDiagram
Alice->>Bob: Hello Bob!
Bob-->>Alice: Hi Alice!
対応形式: flowchart/graph、sequenceDiagram、方向(TB/LR/BT/RL)、形状([] 四角形、{} ひし形、(()) 円)、ラベル付きエッジ。
このサーバーを選ぶ理由
| Feature | このサーバー | TypeScript の代替手段 |
|---|---|---|
| ランタイム | 単一バイナリ | Node.js が必要 |
| サイズ | 約14MB | node_modules を含めて100MB以上 |
| 起動時間 | 約50ms | 500ms~2秒 |
| メモリ | アイドル時約10MB | アイドル時約50MB |
| 図表の生成 | Mermaid パーサーを内蔵 | AI ベース |
| レート制限 | バックオフ付きで自動 | 手動 |
| キャッシュ | TTL 2分 | なし |
| サーキットブレーカー | あり | なし |
公式版とコミュニティ版
Miro は2025年12月に公式 MCP サーバーのベータ版を公開しました。当初は約10個のツールを備えており、その後大幅に拡充されています。この比較は、ドキュメントに記載されたツール群ではなく、ホスト版サーバーが mcp.miro.com で実際に登録している45個のツールを列挙して、2026年9月18日に更新しました。ドキュメントは、実際のデプロイ内容より多い場合も少ない場合もあり、更新が追いついていません。また、機能群の変化が速いため、ツール数はすぐに古くなります。2026年8月13日時点で65個、8月18日時点で63個、9月9日時点で61個、9月18日時点で45個でした。
9月の削減は、消耗というよりも統合です。削除された16個のツールはすべて、canvas_* ファミリーに取って代わられたコンテンツの読み取りまたは書き込みパスです — board_list_items、board_show、context_explore、context_get、3つすべての diagram_*、3つすべての doc_*、4つすべての layout_* — そしてサーバー自身の接続手順は現在、Canvas Composer SVG を「Miroのキャンバスにおける統合されたインタラクション/表現プロトコル」として先頭に掲げています。09-09のパスではそれが見えていました。layout_* はまだ登録されていましたが、すでに canvas を優先して非推奨であると自己記述していました。さらに以前の変動として、2026年8月17日には存在していた board_trash と space_delete が翌日には消え、表面からはハードに破壊的な動詞がなくなりました。8月18日に存在していた5つすべての code_widget_* ツールは09-09までに消える一方で、canvas_search、canvas_load_format_skill、content_item_list_roles が登場しました。最近の追加は、新しいMCPツール と code widget エンドポイント のチェンジログから来ています。
| 機能 | このサーバー | 公式 Miro MCP |
|---|---|---|
| ツール | 110(essentials プロファイルでは 15) | 45 |
| トランスポート | stdio + HTTP | HTTPS のみ(mcp.miro.com でホスト) |
| セルフホスト | 可能 | 不可 |
| オフラインモード | あり | なし |
| 認証 | トークン + OAuth2 | OAuth 2.1、動的クライアント登録(エンタープライズ組織では管理者による有効化が必要) |
| ボード一覧のメタデータ | id、オーナー、チーム、作成/更新タイムスタンプ | 名前と URL |
| 図の生成 | Mermaid、ローカルで解析。ネイティブの図アイテムは miro_list_diagrams/miro_get_diagram で読み取り可能 | 2026-09-18 以降なし(diagram_create_mermaid、diagram_update_mermaid、diagram_get_mermaid_instructions は削除され、図はキャンバス SVG ツールを経由するようになりました) |
| AI コンテキスト | なし | 2026-09-18 以降なし(context_explore と context_get は削除) |
| レイアウト DSL | 一括作成 + miro-workflow スキルから構成 | 2026-09-18 以降なし — 4 つの layout_* ツールはすべて削除され、09-09 にキャンバスツールを優先して非推奨であると自己申告していました |
| SVG としてのキャンバス | 読み取り + 作成 + 更新(data-miro-id 差分、ローカルジオメトリ変換、空間近似)。読み取りは frame_id で単一フレームにスコープされ、読み取り出力はそのまま更新ツールに再送信できます | あり(SVG からの読み取り、作成、更新)。読み取りは矩形または widget_ids リストにスコープされ、500 ウィジェットを超える領域は拒否されます。canvas_search(SVG に対するパターンおよび regex)が先にスコープを絞り込みます。読み取り出力は再エスケープされるため、そのまま更新ツールに戻すことはできません |
| スペースとセクション | なし | あり(10 ツール) — ボードのワークスペースレベルのグループ化であり、ボードの内容ではありません |
| コメント | あり(作成、一覧、取得、返信、解決、v2-experimental) | あり(作成、一覧、返信、解決) |
| プロトタイプ | なし | あり(読み取り、作成、URL アップロード) |
| コードウィジェット | 位置移動を含む 6 ツール(v2-experimental) | 2026-09-09 以降なし(2026-08-18 時点では 5 ツール) |
| ドキュメントとテーブル | ドキュメント形式 + テーブル読み取り | テーブルのみ(作成/同期/履歴)。3 つの doc_* ツールはすべて 2026-09-18 に削除 |
| 画像 | 作成、アップロード、ファイルからの更新 | 作成、URL アップロード、データ/URL の取得 |
| 一括操作 | あり | 部分的(table_sync_rows の upsert のみ) |
| マインドマップ | あり | なし |
| タグとグループ | あり | なし |
| コネクタ CRUD | あり | なし |
| アイテムレベルの CRUD | あり(付箋、図形、テキスト、カード、画像、ドキュメント、埋め込み、フレーム) | キャンバス SVG であり、アイテム単位の動詞ではありません |
| ボード共有 / メンバー | あり(許可リストで制御) | 共有、ロール更新、および読み取り側の content_item_list_roles。メンバー CRUD はなし |
| エクスポート | あり(PDF/SVG) | なし |
| 現在のユーザー | ボードのオーナーから導出 | あり(user_who_am_i) |
| MCP リソース | 3 | なし |
| MCP プロンプト | 5 つのワークフロー | バンドルされたエージェントスキル(browse、code-review、diagram、doc、table) |
| ランタイム | 単一の Go バイナリ | ホスト型(クローズドソース) |
| レート制限 | アダプティブ | 該当なし(ホスト型) |
| キャッシュ | 組み込み(TTL 2 分) | 該当なし |
| メトリクス | Prometheus | なし |
| OpenTelemetry | 組み込み(mcp-otel-go、OTel Registry) | なし |
違いはどこから来るのか。 スペース、セクション、キャンバス SVG、プロトタイプには、公開 REST API v2 にエンドポイントがありません — api-tracking/ で追跡されている 114 パスの OpenAPI 仕様に対して 2026-08-13 に確認し、Miro が出荷しているエンドポイントを仕様が省略しているため、ライブ API をプローブして再確認しました。これらは Miro 内部 API 上で動作します。逆もまた同様です。マインドマップ、タグ、グループ、コネクタ、エクスポートは、公式サーバーがラップしていない公開 REST サーフェスです。
ボードコンテキストは以前はギャップではなく設計上の違いでしたが、2026年9月18日時点ではどちらでもありません。context_get はボードのサーバー側 AI 要約を返していましたが、context_explore とともに削除されました。miro_get_board_content は構造化されたコンテンツそのもの — タイプ別のアイテム、フレーム階層、コネクター、タグ — を返し、すでにセッション内にあるモデルに要約させます。2回目の推論ホップはありません。
公式サーバーを使うべき場合: プラグインマーケットプレイス経由のゼロセットアップ、OAuth 2.1 のエンタープライズセキュリティ、スペースとセクション、コメント、または SVG/プロトタイプのワークフローが必要な場合です。ボードコンテキスト抽出はもはやその中には含まれません — これらのツールは2026年9月18日に削除されました。
このサーバーを使うべき場合: 完全な REST カバレッジ(110 ツール、または調整可能な 15 ツールの essentials モード)、オフライン/セルフホストでの運用、よりリッチなボード一覧メタデータ、一括操作、マインドマップ、タグ、コネクター、またはエクスポートが必要な場合です。
両者は共存できます — 設定では異なる MCP サーバー名を使用してください。
パフォーマンス
- キャッシュ: 2分間の TTL で API 呼び出しを削減
- レート制限: Miro のレート制限ヘッダーに適応
- サーキットブレーカー: 失敗したエンドポイントを分離
- 並列一括操作: アイテムを同時に作成
- トークン検証: 起動時に明確なエラーで早期に失敗
- 一時的エラーの再試行: 502/503/504 をバックオフ付きで自動再試行
- OpenTelemetry: mcp-otel-go による組み込みのトレースとメトリクス(OTel Registry)
最適化のヒントとベンチマークについては PERFORMANCE.md を参照してください。
HTTP モードのエンドポイント
-http :8080 で実行する場合:
| エンドポイント | 説明 |
|---|---|
/ | MCP プロトコル(Streamable HTTP) |
/health | ヘルスチェック(JSON) |
/health?deep=true | 詳細ヘルスチェック(Miro API をテスト) |
/metrics | Prometheus メトリクス |
/.well-known/mcp-server-card | SEP-2127 サーバーカード(JSON)、mcp-servercard-go 経由 |
ヘルスチェックのレスポンス:
{
"status": "healthy",
"server": "miro-mcp-server",
"version": "1.21.0",
"uptime": "2h30m",
"components": {
"config": {"status": "healthy"},
"miro_api": {"status": "healthy", "latency": "145ms"}
}
}
開発
# Build
make build
# Run tests
make test
# Run with coverage
make test-cover
# Lint
make lint
# Build for all platforms
make build-all
# See all targets
make help
Docker デプロイメント
クイックスタート:
# Using Docker Compose
export MIRO_ACCESS_TOKEN=your-token
docker compose up -d
# Or build and run manually
docker build -t miro-mcp-server .
docker run -e MIRO_ACCESS_TOKEN=xxx -p 8080:8080 miro-mcp-server
docker-compose.yml の機能:
- ヘルスチェックを構成済み
- リソース制限のテンプレート
- 環境変数のパススルー
MCP Inspector でのデバッグ
MCP Inspector でサーバーを対話的にテストおよびデバッグします:
# Install and run (no setup required)
npx @modelcontextprotocol/inspector miro-mcp-server
# With environment variables
MIRO_ACCESS_TOKEN=your-token npx @modelcontextprotocol/inspector miro-mcp-server
http://localhost:6274 を開くと、以下が可能です:
- 110 のツールをすべてスキーマとともに閲覧
- ツール呼び出しを対話的にテスト
- 生の JSON-RPC メッセージを表示
- パラメータ検証をデバッグ
その他のデバッグオプションについては SETUP.md を参照してください。
対応プラットフォーム
| プラットフォーム | バイナリ |
|---|---|
| macOS (Apple Silicon) | miro-mcp-server-darwin-arm64 |
| macOS (Intel) | miro-mcp-server-darwin-amd64 |
| Linux (x64) | miro-mcp-server-linux-amd64 |
| Linux (ARM64) | miro-mcp-server-linux-arm64 |
| Windows (x64) | miro-mcp-server-windows-amd64.exe |
| Docker | ghcr.io/olgasafonova/miro-mcp-server |
対応 AI ツール
| ツール | ステータス |
|---|---|
| Claude Code | テスト済み |
| Claude Desktop | テスト済み |
| Cursor | テスト済み |
| VS Code + GitHub Copilot | 対応 |
| Windsurf | 対応 |
| Replit | 対応 |
| MCP 互換の任意のクライアント | 対応 |
設定ガイドについては SETUP.md を参照してください。
アカウント互換性
| アカウント種別 | サポート |
|---|---|
| Free | 106 ツール |
| Team | 106 ツール |
| Business | 106 ツール |
| Enterprise | 全 110 ツール |
4 つのツールは Enterprise プランが必要で、その旨を示すヒントとともに失敗します。3 つの PDF/SVG エクスポートツール(miro_create_export_job、miro_get_export_job_status、miro_get_export_job_results)と、さらに auditlogs:read スコープを必要とする miro_get_org_audit_logs です。miro_get_board_picture はすべてのプランで動作します。それ以外はすべてどのプランでも動作します。
6 つのコードウィジェットツールと 5 つのコメントツールは Miro の v2-experimental API を使用しています。利用可否はアカウントやプランによって異なる場合があり、エンドポイントは GA 前に変更される可能性があります。
このプロジェクトが気に入りましたか?
このサーバーが時間の節約に役立ったなら、GitHub で ⭐ を付けることをご検討ください。他の人がプロジェクトを見つけやすくなります。
その他の MCP サーバー
私の他の MCP サーバーもぜひご覧ください:
| サーバー | 説明 | スター |
|---|---|---|
| gleif-mcp-server | GLEIF LEI データベースにアクセスします。企業の識別情報を検索し、法人を検証します。 | |
| mediawiki-mcp-server | AI を任意の MediaWiki ウィキに接続します。ウィキコンテンツの検索、閲覧、編集ができます。 | |
| nordic-registry-mcp-server | 北欧の企業登記にアクセスします。ノルウェー、デンマーク、フィンランド、スウェーデンの企業を検索します。 | |
| productplan-mcp-server | ProductPlan のロードマップを操作します。OKR、アイデア、ローンチを照会します。 | |
| tilbudstrolden-mcp | 北欧の食料品のお買い得情報を探します。特売を見つけ、食事を計画し、支出を追跡します。 | |
| mcp-servercard-go | SEP-2127 Server Cards 用の Go ライブラリ。MCP サーバーの接続前ディスカバリ。 |
ライセンス
MIT
Miro と MCP コミュニティのために構築されました。
Miro は Miro Inc. の商標です。このプロジェクトは Miro と提携しておらず、承認も受けていません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。