Something went wrong!
Hang in there while we get back on track
Figma API Integration
Access Figma files, components, images, and comments programmatically through the REST API
Requires Claude Code CLI
This skill integrates with Figma through Claude Code. Install Claude Code and add this skill to use it.
Available Actions
Get File Content
Retrieve the complete structure and content of a Figma file as JSON, including all nodes, metadata, and components
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
Returns
object Complete file data including document tree, components, styles, and metadata
Try saying...
- "Get the content of Figma file abc123"
- "Show me the structure of this Figma design"
- "Retrieve all layers from this file"
Get File Nodes
Retrieve specific nodes from a Figma file by their IDs
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
| node_ids | string | Required | Comma-separated list of node IDs to retrieve |
Returns
object Map of node IDs to their content
Try saying...
- "Get nodes 1:5 and 2:10 from this file"
- "Retrieve specific components by their node IDs"
- "Show me the details of these frames"
Export Images
Export images of specific nodes from a Figma file with customizable format and scale
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
| node_ids | string | Required | Comma-separated list of node IDs to export |
| format | string | Optional | Image format |
| scale | string | Optional | Export scale for raster formats |
Returns
object Map of node IDs to download URLs (URLs expire after 30 days)
Try saying...
- "Export node 1:5 as a PNG at 2x scale"
- "Get image URLs for these components"
- "Export this frame as SVG"
Get Image Fills
Get download URLs for all image fills used in a file
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
Returns
object Map of image references to download URLs
Try saying...
- "Get all image assets from this Figma file"
- "Download all images used in this design"
- "List all image fills in the file"
Get Comments
Retrieve all comments on a Figma file
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
Returns
array List of comments with author, message, and metadata
Try saying...
- "Show me all comments on this design"
- "Get feedback from this Figma file"
- "List all review comments"
Post Comment
Add a comment to a Figma file
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
| message | string | Required | The comment message text |
| client_meta | string | Optional | JSON string with position/node metadata for comment placement |
Returns
object The created comment object
Try saying...
- "Post a comment on this design"
- "Add feedback to this Figma file"
- "Leave a review comment"
Get Team Components
Retrieve published components from a team library
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| team_id | string | Required | The team ID from the Figma team URL |
Returns
object List of published components with metadata
Try saying...
- "List all components in our design system"
- "Get published components from the team library"
- "Show me available design system components"
Get Component Sets
Get component sets (variants) from a specific Figma file
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file_key | string | Required | The file key from the Figma file URL |
Returns
object Component sets with their variants
Try saying...
- "Show me all component sets in this file"
- "Get button variants from this design"
- "List all component variations"
Get Team Styles
Retrieve published styles from a team library
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| team_id | string | Required | The team ID from the Figma team URL |
Returns
object List of published styles (colors, text, effects, etc.)
Try saying...
- "Get all styles from our design system"
- "List published color styles"
- "Show me team typography styles"
Getting Started
- 1 Log in to Figma and click account menu (top-left)
- 2 Go to Settings > Security tab
- 3 Scroll to Personal access tokens section
- 4 Click Generate new token
- 5 Set expiration and select required scopes (file_content:read, etc.)
- 6 Click Generate token and copy it immediately
- 7 Add to shell config: echo 'export FIGMA_ACCESS_TOKEN="YOUR_TOKEN"' >> ~/.zshrc
- 8 Restart terminal or run: source ~/.zshrc
Verify Setup
[ -n "$FIGMA_ACCESS_TOKEN" ] && echo "Token configured" || echo "Token not found"
Success: Token configured
Security & Access
Access Scope
Personal access tokens grant access based on selected scopes. Common scopes: file_content:read (read files), file_comments:read/write (manage comments), file_dev_resources:read (dev mode resources). Full account access within granted scopes.
- Your personal access token grants full access to your Figma account within the selected scopes
- Never commit tokens to version control or share them publicly
- Tokens can be set to never expire - use with caution
- Use the minimum required scopes for your use case
- Tokens are shown only once during generation - store securely immediately
- Anyone with your token can access your Figma data within the granted scopes
Limitations
- Image export URLs expire after 30 days (14 days for image fills)
- Maximum image size is 32 megapixels (larger images are scaled down)
- OAuth access tokens expire after 90 days
- Rate limits vary significantly by plan and tier
Get This Skill
Requires Pro subscription ($9/month)
Quick Reference
- Type
- REST API
- Auth
- API Key
- Setup
- Easy Setup
- Tools Required
- Bash
- Python Dependencies
- requests>=2.28.0
Documentation
Have Feedback?
Help us improve this skill by sharing your ideas and suggestions.
Request Improvements