Figma Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Figma Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Chat with Claude and watch your Figma canvas update in real time.
You chat with Claude
→ Claude calls MCP tools
→ MCP server (hosted on Railway) sends commands via WebSocket
→ Figma plugin executes them on the canvasyour-app.railway.appfigma-plugin/manifest.json from this repoYOUR-APP.railway.app in the URL field with your actual Railway domainOpen (or create):
~/Library/Application Support/Claude/claude_desktop_config.jsonAdd this block, updating the path to where you cloned this repo:
{
"mcpServers": {
"figma": {
"command": "node",
"args": ["/FULL/PATH/TO/figma-mcp/server.js"]
}
}
}Restart Claude Desktop.
Example prompts to try:
"Create a pitchbook slide called Revenue Growth with the headline '$281M revenue by 2030'"
"Add a stacked bar chart showing LiveWell vs acquired revenue 2026-2030"
"Add stat cards: $45M 2026 revenue, $281M 2030 revenue, 6.2× growth"
"Update the headline to 'Revenue scales 6× through roll-up strategy'"
| Tool | What it does |
|---|---|
ping_figma | Check connection status |
list_frames | List all frames on the page |
create_slide | Create a pitchbook slide frame |
add_stat_cards | Add KPI stat cards to a slide |
add_chart | Add a chart as editable SVG vectors |
add_legend | Add a color legend row |
add_text | Add a text node |
update_text | Edit existing text by name |
delete_node | Remove a node |
focus_frame | Zoom viewport to a frame |
set_fill_color | Change background color |
duplicate_frame | Clone a frame as a template |
bar — grouped bar chartstacked_bar — stacked bar chartline — line chart with area fillhorizontal_bar — horizontal bars (tornado, bridge)combo — bars + line on dual axisAll charts render as editable SVG vector paths — not images.
| Variable | Default | Description |
|---|---|---|
PORT | 3000 | HTTP health check (set automatically by Railway) |
WS_PORT | 9001 | WebSocket port the Figma plugin connects to |
"Figma plugin is not connected" — Make sure the plugin panel is open in Figma Desktop.
"Connection error" in plugin — Check your Railway domain is correct and the service is awake.
Charts look stretched — Resize the SVG node in Figma; it scales to frame width on import.
Claude doesn't see figma tools — Restart Claude Desktop after editing the config file.
Railway goes to sleep — Disable sleep under Railway → Settings, or upgrade to a paid plan.
Copyright © 2026 Vizx Global. All rights reserved.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.