Figma MCP Bridge

88 tools. 75 can modify or destroy data without limits.

8 destructive tools with no built-in limits. Policy required.

Last updated:

75 can modify or destroy data
13 read-only
88 tools total

Community server · catalogue entry verified 11/06/2026

How to control Figma MCP Bridge ↓

What Figma MCP Bridge exposes to your agents

Read (13) Write / Execute (67) Destructive / Financial (8)
Critical Risk

The most dangerous Figma MCP Bridge tools

75 of Figma MCP Bridge's 88 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Figma MCP Bridge

PolicyLayer is an MCP gateway — it sits between your AI agents and Figma MCP Bridge, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "figma_delete_mode": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "figma_unbind_variable": {
    "limits": [
      {
        "counter": "figma_unbind_variable_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "figma_get_children": {
    "limits": [
      {
        "counter": "figma_get_children_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Figma MCP Bridge — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON FIGMA MCP BRIDGE →

Free to start. No card required.

All 88 Figma MCP Bridge tools

WRITE 67 tools
Write figma_unbind_variable Remove a variable binding from a node property. Write figma_add_mode Add a new mode to a variable collection. Write figma_add_reaction Prototype: add a reaction (interaction) to a node. A reaction pairs a trigger with an action. Existing reactio Write figma_apply_style Apply a local style to a node. Styles provide consistent, reusable design tokens. Write figma_clone_nodes Duplicate nodes. Write figma_combine_as_variants Combine multiple components into a component set with variants. Components must use variant naming (e.g., Write figma_create_code_block FigJam: create a syntax-highlighted code block for documentation. Code is a plain string property (no font loa Write figma_create_component Create a component. Write figma_create_connector FigJam: create a connector (arrow line) between two nodes for flowcharts and diagrams. Endpoints can attach to Write figma_create_ellipse Create ellipse. Use arcData for arcs/rings. Write figma_create_frame Create a frame. Write figma_create_instance Create a component instance. Write figma_create_line Create a line. Write figma_create_link_preview FigJam: create a rich link preview from a URL. Returns either an EMBED (iframe; works for OEmbed providers lik Write figma_create_page Create a new page in the document. Figma Design only — not available in FigJam. Calling this in a FigJam file Write figma_create_paint_style Create a paint style. Write figma_create_rectangle Create a rectangle. Write figma_create_section Create a labeled section. Sections work in BOTH Figma design files and FigJam — use them to group flowcharts, Write figma_create_shape_with_text FigJam: create a flowchart shape with embedded text (process box, decision diamond, database cylinder, etc.). Write figma_create_sticky FigJam: create a sticky note. Default size is fixed (240×240); width/height are not configurable. Text is set Write figma_create_table FigJam: create a table for documentation or structured data. Optionally seed initial cell content via the cell Write figma_create_text Create a text node. Write figma_create_text_style Create a text style. Write figma_create_variable Create a new variable in a collection. Write figma_create_variable_collection Create a new variable collection to organize variables. Write figma_detach_instance Detach a component instance, converting it to a regular frame. Preserves overrides but severs the link to the Write figma_duplicate_page Clone an entire page including all its contents. The new page is inserted after the original. Figma Design onl Write figma_group_nodes Group nodes. Write figma_insert_table_column FigJam: insert a column at the given index (existing columns at and after the index shift right). Write figma_insert_table_row FigJam: insert a row at the given index (existing rows at and after the index shift down). Write figma_move_nodes Move nodes. Use relative=true for offset. Write figma_move_table_column FigJam: move a column from one index to another. Write figma_move_table_row FigJam: move a row from one index to another. Write figma_move_to_page Move nodes from their current page to a different page. Write figma_rename_mode Rename a mode in a variable collection (e.g., Write figma_rename_node Rename one or more nodes. For batch renaming, all nodes get the same name. Write figma_rename_page Rename an existing page in the Figma document. Write figma_rename_variable Rename an existing variable. Use Write figma_rename_variable_collection Rename a variable collection. Write figma_reorder_node Change the z-order (layer order) of a node. Bring to front, send to back, or move to a specific index. Write figma_reparent_nodes Move nodes to a different parent container. Useful for reorganizing the layer hierarchy. Write figma_resize_nodes Resize one or more nodes. At least one dimension (width or height) must be provided. Write figma_resize_table_column FigJam: set the width of a table column. Write figma_resize_table_row FigJam: set the height of a table row. Write figma_set_auto_layout Configure auto-layout on a frame. Enables responsive layouts with automatic spacing and alignment. Write figma_set_code_block FigJam: update an existing code block\ Write figma_set_connector FigJam: modify an existing connector\ Write figma_set_constraints Set resize constraints on a node. Constraints control how a node resizes when its parent frame resizes. Only w Write figma_set_corner_radius Set corner radius. Use individual values for asymmetric. Write figma_set_current_page Switch to a different page in the Figma document. Write figma_set_effects Set effects. Replaces existing. Write figma_set_fills Set fill color. Accepts hex shorthand or fills array. Write figma_set_flow_starting_point Prototype: set a top-level frame as a prototype flow starting point on the current page, or clear it. Flow sta Write figma_set_layout_align Set how a child behaves within an auto-layout frame. Controls individual alignment (STRETCH), growth (fill con Write figma_set_opacity Set opacity (0-1). Write figma_set_rotation Set the rotation (in degrees) of one or more nodes. Rotation is around the center point. Write figma_set_section Update a section\ Write figma_set_selection Set selection. Empty array clears. Write figma_set_shape_type FigJam: change the shape type of an existing shape-with-text node (e.g., turn a ROUNDED_RECTANGLE into a DIAMO Write figma_set_sticky FigJam: toggle a sticky note between square (240×240) and wide-rectangle variants. Use figma_set_text to chang Write figma_set_strokes Set stroke color. Accepts hex shorthand or strokes array. Write figma_set_table_cell FigJam: set the text and/or fill color of a single table cell. Write figma_set_text Set text content. Auto-loads fonts. Write figma_set_text_style Set text font properties. Write figma_set_variable Set the value of an existing variable for a specific mode, or bind a variable to a node property. Write figma_swap_instance Swap a component instance to use a different component. Preserves position and size. Write figma_ungroup_nodes Ungroup nodes.
READ 13 tools
Read figma_get_children Get immediate children of a node. Use for browsing hierarchy one level at a time. More efficient than figma_ge Read figma_get_context Get the current Figma document context including file info, current page, and selection. Use this to understan Read figma_get_local_styles List all local styles defined in the document (colors, text, effects, grids). TIP: Use figma_search_styles ins Read figma_get_local_variables Get all local variables and variable collections from the Figma document. Returns variables with their types ( Read figma_get_nodes Get detailed information about specific Figma nodes by their IDs. Returns node properties including type, posi Read figma_get_reactions Prototype: get all reactions (interactions) on a node. Returns the full reactions array with trigger and actio Read figma_list_pages List all pages in the current Figma document. Returns page IDs, names, and indicates which page is currently a Read figma_search_components Search local components by name. Use when looking for specific components like Read figma_search_nodes Search for nodes by name within a scope. PREFERRED for finding specific frames, sections, or elements. Require Read figma_search_styles Search local styles by name. More efficient than figma_get_local_styles when looking for specific styles. Read figma_search_variables Search for variables by name pattern. More efficient than get_local_variables - use this when looking for spec Read figma_server_info Get information about the MCP server: package version, WebSocket port, connection state, and connected documen Read figma_export_node Export a node as an image (PNG, SVG, JPG, or PDF). Returns base64-encoded data.

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Figma MCP Bridge

Can an AI agent delete data through the Figma MCP Bridge MCP server? +

Yes. The Figma MCP Bridge server exposes 8 destructive tools including figma_delete_mode, figma_delete_nodes, figma_delete_page. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Figma MCP Bridge? +

The Figma MCP Bridge server has 67 write tools including figma_unbind_variable, figma_add_mode, figma_add_reaction. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Figma MCP Bridge.

How many tools does the Figma MCP Bridge MCP server expose? +

88 tools across 3 categories: Destructive, Read, Write. 13 are read-only. 75 can modify, create, or delete data.

How do I enforce a policy on Figma MCP Bridge? +

Register the Figma MCP Bridge MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Figma MCP Bridge tool call.

Deterministic rules across all 88 Figma MCP Bridge tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Free to start. No card required.

88 Figma MCP Bridge tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.