用途:从 Figma 文件提取结构化、可溯源的设计数据,供设计系统搭建、冲突解决与下游代码生成使用。每个提取值都带来源标记,以便下游判断令牌来自显式 Figma Variable 还是从已应用样式推断,从而决定冲突解决优先级。
流程为 CHECK → PARSE → DISCOVER → EXTRACT → ORGANIZE。第一步用 whoami() 验证 Figma MCP 连接,失败则警告并跳过全部 Figma 步骤。第二步从 URL 解析 fileKey 与 nodeId,支持 /design/、/file/、/proto/ 格式,node-id 中的短横线需转冒号(1-2 → 1:2);FigJam(/board/)与 Slides(/slides/)不支持,需跳过;无 URL 但 MCP 已连接时仍可提取变量。第三步用 get_metadata 获取页面与顶层框架,建立 SCREENS 清单并将名称规范化为 kebab-case 的 slug;大文件按页分批获取并记录跳过的嵌套组件。第四步三种独立提取:get_variable_defs 取变量定义(主令牌源,标记 figma-variables);变量为空时用 get_design_context 从应用样式推断(标记 figma-context),并提取组件信息;get_screenshot 为每个屏幕截图作视觉参考,调用方指定保存路径。第五步合并去重,同令牌时 figma-variables 优先,输出统一令牌表、组件列表、屏幕索引与提取摘要。
适用场景:设计搭建全量提取、令牌比对验证、屏幕目录编目。限制:依赖 Figma MCP 连接与文件权限,截图超时或结果截断需缩小范围重试;提取属增强而非必需,全部失败时流程可继续但信息减少。