
figma-context-mcp
Expert guide for using the Figma Context MCP (Framelink) efficiently while avoiding 429 rate-limit errors. Activate when: (1) using Framelink Figma MCP tools (getfigmadata, downloadfigmaimages), (2) fetching Figma designs for code generation, (3) user hits 429 rate limits from Figma API, (4) extracting design tokens or component data from Figma, (5) downloading Figma assets/images, (6) any design-to-code workflow involving Figma URLs. Covers metadata-first fetching, depth-limited node trees, batch image downloads, rate-limit diagnostics, and plan-tier awareness.
- Installs
- 41
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/vladmdgolam/agent-skills --skill figma-context-mcp- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads figma-context-mcp automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Figma Context MCP
Expert guide for the Figma Context MCP (also known as Framelink). Teaches efficient API usage patterns that prevent 429 rate-limit lockouts.
Tools
| Tool | Purpose | API Tier |
|---|---|---|
get_figma_data | Fetch file/node structure, layout, components | Tier 1 (most restricted) |
download_figma_images | Export PNG/SVG renders of specific nodes | Tier 2-3 |
Critical: Rate Limits
Figma enforces per-plan rate limits. Limits apply based on the file owner's plan, not yours:
| Tier | Starter | Pro | Org |
|---|---|---|---|
| Tier 1 (files) | 10/min | 15/min | 20/min |
| Tier 2 (images) | 25/min | 50/min | 100/min |
| Tier 3 | 50/min | 100/min | 150/min |
View/Collab seats get only 6 Tier-1 calls/month. If accessing files owned by someone on a Starter/free plan, their limits apply to you.
429 lockouts can last 4-5 days. Prevention is essential.
Workflow: Metadata-First Pipeline
Never fetch everything upfront. Adopt this pipeline to keep most jobs under 2-3 API calls and <500 KB:
1. Start with a targeted node, not the whole file
When a user provides a Figma URL like figma.com/design/FILEKEY/Name?node-id=123-456, always extract and pass the nodeId. Never fetch the entire file when a specific node is available.
get_figma_data(fileKey="ABC123", nodeId="123-456", depth=2)
2. Use minimal depth
Always set depth to limit tree traversal:
- depth=1: Top-level frame only (layout structure, component names)
- depth=2: Frame + direct children (usually sufficient for code generation)
- depth=3: Maximum recommended — only when nested auto-layouts require it
Default if omitted: the API returns the ENTIRE subtree — often megabytes for complex frames with 50-200+ children. This is the #1 cause of 429 errors.
3. Analyze locally before fetching more
After receiving the initial response:
- Identify which child nodes actually need detail (skip hidden, decorative, or library-referenced nodes)
- Extract design tokens (colors, spacing, typography) directly from the response — no extra calls needed
- Build your component structure from what you already have
4. Fetch deeper nodes only if necessary
If a specific child node needs more detail, fetch just that node:
get_figma_data(fileKey="ABC123", nodeId="child-node-id", depth=1)
5. Download images last, in small batches
Only request images for the final deduplicated set of visual assets you actually need:
- Deduplicate by
imageRef— multiple nodes can reference the same fill image - Batch into groups of 5-10 nodes per call
- Use
pngScale=1unless the user specifically needs @2x/@3x assets
download_figma_images(
fileKey="ABC123",
nodes=[{nodeId: "1:2", fileName: "hero", ...}], # max 5-10 per call
localPath="./assets",
pngScale=1
)
When You Hit a 429
See references/rate-limit-recovery.md for diagnostics and recovery steps.
Quick checklist:
- Stop all Figma API calls immediately — additional calls extend the lockout
- Check if the file is owned by a Starter/free-plan user (limits are per-owner)
- If the user has a Pro/Org plan, suggest duplicating the file into their own workspace
- Wait for
Retry-Afterheader duration before retrying - When retrying, use the minimal-depth pipeline above
Common Patterns
Design-to-code (single component)
get_figma_datawith specificnodeId+depth=2(1 call)- Generate code from response — no image calls unless the component contains raster assets
- If images needed:
download_figma_imagesfor just the raster fills (1 call) - Total: 1-2 API calls
Design-to-code (full page)
get_figma_datawith pagenodeId+depth=1to get frame list (1 call)- Identify the 2-3 key frames that matter
get_figma_datafor each key frame withdepth=2(2-3 calls)- Extract tokens locally, download only unique raster assets (1 call)
- Total: 4-5 API calls
Extract design tokens only
get_figma_datawithnodeId+depth=2(1 call)- Parse colors, typography, spacing from the response — no image calls needed
- Total: 1 API call
Anti-Patterns
| Pattern | Problem | Fix |
|---|---|---|
Omitting depth | Returns entire subtree (MB of data) | Always set depth=2 or less |
Omitting nodeId | Fetches entire file | Always extract nodeId from URL |
| Downloading all images upfront | Bursts of image requests hit Tier 2 limits | Download only final deduplicated set |
| Retrying on 429 | Extends lockout duration | Stop, wait for Retry-After, then resume with minimal calls |
| Fetching library components | Remote library nodes trigger extra API calls | Use local component data from initial response |
FAQ
What does the figma-context-mcp skill do?
Expert guide for using the Figma Context MCP (Framelink) efficiently while avoiding 429 rate-limit errors. Activate when: (1) using Framelink Figma MCP tools (getfigmadata, downloadfigmaimages), (2) fetching Figma designs for code generation, (3) user hits 429 rate limits from Figma API, (4) extracting design tokens or component data from Figma, (5) downloading Figma assets/images, (6) any design-to-code workflow involving Figma URLs. Covers metadata-first fetching, depth-limited node trees, batch image downloads, rate-limit diagnostics, and plan-tier awareness.
How do I install figma-context-mcp?
Run npx skills add https://github.com/vladmdgolam/agent-skills --skill figma-context-mcp in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/figma-context-mcp/ (personal) or .claude/skills/figma-context-mcp/ (project).
Which AI agents can use figma-context-mcp?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is figma-context-mcp safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains figma-context-mcp?
It is published by vladmdgolam in vladmdgolam/agent-skills. It has 41 recorded installs.
More from vladmdgolam/agent-skills
blender-mcp
vladmdgolam/agent-skills
Blender MCP expert for scene inspection, Python scripting, GLTF export, and material/animation extraction. Activate when: (1) using Blender MCP tools (getsceneinfo, executepython, screenshot, etc.), (2) writing Blender Python scripts for extraction or manipulation, (3) exporting scenes to GLTF/GLB for web (Three.js, R3F), (4) debugging material or texture export losses, (5) optimizing GLB files with gltf-transform, (6) using asset integrations (PolyHaven, Sketchfab, Hyper3D Rodin, Hunyuan3D). Covers critical export gotchas, material mapping survival, texture optimization pipeline, headless CLI patterns, and known failure modes.
cinema4d-mcp
vladmdgolam/agent-skills
Open the skill to read its SKILL.md instructions.
visual-feedback-loop
vladmdgolam/agent-skills
Open the skill to read its SKILL.md instructions.
pdf-look-scanned
vladmdgolam/agent-skills
Open the skill to read its SKILL.md instructions.
time-lens
vladmdgolam/agent-skills
Open the skill to read its SKILL.md instructions.
reverse-engineer-js
vladmdgolam/agent-skills
Reverse-engineer minified or obfuscated JavaScript bundles. Primary tool: humanify (humanifyjs) — uses an LLM to rename mangled identifiers back to meaningful names. Default model: gemini-3.8-flash. Use when the user says 'deobfuscate this bundle', 'humanify this', 'rename minified vars', 'reverse engineer this JS', 'what does bundle.js do', or is working in a project with a deobfuscated og/ or modules/ folder fed by humanify. Covers humanify CLI invocation, the pseudo-TTY workaround for cursorTo crashes, single-module extraction from a bundle, and chaining with beautifiers.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.