Look up your Figma user, read file metadata, and post comments on files. Trigger phrases: figma, figma file, design file.
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill figma
Read from the user's Figma: the authenticated user (me) and file metadata (file: name, lastModified, version, thumbnailUrl). The full file document is intentionally not returned: it is too large to be useful in chat, so file surfaces metadata only. The comment command posts a comment to a file (plain text, or anchored to a node with --node-id); positioned canvas pins (x/y without a node) are not supported because the exact client_meta schema is not clearly defined in Figma's public docs.
All commands go through bin/figma.py:
bin/figma.py me # authenticated user (handle, email)
bin/figma.py file --key KEY # file metadata: name, lastModified, version, thumbnailUrl
# Comment posts need an exact --confirm string (the CLI prints the required string on refusal)
bin/figma.py comment --key KEY --message "Looks great!" \
--confirm 'post comment on file KEY: "Looks great!"'
bin/figma.py comment --key KEY --node-id 1:42 --message "Spacing looks off here." \
--confirm 'post comment on file KEY: "Spacing looks off here."'
Get the file key from a Figma URL: it is the segment after /file/ or /design/.
figma (credential is collected as custom.figma)credentials.request_api_access): create one in Figma → Settings → Personal access tokens (needs at least the file_content:read scope for file; comment additionally needs file_comments:write)custom_header:X-Figma-Token (Figma PATs use X-Figma-Token, not Authorization: Bearer)api.figma.combin/figma.py me (a successful response proves the token works)comment needs an exact --confirm string echoed by the CLI on every post; the CLI prints the required string when it refuses. Reading needs no confirmation.--node-id) or plain comments ship: raw x/y canvas pins are not supported because Figma's client_meta schema is not clearly documented.bin/figma.py). Do not print, log, or transmit the token value.🧪 Draft: written from Figma's public REST API docs (including the post-comment endpoint); not yet live-tested end-to-end.
Take anil-matcha/figma from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.