Model Context Protocol server for Figma integration
Two tools with complete input schemas and descriptions, but quality varies. get_figma_data has a clear, actionable description (89 chars) and well-typed parameters with descriptions. download_figma_images has a verbose description (156 chars) and complex nested schema with good parameter documentation. However, output schemas are not documented in the source code, LLMs cannot predict return structure. No tool annotations (readOnlyHint/destructiveHint) despite clear risk profiles. Error handling and recovery guidance are absent from descriptions.
Download SVG and PNG images used in a Figma file based on the IDs of image or icon nodes
Get comprehensive Figma file data including layout, content, visuals, and component information
Output schemas not documented. LLMs cannot predict return structure for get_figma_data or download_figma_images. Responses likely include raw API fields (metadata, audit info) that waste tokens and confuse reasoning.
No tool annotations. download_figma_images performs file writes (WRITE risk) but lacks destructiveHint. get_figma_data is READ_ONLY but lacks readOnlyHint. Agents cannot distinguish safe from risky operations.
Error handling and recovery guidance absent. Descriptions do not explain what to do if Figma API fails, file path is invalid, or node ID is malformed. No actionable error messages documented.
download_figma_images parameter 'localPath' requires absolute OS-specific paths. Description warns against 'special character escaping' but does not explain what characters are forbidden or how to construct valid paths. LLMs may pass invalid paths.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | <=2025-11-25 | v2 |
Complex nested schema in download_figma_images (nodes array with optional fields like cropTransform, filenameSuffix) lacks clear documentation of when each field is required. Conditional dependencies between fields are not explained.