使用说明
模型上下文协议(MCP)的Miro扩展
概述
此扩展使AI代理能够通过模型上下文协议(MCP)与Miro板进行交互。它提供了从Miro板上操纵和提取数据的高级功能,使其成为人工智能辅助设计、协作和数据可视化的强大工具。
特性
图像工具
- 使用URL在Miro板上创建图像
- 使用base64编码数据上传图像
- 支持定位和尺寸
Iframe嵌入
- 将iframe嵌入Miro板(网站、视频等)
- 控制显示模式(内联/模态)
- 为嵌入内容设置预览图像
板数据导出
- 以JSON格式导出整个电路板数据
- 获取电路板项目的详细信息
- 查看全面的董事会结构和内容
形状数据提取
- 获取特定形状的详细信息
- 提取位置、尺寸和样式
- 全面按类型查询形状
安装
# Clone the repository
git clone <repository-url>
# Install dependencies
npm install
认证
该扩展需要Miro OAuth令牌才能运行。您可以在运行服务器时提供此令牌:
npm start -- --miro-token YOUR_TOKEN_HERE
工具
图像工具
create_image_from_url
从URL在Miro板上创建图像。
{
"boardId": "board_id_here",
"imageUrl": "https://example.com/image.png",
"x": 0,
"y": 0,
"width": 300,
"height": 200
}
create_image_from_base64
从base64编码数据在Miro板上创建图像。
{
"boardId": "board_id_here",
"base64Data": "base64_string_here",
"x": 0,
"y": 0,
"width": 300,
"height": 200
}
Iframe嵌入
create_embed
在Miro板上嵌入iframe。
{
"boardId": "board_id_here",
"url": "https://example.com",
"x": 0,
"y": 0,
"width": 600,
"mode": "inline",
"previewUrl": "https://example.com/preview.png"
}
板数据导出
export_board_as_json
以JSON格式导出Miro板上的所有数据。
{
"boardId": "board_id_here"
}
get_shape_data
获取板上特定项目的详细数据。
{
"boardId": "board_id_here",
"itemId": "item_id_here"
}
形状数据提取
get_shape_details
获取特定形状的详细信息。
{
"boardId": "board_id_here",
"shapeId": "shape_id_here"
}
get_shapes_by_type
在板上获得特定类型的所有形状。
{
"boardId": "board_id_here",
"shapeType": "circle"
}
建筑
该扩展遵循模块化设计,包含以下组件:
MiroClient.ts:用于与Miro API交互的核心客户端- 中的工具模块
src/tools目录:imageTools.ts:图像创建工具embedTools.ts:Iframe嵌入工具screenshotTools.ts:板数据导出工具shapeTools.ts:形状数据提取工具
index.ts:处理MCP请求的主要入口点
发展
为该项目做出贡献:
- 分叉存储库
- 创建要素分支
- 进行更改
- 为您的更改添加测试
- 提交拉取请求
许可证
备注
- 该扩展绕过了Miro API的一些限制(例如,没有API的直接截图),提供了可用于重新创建或可视化板的全面数据。
- 所有API调用都包括强大的错误处理和响应验证。
- 代码库完全使用TypeScript类型化,以获得更好的开发体验和代码质量。
