Figma MCP Pack - Read-only access to Figma design files and comments via the Figma REST API v1. Requires OAuth connection.
Five tools with complete input schemas and clear descriptions. All tools follow verb_noun naming (get_*, list_). Descriptions are well-written (100-200 chars, within baseline 194 avg). Parameters have types and descriptions. However, output schemas are NOT documented, LLMs cannot predict response structure. Error handling is minimal (only 'connection_required' shown). No tool annotations (readOnlyHint, etc.). Parameter descriptions lack format constraints (e.g., 'file_key' should specify format). No pagination support documented for list_comments despite potentially large result sets.
Get a compact summary of a Figma design file by its file key: name, last modified time, version, editor type, role, thumbnail URL, and the list of top-level pages (id, name, type, child count). Use to understand the structure of a Figma design file without fetching the full node tree.
Render images of specific nodes in a Figma design file. Returns a map of node id to a rendered image URL. Use to get visual previews (PNG, SVG, or JPG) of frames, components, or layers from a design.
Get specific nodes from a Figma design file by their node ids. Returns a compact map of node id to { name, type }. Use to inspect particular frames, components, or layers within a design file.
Get the signed-in Figma user: id, email, handle, and avatar image URL. Use to identify whose Figma account is connected.
List comments on a Figma design file. Returns each comment's id, message, author handle, created time, and resolved time. Use to review feedback and discussion on a design.
Output schemas not documented. LLMs cannot predict response structure (fields, types, nesting). Callers must infer from implementation or trial-and-error.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools are read-only but this is not declared in schema, forcing LLMs to infer safety.
Parameter 'file_key' lacks format specification. Description says 'segment after /file/ or /design/' but does not state character constraints, length, or regex pattern. LLMs may pass invalid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
list_comments lacks pagination (limit, offset, cursor). Figma files can have hundreds of comments; returning all at once risks context window exhaustion and token waste.
Error handling minimal. Only 'connection_required' shown; no guidance for API errors (rate limits, invalid file_key, permission denied). LLMs cannot self-correct or retry intelligently.