{"id":47675,"library":"figma-rest-mcp-server","title":"Figma REST MCP Server","description":"A stdio-based Model Context Protocol (MCP) server that reads Figma design data via the Figma REST API and caches snapshots locally. Version 0.1.5, active development. Written in TypeScript with ESM-only support (Node >=20). Designed for AI-assisted design-to-code workflows (e.g., Codex). Automatically stores auth tokens and cache under ~/.figma-rest-mcp-server. No build step needed for end users; global npm install and CLI commands for auth, path inspection, cache clearing, and serving. Differentiates from other Figma MCP servers by local caching and strict stdio MCP protocol compliance.","status":"active","version":"0.1.5","language":"javascript","source_language":"en","source_url":"https://github.com/TRIS-H/figma-rest-mcp-server","tags":["javascript","figma","figma-api","figma-rest-api","figma-mcp","figma-rest-mcp","mcp","mcp-server","model-context-protocol"],"install":[{"cmd":"npm install figma-rest-mcp-server","lang":"bash","label":"npm"},{"cmd":"yarn add figma-rest-mcp-server","lang":"bash","label":"yarn"},{"cmd":"pnpm add figma-rest-mcp-server","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"ESM-only package; CommonJS require is not supported. Use dynamic import() if needed in a CJS context.","wrong":"const serve = require('figma-rest-mcp-server')","symbol":"serve","correct":"import { serve } from 'figma-rest-mcp-server'"},{"note":"CLI entry point; also accessible via `figma-rest-mcp auth`. The exported `auth` function implements the token storage logic.","wrong":"","symbol":"auth","correct":"import { auth } from 'figma-rest-mcp-server'"},{"note":"The main class is not exported as a value; only types are available for consumers. Use `serve()` to start the server.","wrong":"import { FigmaRestMcpServer } from 'figma-rest-mcp-server'","symbol":"FigmaRestMcpServer (type)","correct":"import type { FigmaRestMcpServer } from 'figma-rest-mcp-server'"}],"quickstart":{"code":"npm i -g figma-rest-mcp-server\nfigma-rest-mcp auth\n# Enter your Figma Personal Access Token when prompted\nfigma-rest-mcp serve\n# Or register with Codex:\ncodex mcp add figma_rest -- figma-rest-mcp serve","lang":"typescript","description":"Shows global installation, authentication, and running the MCP server via CLI or Codex integration."},"warnings":[{"fix":"Restrict file permissions (chmod 600) or use environment variable FIGMA_PAT if supported.","message":"Token stored in plaintext at ~/.figma-rest-mcp-server/auth.json. Do not share or commit this file.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Update Node.js to version 20 or later. Use nvm or n to manage Node versions.","message":"Node.js >=20 is required. Older Node versions will fail to start.","severity":"breaking","affected_versions":">=0.1.0"},{"fix":"To clear cache: `figma-rest-mcp cache:clear`.","message":"Cache directory ~/.figma-rest-mcp-server/.figma-cache is created automatically; deletion requires explicit cache:clear command.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Use import statements or dynamic import() in your project. For TypeScript, set \"module\": \"ESNext\" or use a bundler.","message":"The package is ESM-only. CommonJS require() will throw an error.","severity":"breaking","affected_versions":">=0.1.0"},{"fix":"Run `codex mcp add figma_rest -- figma-rest-mcp serve` once after global installation.","message":"The `serve` command must be registered as a Codex MCP tool before use with Codex; direct usage via `figma-rest-mcp serve` is only for testing.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'/.figma-rest-mcp-server':61 '0.1.5':29 '20':41 'activ':30 'ai':45 'ai-assist':44 'api':23,102,106 'assist':46 'auth':56,76 'automat':54 'base':8 'build':63 'cach':25,59,79,91 'clear':80 'cli':73 'code':50 'codex':53 'command':74 'complianc':97 'context':10,120 'data':18 'design':17,42,48 'design-to-cod':47 'develop':31 'differenti':83 'e.g':52 'end':67 'esm':37 'esm-on':36 'figma':1,16,21,86,99,101,104,108,111 'figma-api':100 'figma-mcp':107 'figma-rest-api':103 'figma-rest-mcp':110 'global':69 'inspect':78 'instal':71 'javascript':98 'local':27,90 'mcp':3,12,87,95,109,113,114,116 'mcp-server':115 'model':9,119 'model-context-protocol':118 'need':65 'node':40 'npm':70 'path':77 'protocol':11,96,121 'read':15 'rest':2,22,105,112 'serv':82 'server':4,13,88,117 'snapshot':26 'stdio':7,94 'stdio-bas':6 'step':64 'store':55 'strict':93 'support':39 'token':57 'typescript':34 'user':68 'version':28 'via':19 'workflow':51 'written':32","created_at":"2026-06-07T16:52:43.805638+00:00","updated_at":"2026-06-07T16:52:43.805638+00:00","problems":[{"fix":"Replace `require('figma-rest-mcp-server')` with `import('figma-rest-mcp-server')` (dynamic) or use a static import at the top of an ESM module.","cause":"Used CommonJS require() on an ESM-only package.","error":"Error [ERR_REQUIRE_ESM]: require() of ES Module not supported"},{"fix":"Ensure npm global bin directory is in PATH. Run `npm root -g` to check location, then add it to PATH. Alternatively, use npx: `npx figma-rest-mcp serve`.","cause":"Global npm install may be missing from PATH.","error":"figma-rest-mcp: command not found"},{"fix":"Run `figma-rest-mcp auth` and follow the prompts to enter your Figma Personal Access Token.","cause":"Authentication step not completed before running serve.","error":"Auth file not found at ~/.figma-rest-mcp-server/auth.json"},{"fix":"Install globally: `npm i -g figma-rest-mcp-server`. For local projects, add as dependency and run from node_modules/.bin.","cause":"Package not installed globally or locally.","error":"Error: Cannot find module 'figma-rest-mcp-server'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/TRIS-H/figma-rest-mcp-server#readme","github":"https://github.com/TRIS-H/figma-rest-mcp-server","docs":null,"changelog":null,"pypi":null,"npm":"figma-rest-mcp-server","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}