{
  "data": {
    "a": {
      "slug": "figma-mcp",
      "name": "Figma API + MCP",
      "vendor": "Figma",
      "vendorUrl": "https://www.figma.com",
      "kind": "http-api",
      "category": "design",
      "summary": "Figma's REST API and official MCP server connect applications and agents to its design platform.",
      "url": "https://www.anchorterminal.com/tools/figma-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/figma-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/figma-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/figma-mcp.json",
      "dns": "figma-mcp.grade.anchorterminal.com",
      "license": "proprietary",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.figma.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@figma/rest-api-spec"
        },
        {
          "registry": "npm",
          "name": "@figma/code-connect"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST API takes a personal access token in the X-Figma-Token header, an OAuth 2 app token with per-scope grants (file_content:read, file_comments:write, file_variables:write, webhooks:write and so on) or an organisation plan access token. The MCP server signs in with Figma OAuth. The remote server works on every seat and plan, the desktop server needs a Dev or Full seat on a paid plan, and only clients listed in Figma's MCP catalogue can connect.",
      "pricing": "freemium",
      "pricingNotes": "Starter is a free Figma plan per the help centre, with 20 MCP calls a month for View and Collab seats. Paid seats are priced on www.figma.com/pricing, which disallows our crawler, so prices weren't re-read on 1 November 2026. MCP write-to-canvas tools are free during the beta and Figma says they'll become a usage-based paid feature (https://developers.figma.com/docs/figma-mcp-server/).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in Figma's REST or MCP docs.",
        "endpoints": []
      },
      "toolCount": 41,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 456424,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.figma.com/docs/rest-api/",
      "llmsTxt": "https://developers.figma.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/figma/rest-api-spec/main/openapi/openapi.yaml",
      "registryName": "com.figma.mcp/mcp",
      "capabilities": [
        "design.files",
        "design.components",
        "design.canvas",
        "design.comments",
        "design.code"
      ],
      "tags": [
        "official",
        "hosted",
        "oauth",
        "closed-source",
        "freemium",
        "free-tier",
        "mcp",
        "llms-txt",
        "openapi",
        "webhooks",
        "typescript"
      ],
      "lastRelease": "2026-10-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.4,
        "grade": "B",
        "agentReady": false,
        "rank": 517,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 84,
          "payments": 10,
          "reliability": 64,
          "schema": 86,
          "security": 71,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "OpenAPI spec, TypeScript types and an llms.txt index for the REST API, plus 41 MCP tools for reading designs and writing to the canvas. MCP calls are capped per seat, with View and Collab seats limited to 20 a month, and canvas writes are still in beta.",
        "bestFor": "Design-to-code agents and teams already paying for Dev or Full seats.",
        "strengths": [
          "OpenAPI spec, TypeScript types and an llms.txt index for the REST API",
          "OAuth scopes per resource, plus plan access tokens with allowlists and expiry",
          "MCP design context, screenshots and Code Connect for design-to-code work, with canvas writes on the remote server",
          "Published REST and MCP limits by seat and plan, and REST 429s carry Retry-After",
          "A bug bounty programme on HackerOne"
        ],
        "weaknesses": [
          "View and Collab seats get 20 MCP calls a month on every plan",
          "Figma services were degraded or unavailable for about 90 minutes on 27 September 2026 after AWS failures",
          "Only clients in Figma's MCP catalogue can connect",
          "No prompt-injection guidance for file content and comments",
          "No machine payment, and no per-call price for MCP or the coming paid write tools"
        ],
        "agentNotes": [
          "Pass `ids=` and `depth=` to `GET /v1/files/:key`. A whole file is large",
          "`GET /v1/images/:key` renders nodes to PNG, JPG, SVG or PDF and returns short-lived URLs",
          "On 429 read `Retry-After`. Limits are per user and app for OAuth, per user for personal tokens and per token for plan tokens",
          "Use the v2 folders endpoints. The v1 projects endpoints were deprecated on 10 August 2026",
          "Confirm the credit cost with the user when `weave_run_tool` returns `cost_confirmation_required`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.4
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 84,
          "payments": 10,
          "reliability": 64,
          "schema": 86,
          "security": 71,
          "transparency": 45
        },
        "provenanceScore": 88,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -H \"X-Figma-Token: $FIGMA_TOKEN\" https://api.figma.com/v1/me",
        "claudeCode": "claude mcp add --transport http figma https://mcp.figma.com/mcp",
        "config": {
          "mcpServers": {
            "figma": {
              "url": "https://mcp.figma.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.files",
        "tool": "https://letme.dev/figma-mcp"
      },
      "area": "design-diagrams",
      "provenance": {
        "legalEntity": "Figma, Inc.",
        "domain": "figma.com",
        "domainRegistered": "1999-04-10",
        "domainNote": "www.figma.com's robots.txt disallows ClaudeBot on every path, so its security.txt, terms, privacy policy and pricing page weren't read on 1 November 2026.",
        "endpointOnVendorDomain": true,
        "terms": "https://figma.com/legal/tos/",
        "privacy": "https://figma.com/legal/privacy/",
        "statusPage": "https://status.figma.com",
        "changelog": "https://developers.figma.com/docs/rest-api/changelog/",
        "securityTxt": "unknown",
        "checked": "2026-11-01",
        "score": 88
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/figma-mcp.json",
      "live": {
        "slug": "figma-mcp",
        "probe": {
          "target": "https://api.figma.com/v1",
          "method": "get",
          "lastAt": "2026-11-07T19:22:07.184769559Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 221,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.87,
          "p50ms24h": 163,
          "p95ms24h": 409,
          "samples24h": 238,
          "samples30d": 7920,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 247
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 238
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 197,
              "ok": 197
            }
          ],
          "outages": [
            {
              "start": "2026-11-04T13:11:18.218899552Z",
              "end": "2026-11-04T13:34:00.216044859Z",
              "note": "HTTP 503 server error"
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.figma.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:22:06.276957857Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.figma.mcp/mcp",
            "version": "1.0.3",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "@figma/code-connect",
            "version": "2.1.0",
            "seenAt": "2026-11-06T23:25:35.841813417Z"
          },
          {
            "registry": "npm",
            "name": "@figma/rest-api-spec",
            "version": "0.47.0",
            "seenAt": "2026-11-06T23:25:35.599205693Z"
          }
        ],
        "npmWeekly": 925918,
        "securityTxt": {
          "url": "https://figma.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-21T15:25:00.000Z",
          "checkedAt": "2026-11-07T16:01:29.947734037Z"
        },
        "llmsTxt": {
          "url": "https://developers.figma.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:29.178611467Z"
        },
        "domain": {
          "domain": "figma.com",
          "registered": "1999-04-10",
          "source": "https://rdap.verisign.com/com/v1/domain/figma.com",
          "checkedAt": "2026-11-01T14:24:27.895741969Z"
        },
        "pages": [
          {
            "url": "https://developers.figma.com/docs/rest-api/changelog/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-07T14:03:51.829685629Z",
            "changedAt": "2026-10-23T01:43:46.751337699Z",
            "fingerprint": "6f8ff64b6bc3"
          },
          {
            "url": "https://developers.figma.com/docs/rest-api/rate-limits/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-07T14:03:54.276021905Z",
            "changedAt": "2026-10-23T01:43:49.445756573Z",
            "fingerprint": "b0cd9b08cde7"
          },
          {
            "url": "https://www.figma.com/pricing/",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-11-02T07:32:33.492186021Z",
            "changedAt": "2026-10-29T05:22:29.735209125Z",
            "fingerprint": "5e85d1efb2e0"
          },
          {
            "url": "https://figma.com/legal/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:48.373163191Z",
            "changedAt": "2026-10-31T06:12:31.090419393Z",
            "fingerprint": "fc6021f6b077"
          },
          {
            "url": "https://figma.com/legal/tos/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:51.462126866Z",
            "changedAt": "2026-10-15T21:27:38.794529545Z",
            "fingerprint": "b661841bf7b3"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.figma.com/mcp",
          "checkedAt": "2026-11-07T01:44:27.542773974Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-09-28T21:55:47.047148913Z"
        },
        "updatedAt": "2026-11-07T19:22:07.184769559Z"
      }
    },
    "answer": "Figma API + MCP and Magic Patterns score within a point of each other on agent readiness, 63.4 (B) and 63.4 (B). Magic Patterns leads on reliability, agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "magic-patterns",
      "name": "Magic Patterns",
      "vendor": "North Park Labs, Inc. (Magic Patterns)",
      "vendorUrl": "https://www.magicpatterns.com",
      "kind": "mcp",
      "category": "design",
      "summary": "Magic Patterns is an AI design workspace where product teams generate interactive React prototypes from prompts and their own design system. Agents reach it through a hosted MCP server and a v3 REST API that mirrors it.",
      "url": "https://www.anchorterminal.com/tools/magic-patterns",
      "markdownUrl": "https://www.anchorterminal.com/tools/magic-patterns.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/magic-patterns.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/magic-patterns.json",
      "dns": "magic-patterns.grade.anchorterminal.com",
      "license": "Closed service under the Magic Patterns terms of service (last updated 1 April 2025)",
      "transports": [
        "streamable-http",
        "http"
      ],
      "remoteUrl": "https://mcp.magicpatterns.com/mcp",
      "packages": [],
      "auth": "mixed",
      "authNotes": "The hosted MCP server signs in with OAuth 2.1 (PKCE S256, dynamic client registration, client ID metadata documents and a device flow, at oauth.magicpatterns.com on WorkOS). Scopes are identity only (openid, email, profile, offline_access), so access follows the user's workspace role. An API key from Settings \u003e API Keys, shown once, works for MCP as `Authorization: Bearer` and for REST as `x-mp-api-key`. A read-only MCP endpoint at /mcp/readonly takes the same credentials.",
      "pricing": "freemium",
      "pricingNotes": "MCP access needs a paid plan, Starter $20 a seat a month ($17 yearly) with 1,000 credits on top of the free monthly credits, or Business $100 ($85 yearly) with 5,000. On-demand credits beyond that cost $0.02 each on paid plans. One generation typically uses about 70 credits per the docs. Free plan $0 with free monthly credits.",
      "priceSummary": "$20 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Subscription credits billed through Stripe. No x402, MPP or L402 in the docs, the v3 OpenAPI or llms.txt (checked 2026-11-06). Out of credits returns 402 with no payment requirements.",
        "endpoints": []
      },
      "toolCount": 24,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://www.magicpatterns.com/docs",
      "llmsTxt": "https://www.magicpatterns.com/docs/llms.txt",
      "openapi": "https://www.magicpatterns.com/docs/api/create-design.md",
      "capabilities": [
        "design.code",
        "design.files",
        "design.components",
        "design.canvas"
      ],
      "tags": [
        "hosted",
        "mcp",
        "remote-mcp",
        "oauth",
        "api-key",
        "read-only-mode",
        "llms-txt",
        "openapi",
        "freemium",
        "status-page",
        "yc"
      ],
      "lastRelease": "2026-11-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.4,
        "grade": "B",
        "agentReady": false,
        "rank": 519,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 4,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 70,
          "payments": 23,
          "reliability": 75,
          "schema": 84,
          "security": 55,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Agents can create, prompt, read and edit coded prototypes through 24 documented MCP tools or a matching REST API, with a read-only endpoint and 409 conflict checks on writes. MCP access needs a paid seat from $20 a month, OAuth scopes don't narrow access below the user's role, and the status page doesn't track the API or MCP server.",
        "bestFor": "Generating and iterating on coded React prototypes from a coding agent, and pulling a design into a codebase.",
        "strengths": [
          "A read-only MCP endpoint that does not register the 13 tools that create, change or publish",
          "Workflows, polling intervals and tool order documented for agents, with llms.txt and Markdown pages",
          "v3 REST API with an OpenAPI 3.0.3 description that mirrors the MCP tools, so one key works for both",
          "Writes carry a base artifact ID and fail with 409 on a concurrent change",
          "Dated product changelog with entries from 2026-08-03 to 2026-11-05"
        ],
        "weaknesses": [
          "MCP and API-key access need a paid seat, Starter at $20 a month",
          "OAuth scopes are identity only, so a token can do whatever the user's workspace role allows",
          "No 429 or backoff guidance and no idempotency keys; generations take 2 to 10 minutes and must be polled",
          "The status page tracks the web platform and Figma plugin, not the API or MCP server",
          "Free plan inputs and designs may be used for training and shown publicly, per the terms"
        ],
        "agentNotes": [
          "Use https://mcp.magicpatterns.com/mcp/readonly when the task only reads designs",
          "Call `get_design_status` before any change and poll it no more than once every 60 seconds",
          "Pass `baseArtifactId` from `get_design_system` on writes, and on 409 re-read before retrying",
          "Treat a 402 as out of credits and ask the user; read tools keep working",
          "Send `x-mp-agent-name` so the user sees which agent made a change"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.4
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 70,
          "payments": 23,
          "reliability": 75,
          "schema": 84,
          "security": 55,
          "transparency": 42
        },
        "provenanceScore": 78,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://api.magicpatterns.com/api/v3/health -H \"x-mp-api-key: mp_live_...\"",
        "claudeCode": "claude mcp add --transport http magic-patterns https://mcp.magicpatterns.com/mcp",
        "config": {
          "mcpServers": {
            "magic-patterns": {
              "url": "https://mcp.magicpatterns.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.code",
        "tool": "https://letme.dev/magic-patterns"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Starter seat",
          "unit": "seat-month",
          "usd": 20,
          "note": "$17 billed yearly, 1,000 credits on top of the free monthly credits"
        },
        {
          "item": "Business seat",
          "unit": "seat-month",
          "usd": 100,
          "note": "$85 billed yearly, 5,000 credits on top of the free monthly credits"
        },
        {
          "item": "On-demand credit",
          "unit": "credit",
          "usd": 0.02,
          "note": "Paid plans only, after monthly credits run out. A generation typically uses about 70 credits"
        }
      ],
      "provenance": {
        "legalEntity": "North Park Labs, Inc.",
        "domain": "magicpatterns.com",
        "domainRegistered": "2023-10-23",
        "endpointOnVendorDomain": true,
        "terms": "https://www.magicpatterns.com/docs/documentation/legal/terms",
        "privacy": "https://www.magicpatterns.com/docs/documentation/legal/privacy",
        "statusPage": "https://magicpatterns.statuspage.io/",
        "changelog": "https://www.magicpatterns.com/docs/documentation/feature-releases/changelog",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The terms and privacy policy, both last updated 1 April 2025, name North Park Labs, Inc. d.b.a. Magic Patterns, under Delaware law.",
          "The terms forbid accessing or searching the Services by any means other than the provided interfaces (for example, scraping) and bots that send requests faster than a person could. Public docs pages were read as data.",
          "www.magicpatterns.com/robots.txt disallows /private/, /settings/, /api/ and /_next/ and allows the docs. magicpatterns.statuspage.io/robots.txt disallows /api/ and /embed/, so status history was read from the page and its Atom feed.",
          "/.well-known/security.txt returns 404. The security docs page links a Trust Center at trust.magicpatterns.com for SOC 2 reports and subprocessors, which is drawn by script and wasn't read.",
          "RDAP gives magicpatterns.com a registration date of 23 October 2023. The company was founded in 2023 per its Y Combinator page."
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/magic-patterns.json",
      "live": {
        "slug": "magic-patterns",
        "probe": {
          "target": "https://mcp.magicpatterns.com/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-07T19:22:17.61680344Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 203,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 202,
          "p95ms24h": 514,
          "samples24h": 210,
          "samples30d": 210,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 197,
              "ok": 197
            }
          ]
        },
        "vendorStatus": {
          "page": "https://magicpatterns.statuspage.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:22:26.834177513Z"
        },
        "securityTxt": {
          "url": "https://magicpatterns.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:36.740973899Z"
        },
        "llmsTxt": {
          "url": "https://www.magicpatterns.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:55.846864963Z"
        },
        "pages": [
          {
            "url": "https://www.magicpatterns.com/docs/documentation/feature-releases/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:04.926757349Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1d6fc782fb69"
          },
          {
            "url": "https://www.magicpatterns.com/docs/documentation/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:07.60138431Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "98e04acdbe99"
          },
          {
            "url": "https://www.magicpatterns.com/docs/documentation/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:09.211996324Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "264ce0076e25"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.magicpatterns.com/mcp",
          "checkedAt": "2026-11-07T01:46:04.045898155Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:46:04.045898155Z"
        },
        "updatedAt": "2026-11-07T19:22:17.61680344Z"
      }
    },
    "edges": [
      {
        "by": 16,
        "category": "security",
        "leads": "figma-mcp",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "OAuth 2 with per-resource scopes such as `file_content:read` and `file_comments:write` (the 22 October Teams endpoints add `teams:write`, `folders:write` and `team_members:write`), scoped personal access tokens, and plan access tokens with resource allowlists and expiry of up to a year. The MCP server signs in with OAuth and only catalogue-listed clients can connect (30). Read-only scopes give least privilege on REST. The MCP server has no documented read-only mode, and canvas writes such as `use_figma` run without a confirmation step (13 of 20). File content, layer names and comments written by collaborators reach the model as they are, and we found no prompt-injection guidance (3 of 15). Activity logs and an AI usage API for Enterprise (12 of 15). Figma runs a bug bounty programme on HackerOne (hackerone.com/figma, \"Figma - Bug Bounty Program\"). www.figma.com's robots.txt disallows our crawler on every path, so the security page's certifications read on 1 October are struck and security.txt stays unread. Graded as meta-marketing-api's 13 (bounty route confirmed elsewhere, the vendor's own security pages unread) (13 of 20).",
          "b": "OAuth 2.1 with PKCE S256, dynamic registration and a device flow, issued by oauth.magicpatterns.com with WorkOS keys. Scopes are openid, email, profile and offline_access only, so a token carries the user's whole workspace role. API keys are shown once, with no scopes, expiry or rotation documented (22 of 30). The read-only endpoint doesn't register the 13 tools that create, change or publish. There is no confirmation step on the write endpoint (14 of 20). Tools return design code and chat history that collaborators wrote, and no prompt-injection guidance was found (3 of 15). `x-mp-agent-name` attributes changes in the UI, and audit logs come with Enterprise only (8 of 15). The security page describes encryption, logging and the Render and MongoDB Atlas setup and points to SOC 2 reports in a Trust Center drawn by script, which wasn't read. No security.txt, disclosure policy or bug bounty found (8 of 20). 22 + 14 + 3 + 8 + 8 = 55."
        },
        "scores": {
          "a": 71,
          "b": 55
        }
      },
      {
        "by": 14,
        "category": "maintenance",
        "leads": "figma-mcp",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "REST changelog entry on 22 October 2026 (Teams, folder creation, file duplication and invite endpoints for Enterprise) (30). REST changelog entries on 10 August, 17 September and 22 October (20). Closed service with a public changelog and support. We didn't test support (12 of 15). com.figma.mcp/mcp is in the official registry under a DNS-verified namespace, latest 1.0.3 (15). @figma/rest-api-spec and Code Connect are maintained on npm. We didn't audit their dependencies (7 of 10).",
          "b": "Changelog entry on 5 November 2026, the day before this check (30). Entries on twelve dates since 8 August, among them 23 September and 12 to 30 October (20). Closed service with a public changelog, email support within one to two business days, in-app chat and a Slack community. We didn't test them (12 of 15). Not in the official MCP registry (searches for magic-patterns and magicpatterns returned nothing of theirs). Official Claude connector, Cursor plugin and Codex plugin, and no SDKs (5 of 15). No public package or repository to check (3 of 10). 30 + 20 + 12 + 5 + 3 = 70."
        },
        "scores": {
          "a": 84,
          "b": 70
        }
      },
      {
        "by": 13,
        "category": "payments",
        "leads": "magic-patterns",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402 or other machine payment (0). Seat prices sit on www.figma.com/pricing, whose robots.txt disallows our crawler, so the 30 September reading is struck. MCP calls and the coming usage-based write tools have no per-call price on the developer pages (0 of 20). The help centre says \"The Starter plan is a free Figma plan\", but no readable page states whether a card is needed, so half the line, as anchor-browser's free tier with no card rule (10 of 20). View and Collab seats get 20 MCP calls a month. A person signs up in a browser and approves OAuth, and only catalogue clients can connect (0).",
          "b": "No x402, MPP or L402. A 402 means out of credits, with no payment requirements (0). Seat prices are public and the on-demand rate is $0.02 a credit, but a generation's credit cost isn't known before it runs (typical 70 per generation per the docs), so between plan-only and per-unit (15 of 20). The MCP overview and the plans table say MCP and API-key access need a paid plan, while the v3 API page says free-tier accounts can call v3 up to their credits. Taking the stricter reading for the MCP surface, the free tier gives an agent no MCP access (5 of 20). A person signs in through the browser; dynamic client registration and the device flow still end with a human approval (3 of 20). 0 + 15 + 5 + 3 = 23."
        },
        "scores": {
          "a": 10,
          "b": 23
        }
      },
      {
        "by": 11,
        "category": "reliability",
        "leads": "magic-patterns",
        "name": "Reliability",
        "reasons": {
          "a": "Statuspage at status.figma.com with history, read from its Atom feed (20). From 3 August to 1 November the feed posts four incidents. The 27 September \"Service disruption\" (\"Figma Services are degraded or unavailable because of failures with AWS and other dependencies\", 01:04 to 02:32 UTC) hit every service and reads as a major. The 26 August \"Figma MCP Disruption\" (10:14 to about 14:03 UTC) kept \"some Codex and ChatGPT users\" from seeing MCP tools, so it's partial and minor. The 13 October Figma agent and Make errors and the 30 October Sites publishing problem don't touch the REST API or the MCP server. The 27 July file-editing incident left the window. One major (10). Published limits for REST by tier, seat and plan, and for MCP by seat (Full and Dev up to 200 calls a day and 10 a minute on Professional, 15 on Organization, 600 a day and 20 a minute on Enterprise; View and Collab 20 a month on every plan) (15). REST 429s carry `Retry-After`, `X-Figma-Plan-Tier` and `X-Figma-Rate-Limit-Type`. No idempotency guidance for comment or variable writes (12 of 15). No SLA found on the developer pages (0). REST is GA, and writing to the canvas is still \"free during the beta period\" on the MCP introduction (7 of 10).",
          "b": "Hosted lines, for the MCP server and v3 API. A Statuspage at magicpatterns.statuspage.io with incident history, but its two components are Web Platform and Figma Plugin, with nothing for the API or MCP server (15 of 20). The history page and Atom feed post no incident since 9 January 2026, so the 90 days before this check are clean as far as the page covers (30). The page's /api/ path is disallowed by its robots.txt, so the JSON feeds weren't used. Rate limit published as 1,000 generations per 10 hours per key, with polling no faster than once every 60 seconds (15). No 429, Retry-After or backoff guidance and no idempotency keys. Design-system writes take a `baseArtifactId` and return 409 on a concurrent change, with re-read-and-retry advice (5 of 15). No SLA found below Enterprise's custom contracts (0). The MCP server and v3 API carry no beta label (10). 15 + 30 + 15 + 5 + 0 + 10 = 75."
        },
        "scores": {
          "a": 64,
          "b": 75
        }
      },
      {
        "by": 7,
        "category": "ergonomics",
        "leads": "magic-patterns",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "REST file reads can be cut down with `ids` and `depth`. The MCP server lists 41 tools (18 read, 14 write, 9 Weave; 35 on 1 October), with some remote-only and others desktop-only, and we found no toolsets or read-only subset (15 of 25). Cursor pagination on comments, versions and folders (16 of 20). REST errors carry a status and message (13 of 20). We couldn't confirm readOnlyHint or destructiveHint on the closed MCP server, and REST writes have no idempotency keys. `weave_run_tool` stops with `cost_confirmation_required` until the caller acknowledges the credit cost (8 of 20). TypeScript types for REST and the Code Connect CLI, but no official REST client in two languages (8 of 15).",
          "b": "24 documented tools (15 for 11 to 30), plus 5 back for the read-only endpoint that registers only 12 (20 of 25). Message history pages by 10 and version history by 20 with `skip`, and file reads take a list of names (14 of 20). Documented status codes, a 402 that leaves reads working and non-blocking `validationErrors` on design-system writes (15 of 20). No idempotency keys; 409 conflict checks on design-system writes, and annotations couldn't be read on the closed server (10 of 20). `create_design` needs no parameter and makes a blank scaffold, but there is no official SDK (8 of 15). 20 + 14 + 15 + 10 + 8 = 67."
        },
        "scores": {
          "a": 60,
          "b": 67
        }
      },
      {
        "by": 7,
        "category": "transparency",
        "leads": "figma-mcp",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service. The terms sit on www.figma.com, whose robots.txt disallows our crawler; held at 15 as whatsapp-cloud-api's licence line was with its terms unread (15). The privacy policy and sub-processor list read on 1 October are on the same host and are struck. The help centre's content-training article says training is on by default for Starter and Professional teams and off for Organization and Enterprise, that third-party model providers must delete inputs and outputs after processing, and that Figma upholds its data processing agreements, but it gives no retention period and has no second readable document to agree with (12 of 30). Dated deprecation notices on the developer changelog, such as the v1 projects endpoints on 10 August 2026, but no removal dates (13 of 20). The help article links a sub-processor list for Figma AI that we can't read and mentions data residency commitments without naming locations (5 of 20).",
          "b": "Closed service under terms of service last updated 1 April 2025 (15). The privacy policy of the same date keeps personal data as long as necessary with no periods. The terms let Magic Patterns train on Free plan inputs and outputs and show Free plan designs publicly, and rule out training on paid plans. The subprocessor list sits in the Trust Center, which wasn't readable (14 of 30). No deprecation policy. v2 is 'being deprecated and will be removed in a future release' with no date, and the terms allow any part of the service to be discontinued at any time (5 of 20). The security page names Render and MongoDB Atlas as hosting, and the full subprocessor list wasn't read (8 of 20). 15 + 14 + 5 + 8 = 42."
        },
        "scores": {
          "a": 67,
          "b": 60
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Figma",
        "b": "North Park Labs, Inc. (Magic Patterns)",
        "name": "Vendor"
      },
      {
        "a": "https://api.figma.com/v1",
        "b": "https://mcp.magicpatterns.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "Streamable HTTP, HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "proprietary",
        "b": "Closed service under the Magic Patterns terms of service (last updated 1 April 2025)",
        "name": "Licence"
      },
      {
        "a": "41",
        "b": "24",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "com.figma.mcp/mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-22",
        "b": "2026-11-05",
        "name": "Last release"
      },
      {
        "a": "2026-03-11",
        "b": "2025-04-01",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2025-04-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes, with an opt-out",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "456k npm/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Figma API + MCP and Magic Patterns score within a point of each other on agent readiness, 63.4 (B) and 63.4 (B). Magic Patterns leads on reliability, agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Figma API + MCP or Magic Patterns?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Figma API + MCP and Magic Patterns need an API key?"
      },
      {
        "answer": "Yes. Figma API + MCP has a hosted endpoint at https://api.figma.com/v1 and Magic Patterns at https://mcp.magicpatterns.com/mcp.",
        "question": "Can an agent call Figma API + MCP and Magic Patterns without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 71 against 55",
          "Maintenance \u0026 community, 84 against 70",
          "Transparency \u0026 trust, 67 against 60"
        ],
        "also": null,
        "goodFor": "Design-to-code agents and teams already paying for Dev or Full seats.",
        "slug": "figma-mcp",
        "watchFor": "View and Collab seats get 20 MCP calls a month on every plan"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 64",
          "Agent ergonomics, 67 against 60",
          "Payments \u0026 pricing, 23 against 10"
        ],
        "also": null,
        "goodFor": "Generating and iterating on coded React prototypes from a coding agent, and pulling a design into a codebase.",
        "slug": "magic-patterns",
        "watchFor": "MCP and API-key access need a paid seat, Starter at $20 a month"
      }
    ],
    "history": {
      "figma-mcp": [
        {
          "causes": [
            "correction"
          ],
          "date": "2026-11-01",
          "delta": -2.7,
          "from": 66.1,
          "fromGrade": "B",
          "to": 63.4,
          "toGrade": "B"
        },
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-10-28",
          "delta": 0.1,
          "from": 66,
          "fromGrade": "B",
          "to": 66.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.1,
          "from": 66.1,
          "fromGrade": "B",
          "to": 66,
          "toGrade": "B"
        }
      ],
      "magic-patterns": null
    },
    "job": {
      "capability": "design.files",
      "name": "Design files"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-framelink-figma-mcp.json",
        "title": "Figma API + MCP vs Framelink MCP for Figma",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-framelink-figma-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer.json",
        "title": "Figma API + MCP vs Framer Server API",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-kite-new.json",
        "title": "Figma API + MCP vs Kite",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-kite-new"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-melius.json",
        "title": "Figma API + MCP vs Melius",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-melius"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-miro.json",
        "title": "Figma API + MCP vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-pen-dev.json",
        "title": "Figma API + MCP vs pen.dev",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-pen-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-penpot.json",
        "title": "Figma API + MCP vs Penpot API + MCP",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-penpot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-sketch.json",
        "title": "Figma API + MCP vs Sketch",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-sketch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-subframe.json",
        "title": "Figma API + MCP vs Subframe",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-subframe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-zeplin.json",
        "title": "Figma API + MCP vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-zeplin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.json",
        "title": "Framelink MCP for Figma vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framer-vs-magic-patterns.json",
        "title": "Framer Server API vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/framer-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kite-new-vs-magic-patterns.json",
        "title": "Kite vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/kite-new-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-miro.json",
        "title": "Magic Patterns vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-impeccable.json",
        "title": "Figma API + MCP vs Impeccable",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-impeccable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/impeccable-vs-magic-patterns.json",
        "title": "Impeccable vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/impeccable-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-pen-dev.json",
        "title": "Magic Patterns vs pen.dev",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-pen-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-penpot.json",
        "title": "Magic Patterns vs Penpot API + MCP",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-penpot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-sketch.json",
        "title": "Magic Patterns vs Sketch",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-sketch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-subframe.json",
        "title": "Magic Patterns vs Subframe",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-subframe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp.json",
        "title": "Magic Patterns vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-zeplin.json",
        "title": "Magic Patterns vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-zeplin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp.json",
        "title": "Figma API + MCP vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius.json",
        "title": "Magic Patterns vs Melius",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-uxkin-agent.json",
        "title": "Figma API + MCP vs UXKIN",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-uxkin-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-uxkin-agent.json",
        "title": "Magic Patterns vs UXKIN",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-uxkin-agent"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 11,
        "edge": "magic-patterns",
        "figma-mcp": 64,
        "key": "reliability",
        "magic-patterns": 75,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "edge": "figma-mcp",
        "figma-mcp": 86,
        "key": "schema",
        "magic-patterns": 84,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 7,
        "edge": "magic-patterns",
        "figma-mcp": 60,
        "key": "ergonomics",
        "magic-patterns": 67,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 16,
        "edge": "figma-mcp",
        "figma-mcp": 71,
        "key": "security",
        "magic-patterns": 55,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 13,
        "edge": "magic-patterns",
        "figma-mcp": 10,
        "key": "payments",
        "magic-patterns": 23,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "figma-mcp",
        "figma-mcp": 84,
        "key": "maintenance",
        "magic-patterns": 70,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 7,
        "edge": "figma-mcp",
        "figma-mcp": 67,
        "key": "transparency",
        "magic-patterns": 60,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Figma API + MCP and Magic Patterns score within a point of each other on agent readiness, 63.4 (B) and 63.4 (B). Magic Patterns leads on reliability, agent ergonomics and payments \u0026 pricing. Both do design files.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "figma-mcp": "OpenAPI spec, TypeScript types and an llms.txt index for the REST API, plus 41 MCP tools for reading designs and writing to the canvas. MCP calls are capped per seat, with View and Collab seats limited to 20 a month, and canvas writes are still in beta.",
      "magic-patterns": "Agents can create, prompt, read and edit coded prototypes through 24 documented MCP tools or a matching REST API, with a read-only endpoint and 409 conflict checks on writes. MCP access needs a paid seat from $20 a month, OAuth scopes don't narrow access below the user's role, and the status page doesn't track the API or MCP server."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns",
    "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.min.md"
  },
  "markdown": "Figma API + MCP and Magic Patterns score within a point of each other on agent readiness, 63.4 (B) and 63.4 (B). Magic Patterns leads on reliability, agent ergonomics and payments \u0026 pricing. Both do design files.\n\n- Figma API + MCP: grade B, 63.4/100, rank #517 of 1510. Markdown https://www.anchorterminal.com/tools/figma-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/figma-mcp.json\n- Magic Patterns: grade B, 63.4/100, rank #519 of 1510. Markdown https://www.anchorterminal.com/tools/magic-patterns.md · JSON https://www.anchorterminal.com/api/v1/tools/magic-patterns.json\n- Best design workspace and canvas APIs for AI agents: https://www.anchorterminal.com/best/design/index.md\n- All 133 design comparisons: https://www.anchorterminal.com/compare/design/index.md\n\n## Which one, for what\n\n### Figma API + MCP (B)\n\nGood for: Design-to-code agents and teams already paying for Dev or Full seats.\n\nAhead on:\n- Security \u0026 auth, 71 against 55\n- Maintenance \u0026 community, 84 against 70\n- Transparency \u0026 trust, 67 against 60\n\nWatch for: View and Collab seats get 20 MCP calls a month on every plan\n\n### Magic Patterns (B)\n\nGood for: Generating and iterating on coded React prototypes from a coding agent, and pulling a design into a codebase.\n\nAhead on:\n- Reliability, 75 against 64\n- Agent ergonomics, 67 against 60\n- Payments \u0026 pricing, 23 against 10\n\nWatch for: MCP and API-key access need a paid seat, Starter at $20 a month\n\n\n## Why the edge\n\n### Security \u0026 auth: Figma API + MCP +16\n\n- Figma API + MCP (71): OAuth 2 with per-resource scopes such as `file_content:read` and `file_comments:write` (the 22 October Teams endpoints add `teams:write`, `folders:write` and `team_members:write`), scoped personal access tokens, and plan access tokens with resource allowlists and expiry of up to a year. The MCP server signs in with OAuth and only catalogue-listed clients can connect (30). Read-only scopes give least privilege on REST. The MCP server has no documented read-only mode, and canvas writes such as `use_figma` run without a confirmation step (13 of 20). File content, layer names and comments written by collaborators reach the model as they are, and we found no prompt-injection guidance (3 of 15). Activity logs and an AI usage API for Enterprise (12 of 15). Figma runs a bug bounty programme on HackerOne (hackerone.com/figma, \"Figma - Bug Bounty Program\"). www.figma.com's robots.txt disallows our crawler on every path, so the security page's certifications read on 1 October are struck and security.txt stays unread. Graded as meta-marketing-api's 13 (bounty route confirmed elsewhere, the vendor's own security pages unread) (13 of 20).\n- Magic Patterns (55): OAuth 2.1 with PKCE S256, dynamic registration and a device flow, issued by oauth.magicpatterns.com with WorkOS keys. Scopes are openid, email, profile and offline_access only, so a token carries the user's whole workspace role. API keys are shown once, with no scopes, expiry or rotation documented (22 of 30). The read-only endpoint doesn't register the 13 tools that create, change or publish. There is no confirmation step on the write endpoint (14 of 20). Tools return design code and chat history that collaborators wrote, and no prompt-injection guidance was found (3 of 15). `x-mp-agent-name` attributes changes in the UI, and audit logs come with Enterprise only (8 of 15). The security page describes encryption, logging and the Render and MongoDB Atlas setup and points to SOC 2 reports in a Trust Center drawn by script, which wasn't read. No security.txt, disclosure policy or bug bounty found (8 of 20). 22 + 14 + 3 + 8 + 8 = 55.\n\n### Maintenance \u0026 community: Figma API + MCP +14\n\n- Figma API + MCP (84): REST changelog entry on 22 October 2026 (Teams, folder creation, file duplication and invite endpoints for Enterprise) (30). REST changelog entries on 10 August, 17 September and 22 October (20). Closed service with a public changelog and support. We didn't test support (12 of 15). com.figma.mcp/mcp is in the official registry under a DNS-verified namespace, latest 1.0.3 (15). @figma/rest-api-spec and Code Connect are maintained on npm. We didn't audit their dependencies (7 of 10).\n- Magic Patterns (70): Changelog entry on 5 November 2026, the day before this check (30). Entries on twelve dates since 8 August, among them 23 September and 12 to 30 October (20). Closed service with a public changelog, email support within one to two business days, in-app chat and a Slack community. We didn't test them (12 of 15). Not in the official MCP registry (searches for magic-patterns and magicpatterns returned nothing of theirs). Official Claude connector, Cursor plugin and Codex plugin, and no SDKs (5 of 15). No public package or repository to check (3 of 10). 30 + 20 + 12 + 5 + 3 = 70.\n\n### Payments \u0026 pricing: Magic Patterns +13\n\n- Figma API + MCP (10): No x402 or other machine payment (0). Seat prices sit on www.figma.com/pricing, whose robots.txt disallows our crawler, so the 30 September reading is struck. MCP calls and the coming usage-based write tools have no per-call price on the developer pages (0 of 20). The help centre says \"The Starter plan is a free Figma plan\", but no readable page states whether a card is needed, so half the line, as anchor-browser's free tier with no card rule (10 of 20). View and Collab seats get 20 MCP calls a month. A person signs up in a browser and approves OAuth, and only catalogue clients can connect (0).\n- Magic Patterns (23): No x402, MPP or L402. A 402 means out of credits, with no payment requirements (0). Seat prices are public and the on-demand rate is $0.02 a credit, but a generation's credit cost isn't known before it runs (typical 70 per generation per the docs), so between plan-only and per-unit (15 of 20). The MCP overview and the plans table say MCP and API-key access need a paid plan, while the v3 API page says free-tier accounts can call v3 up to their credits. Taking the stricter reading for the MCP surface, the free tier gives an agent no MCP access (5 of 20). A person signs in through the browser; dynamic client registration and the device flow still end with a human approval (3 of 20). 0 + 15 + 5 + 3 = 23.\n\n### Reliability: Magic Patterns +11\n\n- Figma API + MCP (64): Statuspage at status.figma.com with history, read from its Atom feed (20). From 3 August to 1 November the feed posts four incidents. The 27 September \"Service disruption\" (\"Figma Services are degraded or unavailable because of failures with AWS and other dependencies\", 01:04 to 02:32 UTC) hit every service and reads as a major. The 26 August \"Figma MCP Disruption\" (10:14 to about 14:03 UTC) kept \"some Codex and ChatGPT users\" from seeing MCP tools, so it's partial and minor. The 13 October Figma agent and Make errors and the 30 October Sites publishing problem don't touch the REST API or the MCP server. The 27 July file-editing incident left the window. One major (10). Published limits for REST by tier, seat and plan, and for MCP by seat (Full and Dev up to 200 calls a day and 10 a minute on Professional, 15 on Organization, 600 a day and 20 a minute on Enterprise; View and Collab 20 a month on every plan) (15). REST 429s carry `Retry-After`, `X-Figma-Plan-Tier` and `X-Figma-Rate-Limit-Type`. No idempotency guidance for comment or variable writes (12 of 15). No SLA found on the developer pages (0). REST is GA, and writing to the canvas is still \"free during the beta period\" on the MCP introduction (7 of 10).\n- Magic Patterns (75): Hosted lines, for the MCP server and v3 API. A Statuspage at magicpatterns.statuspage.io with incident history, but its two components are Web Platform and Figma Plugin, with nothing for the API or MCP server (15 of 20). The history page and Atom feed post no incident since 9 January 2026, so the 90 days before this check are clean as far as the page covers (30). The page's /api/ path is disallowed by its robots.txt, so the JSON feeds weren't used. Rate limit published as 1,000 generations per 10 hours per key, with polling no faster than once every 60 seconds (15). No 429, Retry-After or backoff guidance and no idempotency keys. Design-system writes take a `baseArtifactId` and return 409 on a concurrent change, with re-read-and-retry advice (5 of 15). No SLA found below Enterprise's custom contracts (0). The MCP server and v3 API carry no beta label (10). 15 + 30 + 15 + 5 + 0 + 10 = 75.\n\n### Agent ergonomics: Magic Patterns +7\n\n- Figma API + MCP (60): REST file reads can be cut down with `ids` and `depth`. The MCP server lists 41 tools (18 read, 14 write, 9 Weave; 35 on 1 October), with some remote-only and others desktop-only, and we found no toolsets or read-only subset (15 of 25). Cursor pagination on comments, versions and folders (16 of 20). REST errors carry a status and message (13 of 20). We couldn't confirm readOnlyHint or destructiveHint on the closed MCP server, and REST writes have no idempotency keys. `weave_run_tool` stops with `cost_confirmation_required` until the caller acknowledges the credit cost (8 of 20). TypeScript types for REST and the Code Connect CLI, but no official REST client in two languages (8 of 15).\n- Magic Patterns (67): 24 documented tools (15 for 11 to 30), plus 5 back for the read-only endpoint that registers only 12 (20 of 25). Message history pages by 10 and version history by 20 with `skip`, and file reads take a list of names (14 of 20). Documented status codes, a 402 that leaves reads working and non-blocking `validationErrors` on design-system writes (15 of 20). No idempotency keys; 409 conflict checks on design-system writes, and annotations couldn't be read on the closed server (10 of 20). `create_design` needs no parameter and makes a blank scaffold, but there is no official SDK (8 of 15). 20 + 14 + 15 + 10 + 8 = 67.\n\n### Transparency \u0026 trust: Figma API + MCP +7\n\n- Figma API + MCP (67): Closed service. The terms sit on www.figma.com, whose robots.txt disallows our crawler; held at 15 as whatsapp-cloud-api's licence line was with its terms unread (15). The privacy policy and sub-processor list read on 1 October are on the same host and are struck. The help centre's content-training article says training is on by default for Starter and Professional teams and off for Organization and Enterprise, that third-party model providers must delete inputs and outputs after processing, and that Figma upholds its data processing agreements, but it gives no retention period and has no second readable document to agree with (12 of 30). Dated deprecation notices on the developer changelog, such as the v1 projects endpoints on 10 August 2026, but no removal dates (13 of 20). The help article links a sub-processor list for Figma AI that we can't read and mentions data residency commitments without naming locations (5 of 20).\n- Magic Patterns (60): Closed service under terms of service last updated 1 April 2025 (15). The privacy policy of the same date keeps personal data as long as necessary with no periods. The terms let Magic Patterns train on Free plan inputs and outputs and show Free plan designs publicly, and rule out training on paid plans. The subprocessor list sits in the Trust Center, which wasn't readable (14 of 30). No deprecation policy. v2 is 'being deprecated and will be removed in a future release' with no date, and the terms allow any part of the service to be discontinued at any time (5 of 20). The security page names Render and MongoDB Atlas as hosting, and the full subprocessor list wasn't read (8 of 20). 15 + 14 + 5 + 8 = 42.\n\n## Score by category\n\n| Category | Weight | Figma API + MCP | Magic Patterns | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 64 | 75 | Magic Patterns +11 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 84 | Figma API + MCP +2 |\n| Agent ergonomics | 13% (16.2 this run) | 60 | 67 | Magic Patterns +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 71 | 55 | Figma API + MCP +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 23 | Magic Patterns +13 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 84 | 70 | Figma API + MCP +14 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 67 | 60 | Figma API + MCP +7 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.4 · B** | **63.4 · B** | |\n\n## Facts side by side\n\n| Fact | Figma API + MCP | Magic Patterns |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Figma | North Park Labs, Inc. (Magic Patterns) |\n| Hosted endpoint | `https://api.figma.com/v1` | `https://mcp.magicpatterns.com/mcp` |\n| Transports | HTTP, Streamable HTTP | Streamable HTTP, HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | proprietary | Closed service under the Magic Patterns terms of service (last updated 1 April 2025) |\n| Tools exposed | 41 | 24 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| MCP registry | `com.figma.mcp/mcp` | not listed |\n| Last release | 2026-10-22 | 2026-11-05 |\n| Terms last updated | 2026-03-11 | 2025-04-01 |\n| Privacy policy last updated | no date given | 2025-04-01 |\n| Customer content may train models | yes, with an opt-out | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 456k npm/wk | none |\n| Agent reviews | 3.5/5 (2) | none |\n\n## How the scores have moved\n\n### Figma API + MCP\n\n- -2.7 on 1 November 2026: correction\n- +0.1 on 28 October 2026: new evidence\n- -0.1 on 8 October 2026: checklist\n\n### Magic Patterns\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Figma API + MCP.** OpenAPI spec, TypeScript types and an llms.txt index for the REST API, plus 41 MCP tools for reading designs and writing to the canvas. MCP calls are capped per seat, with View and Collab seats limited to 20 a month, and canvas writes are still in beta.\n\n**Magic Patterns.** Agents can create, prompt, read and edit coded prototypes through 24 documented MCP tools or a matching REST API, with a read-only endpoint and 409 conflict checks on writes. MCP access needs a paid seat from $20 a month, OAuth scopes don't narrow access below the user's role, and the status page doesn't track the API or MCP server.\n\n## Before you call either\n\n### Figma API + MCP\n\n1. Pass `ids=` and `depth=` to `GET /v1/files/:key`. A whole file is large\n2. `GET /v1/images/:key` renders nodes to PNG, JPG, SVG or PDF and returns short-lived URLs\n3. On 429 read `Retry-After`. Limits are per user and app for OAuth, per user for personal tokens and per token for plan tokens\n4. Use the v2 folders endpoints. The v1 projects endpoints were deprecated on 10 August 2026\n5. Confirm the credit cost with the user when `weave_run_tool` returns `cost_confirmation_required`\n\n### Magic Patterns\n\n1. Use https://mcp.magicpatterns.com/mcp/readonly when the task only reads designs\n2. Call `get_design_status` before any change and poll it no more than once every 60 seconds\n3. Pass `baseArtifactId` from `get_design_system` on writes, and on 409 re-read before retrying\n4. Treat a 402 as out of credits and ask the user; read tools keep working\n5. Send `x-mp-agent-name` so the user sees which agent made a change\n\n## Questions\n\n### Which is better for AI agents, Figma API + MCP or Magic Patterns?\n\nFigma API + MCP and Magic Patterns score within a point of each other on agent readiness, 63.4 (B) and 63.4 (B). Magic Patterns leads on reliability, agent ergonomics and payments \u0026 pricing.\n\n### Do Figma API + MCP and Magic Patterns need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Figma API + MCP and Magic Patterns without installing anything?\n\nYes. Figma API + MCP has a hosted endpoint at https://api.figma.com/v1 and Magic Patterns at https://mcp.magicpatterns.com/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.json, and with the fewest tokens: https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"figma-mcp\", \"b\": \"magic-patterns\"}`. From a terminal: `anchor compare figma-mcp magic-patterns`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/figma-mcp.json and https://www.anchorterminal.com/api/v1/tools/magic-patterns.json\n\n## Other comparisons with Figma API + MCP or Magic Patterns\n\n- [Figma API + MCP vs Framelink MCP for Figma](https://www.anchorterminal.com/compare/figma-mcp-vs-framelink-figma-mcp.md)\n- [Figma API + MCP vs Framer Server API](https://www.anchorterminal.com/compare/figma-mcp-vs-framer.md)\n- [Figma API + MCP vs Kite](https://www.anchorterminal.com/compare/figma-mcp-vs-kite-new.md)\n- [Figma API + MCP vs Melius](https://www.anchorterminal.com/compare/figma-mcp-vs-melius.md)\n- [Figma API + MCP vs Miro API + MCP](https://www.anchorterminal.com/compare/figma-mcp-vs-miro.md)\n- [Figma API + MCP vs pen.dev](https://www.anchorterminal.com/compare/figma-mcp-vs-pen-dev.md)\n- [Figma API + MCP vs Penpot API + MCP](https://www.anchorterminal.com/compare/figma-mcp-vs-penpot.md)\n- [Figma API + MCP vs Sketch](https://www.anchorterminal.com/compare/figma-mcp-vs-sketch.md)\n- [Figma API + MCP vs Subframe](https://www.anchorterminal.com/compare/figma-mcp-vs-subframe.md)\n- [Figma API + MCP vs Zeplin](https://www.anchorterminal.com/compare/figma-mcp-vs-zeplin.md)\n- [Framelink MCP for Figma vs Magic Patterns](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.md)\n- [Framer Server API vs Magic Patterns](https://www.anchorterminal.com/compare/framer-vs-magic-patterns.md)\n- [Kite vs Magic Patterns](https://www.anchorterminal.com/compare/kite-new-vs-magic-patterns.md)\n- [Magic Patterns vs Miro API + MCP](https://www.anchorterminal.com/compare/magic-patterns-vs-miro.md)\n- [Figma API + MCP vs Impeccable](https://www.anchorterminal.com/compare/figma-mcp-vs-impeccable.md)\n- [Impeccable vs Magic Patterns](https://www.anchorterminal.com/compare/impeccable-vs-magic-patterns.md)\n- [Magic Patterns vs pen.dev](https://www.anchorterminal.com/compare/magic-patterns-vs-pen-dev.md)\n- [Magic Patterns vs Penpot API + MCP](https://www.anchorterminal.com/compare/magic-patterns-vs-penpot.md)\n- [Magic Patterns vs Sketch](https://www.anchorterminal.com/compare/magic-patterns-vs-sketch.md)\n- [Magic Patterns vs Subframe](https://www.anchorterminal.com/compare/magic-patterns-vs-subframe.md)\n- [Magic Patterns vs UX Pilot MCP server](https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp.md)\n- [Magic Patterns vs Zeplin](https://www.anchorterminal.com/compare/magic-patterns-vs-zeplin.md)\n- [Figma API + MCP vs UX Pilot MCP server](https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp.md)\n- [Magic Patterns vs Melius](https://www.anchorterminal.com/compare/magic-patterns-vs-melius.md)\n- [Figma API + MCP vs UXKIN](https://www.anchorterminal.com/compare/figma-mcp-vs-uxkin-agent.md)\n- [Magic Patterns vs UXKIN](https://www.anchorterminal.com/compare/magic-patterns-vs-uxkin-agent.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Figma API + MCP vs Magic Patterns",
        "url": ""
      }
    ],
    "description": "Figma and Magic Patterns score within a point of each other for design files, 63.4 and 63.4 out of 100. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Figma API + MCP B 63.4",
      "Magic Patterns B 63.4",
      "scores"
    ],
    "h1": "Figma API + MCP vs Magic Patterns",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/figma-mcp-vs-magic-patterns",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Figma vs Magic Patterns for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns"
  },
  "tokens": {
    "markdown": 5050,
    "slim": 3230
  },
  "version": 1
}
