关于 figma-automation
通过 Composio 的 Figma 工具包和 Rube MCP 执行 Figma 设计文件操作,适用于需要检查设计、导出素材或提取令牌的工作流。涵盖文件数据、组件、评论、版本及团队项目。
主要功能
- 01读取设计文件与节点数据
- 02列出组件和组件集
- 03渲染并下载设计图像
- 04提取令牌并转换为 Tailwind 配置
- 05查看评论、版本和团队项目
适用场景
- 01检查文件结构和组件信息
- 02导出选定节点为图像
- 03为开发提取设计令牌
- 04查看文件评论或版本记录
MCP 相关
依赖已连接的 Rube MCP 与 Figma 账户,通过 Rube MCP 调用 Composio 的 Figma 工具。执行评论等操作前须获得针对具体内容的授权。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill figma-automation安装后在 Claude Code 中输入/figma-automation确认已加载。
详细介绍
通过 Rube MCP 自动化 Figma
通过 Rube MCP 使用 Composio 的 Figma 工具包自动化 Figma 操作。
前提条件
- 必须已连接 Rube MCP(可用
RUBE_SEARCH_TOOLS) - 通过
RUBE_MANAGE_CONNECTIONS激活 Figma 连接,工具包为figma - 始终先调用
RUBE_SEARCH_TOOLS,以获取当前工具架构
设置
获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。请验证 MCP 身份验证是否实际生效,以及是否已获准访问 Figma 账户和文件;仅配置端点并不足够。
- 确认
RUBE_SEARCH_TOOLS有响应,以验证 Rube MCP 可用 - 使用工具包
figma调用RUBE_MANAGE_CONNECTIONS - 如果连接状态不是 ACTIVE,请访问返回的身份验证链接,完成 Figma 身份验证
- 运行任何工作流之前,确认连接状态为 ACTIVE
评论和导出边界
读取设计数据并不代表获准发表评论或通知协作者。发表评论必须获得用户对确切文件、讨论串或消息的授权。仅将用户要求的节点导出到安全的新目标位置,保护私有设计数据,并验证临时 URL;不得将凭据转发给无关主机。
核心工作流
1. 获取文件数据和组件
适用场景:用户想要检查 Figma 设计文件或提取组件信息
工具调用顺序:
FIGMA_DISCOVER_FIGMA_RESOURCES- 从 Figma URL 中提取 ID[前置步骤]FIGMA_GET_FILE_JSON- 获取文件数据(默认简化)[必需]FIGMA_GET_FILE_NODES- 获取特定节点数据[可选]FIGMA_GET_FILE_COMPONENTS- 列出已发布组件[可选]FIGMA_GET_FILE_COMPONENT_SETS- 列出组件集[可选]
关键参数:
file_key:URL 中的文件密钥(例如,来自 figma.com/design/abc123XYZ/... 的 'abc123XYZ')ids:以逗号分隔的节点 ID(不是数组)depth:树遍历深度(2 表示页面及顶层子项)simplify:设为 True 可使用适合 AI 的格式(体积减少 70% 以上)
注意事项:
- 仅支持 Design 文件;FigJam 画板和 Slides 会返回 400 错误
ids必须是以逗号分隔的字符串,不能是数组- URL 中的节点 ID 可能使用连字符格式(1-541),但 API 需要冒号格式(1:541)
- 范围过大的
ids或depth可能导致负载过大(413);请缩小范围或降低深度 - 响应数据可能位于
data_preview而非data中
2. 导出和渲染图像
适用场景:用户想要将设计素材导出为图像
工具调用顺序:
FIGMA_GET_FILE_JSON- 查找要导出的节点 ID[前置步骤]FIGMA_RENDER_IMAGES_OF_FILE_NODES- 将节点渲染为图像[必需]FIGMA_DOWNLOAD_FIGMA_IMAGES- 下载渲染后的图像[可选]FIGMA_GET_IMAGE_FILLS- 获取图像填充 URL[可选]
关键参数:
file_key:文件密钥ids:要渲染的节点 ID,以逗号分隔format:'png'、'svg'、'jpg' 或 'pdf'scale:PNG/JPG 的缩放比例(0.01-4.0)images:用于下载的 {node_id, file_name, format} 数组
注意事项:
- 图像以 node_id 到 URL 的映射形式返回;某些 ID 可能为 null(渲染失败)
- URL 是临时的(有效期约 30 天)
- 图像上限为 32 百万像素;超出限制的请求会自动缩小
3. 提取设计令牌
适用场景:用户想要提取设计令牌用于开发
工具调用顺序:
FIGMA_EXTRACT_DESIGN_TOKENS- 提取颜色、字体排印和间距[必需]FIGMA_DESIGN_TOKENS_TO_TAILWIND- 转换为 Tailwind 配置[可选]
关键参数:
file_key:文件密钥include_local_styles:包含本地样式(默认 true)include_variables:包含 Figma 变量tokens:从提取结果中获得的完整令牌对象(用于转换为 Tailwind)
注意事项:
- 转换为 Tailwind 需要完整的令牌对象,包括 total_tokens 和 sources
- 传递给转换工具前,不要从提取响应中移除字段
4. 管理评论和版本
使用场景:用户想要查看或添加评论,或检查版本历史
工具顺序:
FIGMA_GET_COMMENTS_IN_A_FILE- 列出所有文件评论 [可选]FIGMA_ADD_A_COMMENT_TO_A_FILE- 添加评论 [可选]FIGMA_GET_REACTIONS_FOR_A_COMMENT- 获取评论回应 [可选]FIGMA_GET_VERSIONS_OF_A_FILE- 获取版本历史 [可选]
关键参数:
file_key:文件 keyas_md:以 Markdown 格式返回评论message:评论文本comment_id:用于回应的评论 ID
注意事项:
- 可以使用 client_meta 将评论定位到特定节点上
- 回复评论不能嵌套(只能有一层回复)
5. 浏览项目和团队
使用场景:用户想要列出团队项目或文件
工具顺序:
FIGMA_GET_PROJECTS_IN_A_TEAM- 列出团队项目 [可选]FIGMA_GET_FILES_IN_A_PROJECT- 列出项目文件 [可选]FIGMA_GET_TEAM_STYLES- 列出团队已发布的样式 [可选]
关键参数:
team_id:来自 URL 的团队 ID(figma.com/files/team/TEAM_ID/...)project_id:项目 ID
注意事项:
- 团队 ID 无法通过程序获取;需从 Figma URL 中提取
- 团队端点只返回已发布的样式/组件
常见模式
URL 解析
从 Figma URL 中提取 ID:
1. Call FIGMA_DISCOVER_FIGMA_RESOURCES with figma_url
2. Extract file_key, node_id, team_id from response
3. Convert dash-format node IDs (1-541) to colon format (1:541)
节点遍历
1. Call FIGMA_GET_FILE_JSON with depth=2 for overview
2. Identify target nodes from the response
3. Call again with specific ids and higher depth for details
已知注意事项
文件类型支持:
- GET_FILE_JSON 仅支持 Design 文件(figma.com/design/ 或 figma.com/file/)
- 不支持 FigJam 看板(figma.com/board/)和 Slides(figma.com/slides/)
节点 ID 格式:
- URL 使用短横线格式:
node-id=1-541 - API 使用冒号格式:
1:541
快速参考
| 任务 | 工具 Slug | 关键参数 |
|---|---|---|
| 解析 URL | FIGMA_DISCOVER_FIGMA_RESOURCES | figma_url |
| 获取文件 JSON | FIGMA_GET_FILE_JSON | file_key, ids, depth |
| 获取节点 | FIGMA_GET_FILE_NODES | file_key, ids |
| 渲染图像 | FIGMA_RENDER_IMAGES_OF_FILE_NODES | file_key, ids, format |
| 下载图像 | FIGMA_DOWNLOAD_FIGMA_IMAGES | file_key, images |
| 获取组件 | FIGMA_GET_COMPONENT | file_key, node_id |
| 文件组件 | FIGMA_GET_FILE_COMPONENTS | file_key |
| 组件集 | FIGMA_GET_FILE_COMPONENT_SETS | file_key |
| 设计 token | FIGMA_EXTRACT_DESIGN_TOKENS | file_key |
| Token 转 Tailwind | FIGMA_DESIGN_TOKENS_TO_TAILWIND | tokens |
| 文件评论 | FIGMA_GET_COMMENTS_IN_A_FILE | file_key |
| 添加评论 | FIGMA_ADD_A_COMMENT_TO_A_FILE | file_key, message |
| 文件版本 | FIGMA_GET_VERSIONS_OF_A_FILE | file_key |
| 团队项目 | FIGMA_GET_PROJECTS_IN_A_TEAM | team_id |
| 项目文件 | FIGMA_GET_FILES_IN_A_PROJECT | project_id |
| 团队样式 | FIGMA_GET_TEAM_STYLES | team_id |
| 文件样式 | FIGMA_GET_FILE_STYLES | file_key |
| 图像填充 | FIGMA_GET_IMAGE_FILLS | file_key |
使用时机
本技能适用于执行概述中描述的工作流或操作。
限制
- 仅当任务与上述范围明确匹配时才使用本技能。
- 不要将输出视为环境特定验证、测试或专家评审的替代品。
- 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。
评论
支持 Markdown