Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By southleft
Transform Figma into a design-token and component-documentation engine: export tokens to DTCG, CSS, Tailwind, or TypeScript; lint designs for WCAG 2.2 accessibility and design-system quality; generate component markdown docs, changelogs, and code-drift reports; manage variables, libraries, and version history from the CLI.
npx claudepluginhub southleft/figma-console-mcp-skills --plugin figma-console-mcp-skillsAuthor FigJam boards with granular control — sticky notes (single + batch), connectors between nodes, shapes-with-text, sections, tables, code blocks, and auto-arrange — plus read back board contents and the connection graph. Use when the user wants to build or edit a FigJam board element-by-element. Triggers: 'add stickies to FigJam', 'create a flowchart/diagram in FigJam', 'connect these nodes', 'make a section/table/code block in FigJam', 'auto-arrange the board', 'read what's on the FigJam board', 'map the connections'. More granular than the native generate_diagram (which produces a whole diagram in one shot). FigJam files only (figma.editorType === 'figjam'). Requires the Figma Desktop app (Plugin API).
Analyze a Figma COMPONENT_SET as a state machine for code generation — extract variant axes (state/size/etc.), map state variants to CSS pseudo-classes (hover→:hover, focus→:focus-visible, disabled→:disabled, error→[aria-invalid]), and compute per-variant visual diffs (only what changes per state). Use when generating an interactive component from a Figma variant set — triggers: 'analyze this component set', 'turn these variants into CSS states', 'generate a button/input/checkbox from Figma variants', 'what changes between the hover and default state', 'map Figma variants to component props', 'extract the state machine for this component'. Resolves bound variables to token names. NOT covered by the native MCP's get_design_context/get_metadata, which don't give you a variant-axis→CSS-state machine.
Read and write designer annotations on Figma nodes — node-level design specs that pin properties (fills, width, fontSize, etc.) and carry plain or markdown notes. Use when the user wants to document or inspect interaction specs, animation timings, easing, accessibility requirements, or implementation notes attached directly to a node. Triggers: 'add an annotation', 'annotate this node/component', 'read the annotations on…', 'what specs are pinned to this element', 'list annotation categories', 'document the focus behavior on this button in Figma'. Annotations are distinct from comments (they pin to design properties) and from the description field. Requires the Figma Desktop app (Plugin API).
Organize a Figma COMPONENT_SET's variants into a clean, labeled grid — rows and columns derived from the variant properties, with row labels on the left, column headers on top, and a titled white container. Use when a variant set is a messy pile and you want a presentable, documentation-ready layout — triggers: 'arrange my variants in a grid', 'organize this component set', 'lay out the variants with labels', 'make a variant matrix', 'clean up my component set layout', 'add row/column headers to my variants'. Picks the last property (usually State) as columns and the rest as rows by default. NOT something the native MCP's read-only tools do — this writes a new organized layout to the canvas.
Deep accessibility scorecard for a single Figma component or component set — state coverage (default/hover/focus/disabled/error/active/loading), focus-indicator quality and contrast, non-color state differentiation, target size, annotation completeness, and color-blind simulation (protanopia/deuteranopia/tritanopia), all rolled into per-category 0–100 scores and prioritized recommendations. Use when the user wants to vet ONE component before shipping it: triggers 'audit this component', 'accessibility score for this button', 'is this component set accessible', 'check the states on this component', 'does my button have a focus state', 'color blind check', 'rate this component for a11y', 'component accessibility scorecard'. Works on ANY Figma plan. For a broad sweep over a whole page/frame use figma-lint-design; for CODE-side (HTML) checks use figma-scan-code-accessibility.
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Staff-level design system auditing, governance, documentation, validation, and communication — 39 skills, 4 agents, and 11 knowledge notes for the full design system lifecycle
Design System compliance harness for Claude + Figma. Enforces library-first components, token binding, and automated QA — so AI-generated designs stay on-spec.
Token generators, component patterns, accessibility guidance, and framework integrations
Build, document, and maintain scalable design systems — from tokens and components to accessibility and theming.
Compiler-driven design generation in Figma — 100% design system compliant. Compiles component specs into verified Figma output via MCP.
Plugin that includes the Figma MCP server and Skills for common workflows
18 skills for the native Figma MCP: export/import design tokens, manage variables, analyze and document component sets, lint for WCAG and design-system compliance, audit accessibility, and author Slides and FigJam content.
The most powerful Figma Console MCP capabilities, repackaged as Markdown skills for the native Figma MCP server.
The official Figma MCP server is powerful and general-purpose: it reads designs
(get_design_context, get_metadata, get_variable_defs, get_screenshot, search_design_system)
and writes to Figma through use_figma, which runs Figma Plugin API JavaScript. That flexibility
means it can do a great deal — the harder part is doing each design-systems job well and
repeatably.
This repo packages that know-how. Each directory is a skill — a Markdown playbook plus
ready-to-paste scripts, distilled from the
Figma Console MCP — so your agent reliably handles
design-systems work without reinventing the Plugin API each session: token export/import (DTCG, CSS,
Tailwind…), variable management, component-set analysis, WCAG linting, accessibility audits, version
diffing/changelogs, annotations, comments, FigJam, and Slides. Most run through use_figma; a few
reach data the Plugin API can't (version history, comments) via the Figma REST API, or analyze code
(axe-core).
You do not need to install the Figma Console MCP to use these skills. You only need the native Figma MCP server and (for the four REST skills) a Figma personal access token.
A "skill" is a folder containing a SKILL.md with YAML frontmatter (name, description). When your
request matches a skill's description, the agent loads it and follows the playbook. You can also
invoke one explicitly with /skill-name.
scripts/*.js — ready-to-paste snippets for the native use_figma tool (plain JS, top-level
await, return for output, inlined inputs). The full Plugin API reference is the official
figma-use skill.scripts/*.mjs / *.sh — runnable Node/bash for the REST and code-side skills.references/ — extra detail bundled inside that skill's folder, so it travels
with a single-folder upload. Every skill is self-contained — you don't need anything else from
the repo. (The top-level references/ is optional background/contributor docs that no
skill depends on.)Prerequisite: Always load the official figma-use skill alongside any Plugin-API skill here —
it's the source of truth for the Figma Plugin API surface. These skills add design-systems workflows
on top of it.
A "skill" is just a folder with a SKILL.md file — an open, portable format supported by Claude
Desktop, Claude Code, claude.ai (web), Cursor, OpenAI Codex, and Google Gemini CLI. Pick the path
that matches how you work.
Two one-time prerequisites (both free, no token):
- Connect Figma. In your AI tool, add the Figma connector and sign in — this is a one-time OAuth login (see "Do I need a Figma token?" below).
- Have the official
figma-useskill available. It ships with the Figma integration and carries the Figma Plugin API rules these skills build on. These skills extend it.
⚡ Fastest path —
npx(any agent: Claude Code, Codex, Cursor, Gemini CLI, …): one command, no manual file copying —npx skills add southleft/figma-console-mcp-skills # install all skills npx skills add southleft/figma-console-mcp-skills --list # preview without installing npx skills add southleft/figma-console-mcp-skills --skill figma-export-tokens # just onePowered by the
skillsCLI — it detects your agent and drops each skill into the right place.Claude Code plugin — alternatively, install the whole collection as a plugin:
/plugin marketplace add southleft/figma-console-mcp-skills /plugin install figma-console-mcp-skills@figma-console-mcp-skillsThe per-host options below still work if you prefer copying folders manually.
skills/ folder, then in Finder/Explorer right-click the
figma-export-tokens folder → Compress (no terminal needed). Its SKILL.md must sit at the root of the zip./figma-export-tokens.