Figma Mcp Go

design MCP Server

Figma MCP for free users — no rate limits, full read/write, text to designs, designs to code

VerifiedInstall Ready
designdesign
20 views1,115 stars168 forksMIT

Why This Matters

Discovered via list:awesome-mcp-servers-punkpeye and last synced 3mo ago.

VerifiedInstall Ready
Source
list:awesome-mcp-servers-punkpeye
Stars
1,115
Last synced
3mo ago
Install
Instructions detected

Install

1. Install the package

npx -y @vkhanhqui/figma-mcp-go

2. Add to claude_desktop_config.json

{
  "mcpServers": {
    "figma-mcp-go": {
      "command": "npx",
      "args": [
        "figma-mcp-go"
      ]
    }
  }
}

Config file location: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) / %APPDATA%\Claude\claude_desktop_config.json (Windows)

83
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (83)

Plan

Limit

import_image

Decode base64 image and place it as a rectangle fill

set_opacity

Set opacity of one or more nodes (0 = transparent, 1 = opaque)

reorder_nodes

Change z-order: `bringToFront`, `sendToBack`, `bringForward`, `sendBackward`

reparent_nodes

Move nodes to a different parent frame, group, or section

remove_reactions

Remove all or specific reactions by zero-based index from a node

update_paint_style

Rename or recolor an existing paint style

set_variable_value

Set a variable's value for a specific mode

get_document

Full current page tree

search_nodes

Find nodes by name substring and/or type within a subtree

get_local_components

All components + component sets with variant properties

create_text

Create a text node (font loaded automatically)

set_strokes

Set solid stroke color and weight on a node

rotate_nodes

Set absolute rotation in degrees on one or more nodes

clone_node

Clone a node, optionally repositioning or reparenting

create_grid_style

Create a named layout grid style (columns, rows, or grid)

create_variable

Create a variable (COLOR/FLOAT/STRING/BOOLEAN) in a collection

rename_page

Rename a page by ID or current name

get_design_context

Depth-limited tree with `detail` level (`minimal`/`compact`/`full`)

get_variable_defs

Variable collections and values

save_screenshots

Export images to disk (server-side, no API call)

annotation_conversion_strategy

Convert manual annotations to native Figma annotations

Enterprise

600 tool calls/day

create_component

Convert an existing FRAME node into a reusable component

set_corner_radius

Set corner radius — uniform or per-corner

set_blend_mode

Set blend mode (MULTIPLY, SCREEN, OVERLAY, …) on one or more nodes

batch_rename_nodes

Bulk rename nodes via find/replace, regex, or prefix/suffix

apply_style_to_node

Apply an existing local style to a node, linking it to that style

bind_variable_to_node

Bind a variable to a node property — supports `fillColor`, `strokeColor`, `visible`, `opacity`, `rotation`, `width`, `height`, corner radii, spacing, and more

navigate_to_page

Switch the active Figma page by ID or name

get_metadata

File name, pages, current page

scan_text_nodes

All text nodes in a subtree

get_annotations

Dev-mode annotations

export_tokens

Export design tokens (variables + paint styles) as JSON or CSS

reaction_to_connector_strategy

Map prototype reactions into interaction flow diagrams

create_frame

Create a frame with optional auto-layout, fill, and parent

set_visible

Show or hide one or more nodes

create_ellipse

Create an ellipse or circle

set_fills

Set solid fill color (hex) on a node

set_auto_layout

Set or update auto-layout (flex) properties on a frame

set_constraints

Set responsive constraints `{ horizontal, vertical }` on one or more nodes

find_replace_text

Find and replace text across all TEXT nodes in a subtree or page; supports regex

Tool

Description

create_section

Create a Figma Section node to organise frames on a page

set_effects

Apply drop shadow / blur effects directly on a node (no style required)

delete_style

Delete any style (paint, text, effect, or grid) by ID

delete_variable

Delete a variable or an entire collection

group_nodes

Group two or more nodes into a GROUP

get_pages

All pages (IDs + names) — lightweight, no tree loading

scan_nodes_by_types

Nodes matching given type list

get_fonts

All fonts used on the current page, sorted by frequency

Prompt

Description

set_text

Update text content of an existing TEXT node

lock_nodes

Lock one or more nodes to prevent accidental edits

resize_nodes

Resize nodes by width and/or height

delete_nodes

Delete one or more nodes permanently

create_text_style

Create a named text style with font, size, and spacing

unlock_nodes

Unlock one or more nodes

rename_node

Rename a node

create_effect_style

Create a named effect style (drop shadow, inner shadow, blur)

add_variable_mode

Add a new mode to an existing collection (e.g. Light/Dark)

delete_page

Delete a page by ID or name (cannot delete the only page)

detach_instance

Detach component instances, converting them to plain frames

get_nodes_info

Multiple nodes by ID

get_styles

Paint, text, effect, and grid styles

get_screenshot

Base64 image export of any node

move_nodes

Move nodes to an absolute x/y position

create_paint_style

Create a named paint style with a solid color

ungroup_nodes

Ungroup GROUP nodes, moving children to the parent

get_selection

Currently selected nodes

get_viewport

Current viewport center, zoom, and visible bounds

get_reactions

Prototype/interaction reactions on a node

read_design_strategy

Best practices for reading Figma designs

create_variable_collection

Create a new local variable collection with an optional initial mode

add_page

Add a new page to the document (optional name and index)

swap_component

Swap the main component of an INSTANCE node

get_node

Single node by ID

design_strategy

Best practices for creating and modifying designs

export_frames_to_pdf

Export multiple frames as a single multi-page PDF file saved to disk

swap_overrides_instances

Transfer overrides between component instances

text_replacement_strategy

Chunked approach for replacing text across a design

set_reactions

Set prototype reactions (triggers + actions) on a node; mode `replace` or `append`

create_rectangle

Create a rectangle with optional fill and corner radius