Verified conversions across 205 color spaces: CSS strings, gamut checks, .cube LUTs
Figmind is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Connect Cursor AI to Figma via MCP (Model Context Protocol) — read and modify designs in real time
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user figmind-mcp '--' npx -y figmind
# 2 — ask your agent for something these tools do
# create_from_html, create_frame, create_text and 52 more
Figmind costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. This one runs on your machine: your client starts Figmind as a process under your own user, with your files and your network, so the tool surface below is what it can do to your computer rather than to a server somewhere else. Its scan result is on the Security tab — read the surface before you approve it.
This is a public server: you run it yourself and this marketplace is not in the path. You need Node.js — the current LTS (24) is the safe choice; npx comes with it. Claude Code registers it in one command; --scope user makes it available in every project. The '--' is in quotes so that PowerShell passes it on.
claude mcp add --scope user figmind-mcp '--' npx -y figmindReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry your client uses to start the process locally. A local server runs with your file system and your network, which is why it is priced without metering.
55 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
No parameter schema on file.
Create a new frame in the Figma canvas. Prefer create_from_html for complex nested layouts. Use this for simple containers or when you need precise control.
No parameter schema on file.
Create a text node in the Figma canvas. Use get_used_fonts first to know which fonts are available in the file — prefer those over hardcoded names like Inter.
No parameter schema on file.
Create an instance of a published component by its key. Use find_components to discover component keys. Set properties immediately via the properties param to avoid an extra set_instance_properties call.
No parameter schema on file.
Duplicate an existing Figma node and place the copy next to the original or at a given position
No parameter schema on file.
Set an image as the fill of a Figma node by providing a public image URL
No parameter schema on file.
Apply multiple set_node_property operations in a single call. Returns per-node success/error results.
No parameter schema on file.
Create a primitive shape on the Figma canvas (RECTANGLE, ELLIPSE, POLYGON, STAR, LINE)
No parameter schema on file.
Import an SVG string directly as a Figma node. The AI can generate SVG markup for icons, illustrations, and shapes.
No parameter schema on file.
Set visual effects (shadows and blurs) on a Figma node. Replaces all existing effects.
No parameter schema on file.
Set fills on a Figma node with full support for solid colors and gradients. Replaces all existing fills.
No parameter schema on file.
Set typography properties on a text node: letter spacing, line height, text decoration, text case, paragraph spacing.
No parameter schema on file.
Update auto-layout settings on an existing frame. Can enable auto-layout on a frame that doesn
No parameter schema on file.
Get the available properties and variants of a component. Use this before set_instance_properties to know which values are valid.
No parameter schema on file.
Set component property values on an instance node: swap variants (e.g. type=Primary), toggle booleans (e.g. hasIcon=true), or override text.
No parameter schema on file.
Swap an instance
No parameter schema on file.
Detach a component instance, converting it to a plain editable frame. Use when you need to customize beyond what component properties allow.
No parameter schema on file.
Apply a local style to a node by style ID. Use get_design_system_kit to find available style IDs (returned in colorStyles and textStyles).
No parameter schema on file.
No parameter schema on file.
Get text styles and color variables from ALL connected external design system libraries (e.g. Boreal Foundations, FFP Design System - Mobile, Hangar Web). Call this when you need the exact style IDs for typography tokens like
No parameter schema on file.
No parameter schema on file.
Get a complete visual overview of ALL pages in the current Figma file. For each page, returns its name, frame count, and a screenshot of its full canvas. Use this when you need to understand the full scope of an existing project before creating something new — it lets you see every page
No parameter schema on file.
Export a Figma node as an image (PNG, SVG, or JPG). Returns the image inline so the AI can see it directly — no link needed. Call this after creating or editing nodes to visually confirm the result.
No parameter schema on file.
Export the entire current Figma page as a single image showing all frames together. Returns the image inline so the AI can see the full canvas layout at once. Use this to get a birds-eye view of the design.
No parameter schema on file.
Export multiple Figma nodes as images in a single call. Returns each image inline so the AI can see them directly. Call this after creating a flow of screens to do a final visual review.
No parameter schema on file.
Search for components by name in any Figma file. Returns key, name, and description — use the key with create_component_instance.
No parameter schema on file.
Search for component sets (variant groups) by name in any Figma file. Use the key with find_components to explore individual variants.
No parameter schema on file.
Get metadata for any Figma file by its key: name, last modified date, and list of pages. Useful for inspecting a file from a shared URL without opening it in Figma.
No parameter schema on file.
Read specific nodes from any Figma file by fileKey and nodeIds. Returns design properties: fills, fonts, layout, children. Useful for inspecting designs from a shared Figma URL.
No parameter schema on file.
Get all design tokens (variables) from any Figma file by its key. Returns variable collections, modes, and values — useful for inspecting a remote design system.
No parameter schema on file.
Get the nodes currently selected by the user in Figma. Returns full serialized node data for each selected node. Use this when the user says
No parameter schema on file.
Get a Figma node by ID including type, name, position, text content, font, and fills
No parameter schema on file.
Get a Figma node and its entire descendant tree with rich properties (characters, fills, fontName, fontSize). Use depth to control how deep to recurse.
No parameter schema on file.
Search recursively for nodes matching filters. Use textContains to find text nodes by content, nameContains to match by layer name, or type to filter by node type (TEXT, FRAME, etc.).
No parameter schema on file.
Delete multiple Figma nodes at once by ID. Use this to batch-clean orphan nodes left by failed or timed-out operations.
No parameter schema on file.
Move a node to a different parent container
No parameter schema on file.
Get all fonts actually used in the current Figma page. Call this before creating text or using create_from_html to know which font families and styles are available in the design system (e.g.
No parameter schema on file.
Add prototype interactions to a node (e.g. ON_CLICK → navigate to another frame). This is what makes a design a navigable prototype.
No parameter schema on file.
List all pages in the current Figma file with their IDs, names, and frame count.
No parameter schema on file.
Create a new page in the Figma file
No parameter schema on file.
Switch the active page in Figma by page ID. Use get_pages to find page IDs.
No parameter schema on file.
Scroll and zoom the Figma viewport to center on one or more nodes. Useful after creating elements to confirm them visually.
No parameter schema on file.
Create a section on the Figma canvas to organize frames by flow or feature
No parameter schema on file.
Save a named checkpoint in Figma
No parameter schema on file.
Bind a variable to a node property
No parameter schema on file.
Create a new variable collection (design token group) in the current Figma file
No parameter schema on file.
Create a new variable (design token) inside a collection
No parameter schema on file.
Update an existing variable: rename, change value for a mode, update description or scopes
No parameter schema on file.
Delete a variable (design token) by ID
No parameter schema on file.
Delete a variable collection and all its variables
No parameter schema on file.
Add a new mode to a variable collection (e.g. add
No parameter schema on file.
Rename an existing mode in a variable collection
No parameter schema on file.
Create a comment on a Figma file, optionally anchored to a specific node
No parameter schema on file.
Get all comments from a Figma file
No parameter schema on file.
No parameter schema on file.
- Every tool, no call limit
- No card, and mcprush charges nothing for it
- Source published under MIT
- Runs on your machine — nothing of it reaches our gateway
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Figmind or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | moderate | capability blast radius (moderate) — client exposure if the model is manipulated | −3 |
| verification-discount | repo | publisher verification (public source) — no provenance, but the source is public and inspectable | −1 |
| coverage-honesty | source | inspection depth (source) — how much of the target the scan could see | −0 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
Tools were statically extracted from the published source (55 recovered), not enumerated from a running server. Tool-poisoning, Unicode-smuggling, capability and toxic-flow analysis ran on this inferred surface, but a mis-parsed registration could be missed or mis-attributed, so tool-derived findings are capped below “confirmed”. To grade the real runtime surface, scan the running server: --command "npx -y <package>".
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. moderate is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| create_frame | no tags | |
| create_text | no tags | |
| create_component_instance | no tags | |
| duplicate_node | no tags | |
| set_image_fill | untrusted-input | untrusted-input: handler fetches a URL taken from its input (fetch(params.imageUrl) at dist/tools/canvas.js:126 |
| bulk_update | no tags | |
| create_shape | no tags | |
| create_from_svg | no tags | |
| set_effects | no tags | |
| set_fill | no tags | |
| set_text_properties | no tags | |
| update_auto_layout | no tags | |
| create_comment | external-sink | external-sink: keyword "create_comment", handler sends an HTTP POST (fetch(${FIGMA_API_BASE}/files/${fileKey}/comments) at dist/tools/comments.js:21 |
| get_comments | no tags | |
| get_component_properties | no tags | |
| set_instance_properties | no tags | |
| swap_component | no tags | |
| detach_instance | no tags | |
| apply_style | no tags | |
| get_design_system_kit | no tags | |
| get_linked_library_tokens | no tags | |
| find_components_in_page | no tags | |
| get_file_context | no tags | |
| execute | no tags | |
| export_node | no tags | |
| export_page | no tags | |
| export_batch | no tags | |
| create_from_html | no tags | |
| find_components | no tags | |
| find_component_sets | no tags | |
| get_file_info | no tags | |
| get_file_nodes | no tags | |
| get_file_variables | no tags | |
| get_selection | no tags | |
| get_node | no tags | |
| get_full_tree | no tags | |
| find_nodes | no tags | |
| delete_nodes | no tags | |
| move_node | no tags | |
| get_used_fonts | no tags | |
| set_reactions | no tags | |
| get_pages | untrusted-input | untrusted-input: keyword "get_page" |
| create_page | no tags | |
| set_current_page | no tags | |
| scroll_into_view | no tags | |
| create_section | no tags | |
| save_version | no tags | |
| apply_variable_to_node | no tags | |
| create_variable_collection | no tags | |
| create_variable | no tags | |
| update_variable | no tags | |
| delete_variable | no tags | |
| delete_variable_collection | no tags | |
| add_variable_mode | no tags | |
| rename_variable_mode | no tags |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
Always latest — the install command names no version, so it installs the newest release when it runs; the current release on file is 1.0.0. Pin a release below and the command asks for exactly that one.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Figmind can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.