Skip to main content
Glama

mcp-figma

A Model Context Protocol (MCP) server for Figma API integration, designed to be used with Claude and other MCP-compatible AI assistants.

npm version

Features

This MCP server provides access to Figma API functionality:

  • File operations (get file, get nodes, get images)

  • Comments management

  • Team/project management

  • Components and styles access

  • Persistent API key storage

Related MCP server: Figma MCP Server

Installation

NPM Installation

# Install globally
npm install -g mcp-figma

# Or install locally in a project
npm install mcp-figma

# Update to latest version
npm update -g mcp-figma

Usage with Claude

  1. Add mcp-figma to your Claude configuration:

"mcp-figma": {
  "command": "npx",
  "args": [
    "-y",
    "mcp-figma"
  ]
}
  1. When using Claude, the first time you'll need to set your Figma API key:

Please use mcp-figma to set my Figma API key: figd_xxxxxxxxxxxxxxxxxxxxxxx

Your API key will be stored in ~/.mcp-figma/config.json and will be automatically loaded in future sessions.

  1. You can verify your API key is configured:

Please use mcp-figma to check my API key status
  1. Then use any of the available Figma API functions:

Please use mcp-figma to get the file with key abc123

Available Tools

The server provides the following tools:

  • set_api_key: Set your Figma API personal access token (saved to config)

  • check_api_key: Check if an API key is already configured

  • get_file: Get a Figma file by key

  • get_file_nodes: Get specific nodes from a Figma file

  • get_image: Get images for nodes in a Figma file

  • get_image_fills: Get URLs for images used in a Figma file

  • get_comments: Get comments on a Figma file

  • post_comment: Post a comment on a Figma file

  • delete_comment: Delete a comment from a Figma file

  • get_team_projects: Get projects for a team

  • get_project_files: Get files for a project

  • get_team_components: Get components for a team

  • get_file_components: Get components from a file

  • get_component: Get a component by key

  • get_team_component_sets: Get component sets for a team

  • get_team_styles: Get styles for a team

  • get_file_styles: Get styles from a file

  • get_style: Get a style by key

For detailed usage examples, see USAGE.md.

License

MIT

Available Tools

18 tools
check_api_keyA

Check if a Figma API key is already configured

Inputs: no named parameters.

delete_commentC

Delete a comment from a Figma file

Inputs: fileKey (required), comment_id (required).

get_commentsC

Get comments on a Figma file

Inputs: fileKey (required).

get_componentC

Get a component by key

Inputs: key (required).

get_fileC

Get a Figma file by key

Inputs: fileKey (required), version, depth, branch_data.

get_file_componentsC

Get components from a file

Inputs: fileKey (required).

get_file_nodesC

Get specific nodes from a Figma file

Inputs: fileKey (required), node_ids (required), depth, version.

get_file_stylesC

Get styles from a file

Inputs: fileKey (required).

get_imageC

Get images for nodes in a Figma file

Inputs: fileKey (required), ids (required), scale, format, +3 more.

get_image_fillsC

Get URLs for images used in a Figma file

Inputs: fileKey (required).

get_project_filesC

Get files for a project

Inputs: project_id (required), page_size, cursor, branch_data.

get_styleC

Get a style by key

Inputs: key (required).

get_team_componentsC

Get components for a team

Inputs: team_id (required), page_size, cursor.

get_team_component_setsC

Get component sets for a team

Inputs: team_id (required), page_size, cursor.

get_team_projectsC

Get projects for a team

Inputs: team_id (required), page_size, cursor.

get_team_stylesC

Get styles for a team

Inputs: team_id (required), page_size, cursor.

post_commentC

Post a comment on a Figma file

Inputs: fileKey (required), message (required), client_meta, comment_id.

set_api_keyA

Set your Figma API personal access token (will be saved to ~/.mcp-figma/config.json)

Inputs: api_key (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 18 tools

    Disambiguation4/5

    Most tools have distinct purposes targeting specific Figma resources like files, comments, components, styles, and images. However, get_file_nodes and get_image_fills could potentially overlap in purpose since both deal with retrieving node-related data, though their descriptions clarify different focuses (nodes vs. image fills).

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case, with clear actions like get, post, delete, set, and check. This uniformity makes the toolset predictable and easy for an agent to navigate without confusion.

    Tool Count4/5

    With 18 tools, the count is slightly high but reasonable for a Figma API server that needs to cover multiple resource types (files, comments, components, styles, images, projects, teams). It avoids being overwhelming while providing comprehensive functionality, though it could be trimmed slightly for tighter scoping.

    Completeness5/5

    The toolset offers complete coverage for core Figma operations, including CRUD for comments (get, post, delete), retrieval for files, components, styles, images, projects, and teams, and configuration for API keys. There are no obvious gaps, and agents can perform typical workflows without dead ends.

    Related MCP Connectors

    Related MCP Servers