Skip to main content
Glama
README.md
# Figma MCP Python

[![PyPI version](https://badge.fury.io/py/figma-mcp.svg)](https://badge.fury.io/py/figma-mcp)

Allow your AI coding agents to access Figma files & prototypes directly.
You can DM me for any issues / improvements: https://x.com/jasonzhou1993

<a href="https://glama.ai/mcp/servers/pqweyr4aq9">
  <img width="380" height="200" src="https://glama.ai/mcp/servers/pqweyr4aq9/badge" alt="figma-mcp MCP server" />
</a>

## Quick Installation with pipx

```bash
pipx install figma-mcp
```

### For Cursor:

1. In settings, add an MCP server using the command:
```shell
figma-mcp --figma-api-key=your_figma_key
```

2. OR Add a `.cursor/mcp.json` file in your project:

```json
{
  "mcpServers": {
    "figma-python": {
      "command": "figma-mcp",
      "args": [
        "--figma-api-key=your_figma_key"
      ]
    } 
  }
}
```


### For other IDEs like Windsurf, use an MCP configuration file (e.g., `mcp_config.json`):

```json
{
  "mcpServers": {
    "figma-python": {
      "command": "figma-mcp",
      "args": [
        "--figma-api-key=your_figma_key"
      ]
    } 
  }
}
```


## Install uv and set up the environment
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
uv venv
source .venv/bin/activate
uv sync
```

## Test locally
```bash
python -m figma_mcp.main
```

TDQS

A4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct Figma element: components, nodes, and workflows. There is no overlap in their purposes, making it easy for an agent to select the correct tool.

Naming Consistency5/5

All tools follow a consistent 'get_' + singular noun pattern (get_components, get_node, get_workflow), which is predictable and easy to follow.

Tool Count5/5

With 3 tools, the server is tightly scoped for retrieving key Figma file elements. This number is appropriate for a focused MCP server without being too sparse or excessive.

Completeness4/5

The tools cover retrieval of components, nodes, and workflows, which are important aspects of a Figma file. However, it lacks tools for pages or styles, which are common use cases, so minor gaps exist.

Maintenance

ActivityInactive
ResponsivenessNo issues