Skip to main content
Echo Specs connects three systems, Cursor, Figma, and a Figma plugin, into a single pipeline. You provide a component link and context, and the system produces formatted documentation directly in your Figma file.

The pipeline at a glance

Each spec type follows this same pipeline, but the internal steps differ depending on what the skill needs to analyze. The diagrams below show what happens inside each skill.

Triggering a skill

Skills are triggered by typing @ followed by the skill name in Cursor’s chat.
1

Type @

In Cursor’s chat, type @. Cursor shows an autocomplete menu of available skills.
2

Select a skill

Continue typing to filter (e.g., @create-v) or use arrow keys to select. The skill name must match exactly: @create-voice, not create voice or voice spec.
3

Add your prompt

After the skill name, paste a Figma link and add any context about states, variants, or behaviors.
If autocomplete doesn’t show the skill, verify the Echo Specs project is open in Cursor. Skills load from the .cursor/skills/ folder.

Inside each skill

Every skill loads an instruction file, reads platform-specific or domain-specific reference files, extracts data from Figma via MCP, runs through a checklist, and outputs validated JSON. The reference files determine what the agent knows about each domain.
The screen reader skill loads four reference files, one for general instructions and one per platform, then runs a merge analysis to determine focus stops before generating per-platform tables.The merge analysis is the critical step. It determines which visual parts become independent focus stops and which get merged into a parent announcement. The three platform files provide the exact property names and announcement patterns for iOS, Android, and Web.

What the agent sees vs. what you provide

The agent can extract structure, tokens, and styles from Figma automatically. But some information only exists in your head:
The agent can extractYou need to describe
Component layers and hierarchyStates not visible in the current frame
Design token names and valuesBehavioral modes (fill vs. hug, truncation)
Variant axes and propertiesFocus order preferences
Visual dimensions and spacingPlatform-specific interaction details
Styles and color valuesBusiness logic or conditional rules
The more context you provide in your prompt, the more accurate the output. A one-line prompt works, but adding states, behaviors, and edge cases produces significantly better specs.

Architecture overview

The Figma Console MCP acts as the bridge between Cursor and Figma Desktop. It connects via WebSocket through the Desktop Bridge plugin, giving the agent real-time access to your file data without requiring manual export.