Vextra MCP 服务器是一个基于 模型上下文协议(MCP) 的服务器,用于处理和解析 Vextra、Figma、Sketch 和 SVG 等设计文件。它为 AI 助手(如 Cursor)提供了通过 MCP 协议访问和操作设计文件的能力,支持多种设计文件格式。
npm install
npm run dev
npm run build
npm start
.vext、.sketch、.fig、.svg 文件格式。在 Cursor 中添加以下 MCP 配置:
{
"Vextra MCP": {
"url": "http://localhost:8080/sse",
"messageUrl": "http://localhost:8080/messages",
"type": "sse",
"headers": {
"Accept": "text/event-stream",
"Cache-Control": "no-cache"
}
}
}
服务器默认在 http://localhost:8080 启动,支持以下端点:
GET /sse - SSE 连接端点POST /messages - HTTP 消息端点从设计文件中检索布局信息和结构数据。 参数:
filePath(必需):本地文件路径pageId(可选):页面 IDnodeId(可选):节点 IDdepth(可选):遍历深度限制示例:
获取完整文件信息
/path/to/file.sketch
获取特定页面
/path/to/file.sketch/pageId
获取特定节点
/path/to/file.sketch/pageId/nodeId
将设计节点渲染为图像。 参数:
filePath(必需):本地文件路径pageId(必需):页面 IDnodeIds(必需):节点 ID 数组format(可选):图像格式(png、jpg、svg)scale(可选):缩放比例从文件中检索页面结构和元数据。 参数:
filePath(必需):本地文件路径返回:
在 Cursor 中,你可以这样使用:
解析设计文件
/path/to/file.sketch
获取特定页面信息
/path/to/file.sketch/pageId
从页面中提取所有图像
从 /path/to/file.sketch 的第一页提取所有图像
分析大文件时限制深度
从 /path/to/large-file.sketch 中获取布局信息,限制遍历深度为 2 层
批量处理
获取 /path/to/design.fig 中所有页面的缩略图
src/
├── data/ # 数据处理模块
│ ├── export/ # 数据导出相关
│ ├── source/ # 数据源处理
│ └── vextra.ts # Vextra 服务核心
├── mcp/ # MCP 工具实现
│ ├── get_vextra_data.ts
│ ├── get_vextra_images.ts
│ └── get_vextra_pagesinfo.ts
├── middlewares/ # 中间件
└── server.ts # 服务器入口点
npm run dev # 开发模式
npm run build # 构建生产版本
npm start # 启动生产服务器
本项目采用 AGPL - 3.0 许可证,详情请参阅 LICENSE 文件。
如果您有任何问题或建议,请通过 GitHub Issues 与我们联系。