This skill helps you connect Figma design components to their corresponding code implementations using Figma's Code Connect feature. It analyzes the Figma design structure, searches your codebase for matching components, and establishes mappings that maintain design-code consistency.
Works with
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionfigma-code-connect-componentsExecute the skills CLI command in your project's root directory to begin installation:
Fetches figma-code-connect-components from figma/mcp-server-guide and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate figma-code-connect-components. Access via /figma-code-connect-components in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Create detailed user stories, acceptance criteria, and feature specs
Example
Generate user stories for 'password reset feature' with acceptance criteria, edge cases, and test scenarios
Reduce spec writing time by 50%, ensure comprehensive coverage
Research competitors, compare features, identify gaps
Example
Analyze 5 competitor products, create feature comparison matrix, suggest differentiation opportunities
Complete competitive research in 2 hours instead of 2 days
Evaluate features using frameworks (RICE, ICE, Kano) and create prioritized backlogs
Example
Score 20 feature ideas using RICE framework, generate prioritized roadmap with rationale
0
total installs
0
this week
1.0K
GitHub stars
0
upvotes
Run in your terminal
0
installs
0
this week
1.0K
stars
This skill helps you connect Figma design components to their corresponding code implementations using Figma's Code Connect feature. It analyzes the Figma design structure, searches your codebase for matching components, and establishes mappings that maintain design-code consistency.
get_code_connect_suggestions + send_code_connect_mappings workflows.https://figma.com/design/:fileKey/:fileName?node-id=1-2
node-id parameter. Code Connect mapping will fail without it.figma-desktop MCP: User can select a node directly in the Figma desktop app (no URL required)Follow these steps in order. Do not skip steps.
Call get_code_connect_suggestions to identify all unmapped components in a single operation. This tool automatically:
figma-desktop MCP (no URL provided)If the figma-desktop MCP server is connected and the user has NOT provided a Figma URL, immediately call get_code_connect_suggestions. No URL parsing is needed — the desktop MCP server automatically uses the currently selected node from the open Figma file.
Note: The user must have the Figma desktop app open with a node selected. fileKey is not passed as a parameter — the server uses the currently open file.
Parse the URL to extract fileKey and nodeId, then call get_code_connect_suggestions.
IMPORTANT: When extracting the node ID from a Figma URL, convert the format:
node-id=1-2nodeId=1:2Parse the Figma URL:
https://figma.com/design/:fileKey/:fileName?node-id=1-2:fileKey (segment after /design/)1-2 from URL, then convert to 1:2 for the toolget_code_connect_suggestions(fileKey=":fileKey", nodeId="1:2")
Handle the response:
For each unmapped component returned by get_code_connect_suggestions, search the codebase for a matching code component.
What to look for:
src/components/, components/, ui/, etc.)Search strategy:
Example search patterns:
Button.tsx, PrimaryButton.tsx, Button.jsxsrc/components/, app/components/, lib/ui/variant, size, color that match Figma variantsPresent your findings and let the user choose which mappings to create. The user can accept all, some, or none of the suggested mappings.
Present matches in this format:
The following components match the design:
- [ComponentName](path/to/component): DesignComponentName at nodeId [nodeId](figmaUrl?node-id=X-Y)
- [AnotherComponent](path/to/another): AnotherDesign at nodeId [nodeId2](figmaUrl?node-id=X-Y)
Would you like to connect these components? You can accept all, select specific ones, or skip.
If no exact match is found for a component:
If the user declines all mappings, inform them and stop. No further tool calls are needed.
Once the user confirms their selections, call send_code_connect_mappings with only the accepted mappings. This tool handles batch creation of all mappings in a single call.
Example:
send_code_connect_mappings(
fileKey=":fileKey",
nodeId="1:2",
mappings=[
{ nodeId: "1:2", componentName: "Button", source: "src/components/Button.tsx", label: "React" },
{ nodeId: "1:5", componentName: "Card", source: "src/components/Card.tsx", label: "React" }
]
)
Key parameters for each mapping:
nodeId: The Figma node ID (with colon format: 1:2)componentName: Name of the component to connect (e.g., "Button", "Card")source: Path to the code component file (relative to project root)label: The framework or language label for this Code Connect mapping. Valid values include:
After the call:
Provide a summary after processing:
Code Connect Summary:
- Successfully connected: 3
- Button (1:2) → src/components/Button.tsx
- Card (1:5) → src/components/Card.tsx
- Input (1:8) → src/components/Input.tsx
- Could not connect: 1
- CustomWidget (1:10) - No matching component found in codebase
User says: "Connect this Figma button to my code: https://figma.com/design/kL9xQn2VwM8pYrTb4ZcHjF/DesignSystem?node-id=42-15"
Actions:
Parse URL: fileKey=kL9xQn2VwM8pYrTb4ZcHjF, nodeId=42-15 → convert to 42:15
Run get_code_connect_suggestions(fileKey="kL9xQn2VwM8pYrTb4ZcHjF", nodeId="42:15")
Response shows: Button component (unmapped) with variant (primary/secondary) and size (sm/md/lg) properties, plus a thumbnail image
Search codebase for Button components: Find src/components/Button.tsx
Read Button.tsx and confirm it has variant and size props
Present to user:
I found a match:
- [Button](src/components/Button.tsx): Button at nodeId [42:15](https://figma.com/design/kL9xQn2VwM8pYrTb4ZcHjF/DesignSystem?node-id=42-15)
Would you like to connect this component?
User confirms: "Yes"
Detect that it's a TypeScript React component
Run send_code_connect_mappings(fileKey="kL9xQn2VwM8pYrTb4ZcHjF", nodeId="42:15", mappings=[{ nodeId: "42:15", componentName: "Button", source: "src/components/Button.tsx", label: "React" }])
Result: Figma button component is now connected to the code Button component.
User says: "Connect components in this frame: https://figma.com/design/pR8mNv5KqXzGwY2JtCfL4D/Components?node-id=10-50"
Actions:
Parse URL: fileKey=pR8mNv5KqXzGwY2JtCfL4D, nodeId=10-50 → convert to 10:50
Run get_code_connect_suggestions(fileKey="pR8mNv5KqXzGwY2JtCfL4D", nodeId="10:50")
Response shows 3 unmapped components: ProductCard, Badge, and CustomWidget
Search codebase:
src/components/ProductCard.tsx (props match)src/components/Badge.tsx (props match)Present to user:
The following components match the design:
- [ProductCard](src/components/ProductCard.tsx): ProductCard at nodeId [10:51](https://figma.com/design/pR8mNv5KqXzGwY2JtCfL4D/Components?node-id=10-51)
- [Badge](src/components/Badge.tsx): Badge at nodeId [10:52](https://figma.com/design/pR8mNv5KqXzGwY2JtCfL4D/Components?node-id=10-52)
I couldn't find a match for CustomWidget (10:53).
Would you like to connect these components? You can accept all, select specific ones, or skip.
User: "Just connect ProductCard, skip Badge for now"
Run send_code_connect_mappings(fileKey="pR8mNv5KqXzGwY2JtCfL4D", nodeId="10:50", mappings=[{ nodeId: "10:51", componentName: "ProductCard", source: "src/components/ProductCard.tsx", label: "React" }])
Result: Only ProductCard is connected, per the user's selection.
User says: "Connect this icon: https://figma.com/design/8yJDMeWDyBz71EnMOSuUiw/Icons?node-id=5-20"
Actions:
8yJDMeWDyBz71EnMOSuUiw, nodeId=5-20 → convert to 5:20get_code_connect_suggestions(fileKey="8yJDMeWDyBz71EnMOSuUiw", nodeId="5:20")src/icons/ directory with other iconssend_code_connect_mappings(fileKey="8yJDMeWDyBz71EnMOSuUiw", nodeId="5:20", mappings=[{ nodeId: "5:20", componentName: "CheckIcon", source: "src/icons/CheckIcon.tsx", label: "React" }])Result: CheckIcon component is successfully connected to the Figma design.
Don't just ask the user for the file path — actively search their codebase to find matching components. This provides a better experience and catches potential mapping opportunities.
When comparing Figma components to code components, look beyond just names. Check that:
When offering to create a mapping, clearly explain:
If multiple components could match, present options rather than guessing. Let the user make the final decision about which component to connect.
If you can't find an exact match, provide helpful next steps:
Cause: The Figma component is not published to a team library. Code Connect only works with published components. Solution: The user needs to publish the component to a team library in Figma:
Cause: The user's Figma plan does not include Code Connect access. Solution: The user needs to upgrade to an Organization or Enterprise plan, or contact their administrator.
Cause: The codebase search did not find a component with a matching name or structure. Solution: Ask the user if the component exists under a different name or in a different location. They may need to create the component first, or it might be located in an unexpected directory.
Cause: The source file path is incorrect, the component doesn't exist at that location, or the componentName doesn't match the actual export. Solution: Verify the source path is correct and relative to the project root. Check that the component is properly exported from the file with the exact componentName specified.
Cause: A Code Connect mapping already exists for this component. Solution: The component is already connected. If the user wants to update the mapping, they may need to remove the existing one first in Figma.
Cause: The user does not have edit permissions on the Figma file or library. Solution: The user needs edit access to the file containing the component. Contact the file owner or team admin.
Cause: The Figma URL format is incorrect or missing the node-id parameter.
Solution: Verify the URL follows the required format: https://figma.com/design/:fileKey/:fileName?node-id=1-2. The node-id parameter is required. Also ensure you convert 1-2 to 1:2 when calling tools.
Cause: The codebase contains multiple components that could match the Figma component.
Solution: Present all candidates to the user with their file paths and let them choose which one to connect. Different components might be used in different contexts (e.g., Button.tsx vs LinkButton.tsx).
Code Connect establishes a bidirectional link between design and code:
For designers: See which code component implements a Figma component For developers: Navigate from Figma designs directly to the code that implements them For teams: Maintain a single source of truth for component mappings
The mapping you create helps keep design and code in sync by making these connections explicit and discoverable.
For more information about Code Connect:
Make data-driven prioritization decisions faster
Draft PRDs, status updates, and stakeholder presentations
Example
Create executive summary of Q3 roadmap, monthly progress report, feature launch announcement
Save 3-5 hours/week on communication overhead
Prerequisites
Time Estimate
30-60 minutes to see productivity improvements
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.
✗ Avoid when
Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.
asyrafhussin/agent-skills
shadcn/improve
mattpocock/skills
parcadei/continuous-claude-v3
cursor/plugins
ailabs-393/ai-labs-claude-skills
Registry listing for figma-code-connect-components matched our evaluation — installs cleanly and behaves as described in the markdown.
Solid pick for teams standardizing on skills: figma-code-connect-components is focused, and the summary matches what you get after install.
figma-code-connect-components has been reliable in day-to-day use. Documentation quality is above average for community skills.
figma-code-connect-components is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
figma-code-connect-components fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
I recommend figma-code-connect-components for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
figma-code-connect-components reduced setup friction for our internal harness; good balance of opinion and flexibility.
We added figma-code-connect-components from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
figma-code-connect-components reduced setup friction for our internal harness; good balance of opinion and flexibility.
Useful defaults in figma-code-connect-components — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
showing 1-10 of 59