🚀 Miro MCP Server
借助人工智能控制 Miro 白板。采用Go语言构建,兼具速度与简洁性。
社区项目 — 本项目与Miro官方无直接关联。请查看下方的 官方版本与社区版本对比。
77 种工具 | 单二进制文件 | 全平台支持 | 支持所有主流AI工具

🚀 快速开始
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
✨ 主要特性
可执行操作
| 类别 |
示例 |
| 白板操作 |
创建、复制、删除、更新、共享白板,列出成员 |
| 元素操作 |
便签、形状、文本、卡片、应用卡片、框架 |
| 图表生成 |
根据 Mermaid 语法生成流程图和序列图 |
| 思维导图 |
创建具有父子关系的思维导图节点 |
| 批量操作 |
一次性创建多个元素,创建便签网格 |
| 标签管理 |
创建、附加、更新和组织标签 |
| 分组管理 |
分组、取消分组、列出和管理元素组 |
| 连接操作 |
使用带样式的箭头连接元素 |
| 导出功能 |
白板缩略图,PDF/SVG 导出(企业版) |
语音操作示例
- "添加一个黄色便签,内容为 'Review PRs'"
- "创建一个流程图:开始 → 决策 → 结束"
- "我有哪些白板?"
- "将设计白板共享给 jane@example.com"
- "以 '项目想法' 为根节点创建一个思维导图"
📦 安装指南
安装方式
- 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
获取 Miro 令牌
- 访问 miro.com/app/settings/user-profile/apps
- 创建一个具有
boards:read 和 boards:write 权限的应用
- 将应用安装到您的团队,并复制令牌
配置 AI 工具
- Claude Code:运行
claude mcp add miro -e MIRO_ACCESS_TOKEN=your-token -- miro-mcp-server
- Claude Desktop / Cursor / VS Code:配置说明请参考 SETUP.md
💻 使用示例
基础用法
您可以使用以下命令进行基本操作,例如获取 Miro 令牌和配置 AI 工具:
claude mcp add miro -e MIRO_ACCESS_TOKEN=your-token -- miro-mcp-server
高级用法
图表生成
创建流程图和序列图,使用 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)、形状([] 矩形、{} 菱形、(()) 圆形)、带标签的边。
📚 详细文档
| 文档 |
描述 |
| QUICKSTART.md |
两分钟快速上手 |
| SETUP.md |
所有 AI 工具的完整设置 |
| CONFIG.md |
配置参考 |
| PERFORMANCE.md |
优化指南 |
| CHANGELOG.md |
版本历史 |
| ERRORS.md |
错误处理与故障排除 |
🔧 技术细节
77 种工具详情
白板管理(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_update_board_member |
更新成员角色 |
miro_remove_board_member |
从白板中移除成员 |
元素创建(14 种)
| 工具 |
描述 |
miro_create_sticky |
创建便签 |
miro_create_sticky_grid |
以网格布局创建便签 |
miro_create_shape |
创建形状(矩形、圆形等) |
miro_create_text |
创建文本元素 |
miro_create_frame |
创建框架容器 |
miro_create_card |
创建带有截止日期的卡片 |
miro_create_app_card |
创建带有自定义字段的应用卡片 |
miro_create_image |
从 URL 添加图像 |
miro_create_document |
从 URL 添加文档 |
miro_create_embed |
嵌入 YouTube、Figma 等 |
miro_create_connector |
用箭头连接两个元素 |
miro_create_group |
将元素分组 |
miro_create_mindmap_node |
创建思维导图节点 |
miro_bulk_create |
一次性创建多个元素 |
框架管理(4 种)
| 工具 |
描述 |
miro_get_frame |
获取框架详情 |
miro_update_frame |
更新框架标题/颜色/大小 |
miro_delete_frame |
删除框架 |
miro_get_frame_items |
列出框架内的元素 |
思维导图管理(4 种)
| 工具 |
描述 |
miro_create_mindmap_node |
创建思维导图节点 |
miro_get_mindmap_node |
获取节点详情 |
miro_list_mindmap_nodes |
列出所有思维导图节点 |
miro_delete_mindmap_node |
删除思维导图节点 |
元素读取(5 种)
| 工具 |
描述 |
miro_list_items |
列出白板上的元素 |
miro_list_all_items |
自动分页获取所有元素 |
miro_get_item |
获取元素详情 |
miro_get_app_card |
获取应用卡片详情 |
miro_search_board |
按内容搜索元素 |
元素更新与删除(6 种)
| 工具 |
描述 |
miro_update_item |
更新元素内容/位置/颜色 |
miro_update_app_card |
更新应用卡片字段 |
miro_bulk_update |
一次性更新多个元素 |
miro_delete_item |
删除元素 |
miro_delete_app_card |
删除应用卡片 |
miro_bulk_delete |
一次性删除多个元素 |
标签管理(8 种)
| 工具 |
描述 |
miro_create_tag |
创建标签 |
miro_list_tags |
列出白板上的所有标签 |
miro_get_tag |
按 ID 获取标签详情 |
miro_attach_tag |
将标签附加到元素 |
miro_detach_tag |
从元素移除标签 |
miro_get_item_tags |
获取元素上的标签 |
miro_update_tag |
更新标签名称/颜色 |
miro_delete_tag |
删除标签 |
连接管理(4 种)
| 工具 |
描述 |
miro_list_connectors |
列出所有连接 |
miro_get_connector |
获取连接详情 |
miro_update_connector |
更新连接样式/标题 |
miro_delete_connector |
删除连接 |
分组管理(5 种)
| 工具 |
描述 |
miro_list_groups |
列出白板上的所有组 |
miro_get_group |
获取组详情 |
miro_get_group_items |
列出组内的元素 |
miro_ungroup |
取消元素分组 |
miro_delete_group |
删除组 |
导出功能(4 种)
| 工具 |
描述 |
miro_get_board_picture |
获取白板缩略图 |
miro_create_export_job |
导出为 PDF/SVG(企业版) |
miro_get_export_job_status |
检查导出进度 |
miro_get_export_job_results |
获取下载链接 |
图表生成与审计(2 种)
| 工具 |
描述 |
miro_generate_diagram |
根据 Mermaid 语法创建图表 |
miro_get_audit_log |
查询本地执行日志 |
性能优化
- 缓存机制:2 分钟的 TTL 减少 API 调用
- 速率限制:自适应 Miro 的速率限制头
- 熔断机制:隔离故障端点
- 并行批量操作:并发创建元素
- 令牌验证:启动时快速失败并给出明确错误信息
- 临时错误重试:自动重试 502/503/504 错误并进行退避处理
更多优化提示和基准测试请参考 PERFORMANCE.md。
HTTP 模式端点
当使用 -http :8080 运行时:
| 端点 |
描述 |
/ |
MCP 协议(可流式 HTTP) |
/health |
健康检查(JSON) |
/health?deep=true |
深度健康检查(测试 Miro API) |
/metrics |
Prometheus 指标 |
健康检查响应示例:
{
"status": "healthy",
"server": "miro-mcp-server",
"version": "1.9.0",
"uptime": "2h30m",
"components": {
"config": {"status": "healthy"},
"miro_api": {"status": "healthy", "latency": "145ms"}
}
}
开发相关
make build
make test
make test-cover
make lint
make build-all
make help
Docker 部署
快速启动:
export MIRO_ACCESS_TOKEN=your-token
docker-compose up -d
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 进行交互式测试和调试:
npx @modelcontextprotocol/inspector miro-mcp-server
MIRO_ACCESS_TOKEN=your-token npx @modelcontextprotocol/inspector miro-mcp-server
打开 http://localhost:6274 可以:
- 浏览所有 77 种工具及其架构
- 交互式测试工具调用
- 查看原始 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。
账户兼容性
| 账户类型 |
支持情况 |
| 免费版 |
完全访问所有 77 种工具 |
| 团队版 |
完全访问所有 77 种工具 |
| 商业版 |
完全访问所有 77 种工具 |
| 企业版 |
完全访问 + PDF/SVG 导出 |
与其他方案对比
与 TypeScript 替代方案对比
| 特性 |
本服务器 |
TypeScript 替代方案 |
| 运行时 |
单二进制文件 |
需要 Node.js |
| 大小 |
约 14MB |
包含 node_modules 时超过 100MB |
| 启动时间 |
约 50ms |
500ms - 2s |
| 内存占用 |
空闲时约 10MB |
空闲时约 50MB |
| 图表生成 |
内置 Mermaid 解析器 |
基于 AI |
| 速率限制 |
自动退避 |
手动设置 |
| 缓存机制 |
2 分钟 TTL |
无 |
| 熔断机制 |
支持 |
不支持 |
与 Miro 官方 MCP 服务器对比
Miro 已发布 官方 MCP 服务器(测试版)。对比情况如下:
| 特性 |
本服务器 |
官方 Miro MCP 服务器 |
| 工具数量 |
77 种 |
约 5 种(测试版) |
| 图表生成 |
Mermaid 语法 |
基于 AI |
| 批量操作 |
支持 |
不支持 |
| 思维导图 |
支持 |
不支持 |
| 标签与分组 |
支持 |
不支持 |
| 导出功能 |
支持 |
不支持 |
| 运行时 |
单 Go 二进制文件 |
Node.js |
| 速率限制 |
自适应 |
基本限制 |
| 缓存机制 |
内置 |
无 |
| OAuth 流程 |
内置 CLI |
需要设置 |
何时使用官方服务器:您需要 Miro 支持的工具和 AI 驱动的图表生成功能。
何时使用本服务器:您需要完整的 API 接口、批量操作、思维导图、标签和分组功能,或者希望使用轻量级的二进制文件。
两者可以共存 — 在配置中使用不同的 MCP 服务器名称。
📄 许可证
本项目采用 MIT 许可证。
为 Miro 和 MCP 社区打造。
Miro 是 Miro Inc. 的商标。本项目与 Miro 无关联,也未得到其认可。