用途:将 Figma 设计中的动画与过渡转换为用户代码库中可运行的动画代码,输出可为 motion.dev、CSS @keyframes 或框架相关动画库。若用户是要在 Figma 内部创建或编辑动画,则应改用 figma-use 技能。
主要能力:通过 get_motion_context 获取权威动画数据,包括动画节点清单、预生成的 CSS @keyframes 与 motion.dev 代码片段、代码片段缺失时的回退关键帧绑定,以及多节点共享时间轴的 timelineCohorts;通过 get_design_context 获取布局、尺寸、资源、样式、Code Connect 提示、截图上下文以及动画元素上的放置标记(data-node-id、data-motion-keys、data-motion-wrapper-for、data-motion-transform-template)。两者通过 node id 关联,将动画合并进对应结构,必要时把普通元素包装或转换为 motion.{tag}。
必要用法:需先连接并可用 Figma MCP 服务器;从 Figma URL 解析 fileKey 与 nodeId,URL 形如 https://figma.com/design/:fileKey/:fileName?node-id=1-2。调用 get_design_context(fileKey=":fileKey", nodeId="<node-id>") 获取静态结构,再调用 get_motion_context(fileKey=":fileKey", nodeId="<node-id>", recursive=true) 获取动画数据(recursive 上限 500 个节点)。按 get_motion_context.nodes 逐个用精确 nodeId 匹配设计上下文,匹配失败后再尝试 fallbackNodeId;为节点添加或包装动画元素。若有代码片段则直接使用,不根据回退数据重新生成;仅有 keyframeBindings 时结合 motionSummary 构建等价实现。React 目标默认从 motion/react 导入,若代码库已使用 Framer Motion、React Spring、GSAP 等则需适配。
适用场景与限制:适用于交付物为仓库内动画代码的场景。当前覆盖 get_motion_context 输出的动画(代码片段加回退关键帧轨道,含预设动画解析后的形式);更复杂的交互式变体流程可能仍需产品侧自行处理状态。需遵守 prefers-reduced-motion,注意每个元素的 transformOrigin、拆分节点的嵌套结构与静态基础变换偏移、display: contents 包装处理、SVG 路径级动画需内联 SVG 等细节;建议先端到端验证单个动画再批量应用。资料未提供具体收费、价格与更多平台支持信息。