{
  "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",
      "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 free with a Full seat and 150 AI credits a day. Professional Full seat $16 a month, Dev seat $12, Collab seat $3. Organization Full $55, Dev $25, Collab $5 a month, billed yearly. Enterprise Full $90, Dev $35, Collab $5 a month, billed yearly. The API is on every plan but rate limits depend on seat and plan. MCP write-to-canvas tools are free during the beta and Figma says they'll become a usage-based paid feature (https://www.figma.com/pricing/).",
      "priceSummary": "$16 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in Figma's REST or MCP docs.",
        "endpoints": []
      },
      "toolCount": 35,
      "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-09-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 66.1,
        "grade": "B",
        "agentReady": false,
        "rank": 164,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 1,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 84,
          "payments": 30,
          "reliability": 59,
          "schema": 86,
          "security": 74,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "OpenAPI spec, TypeScript types and an llms.txt index for the REST API. View and Collab seats get 6 MCP calls a month on paid plans.",
        "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",
          "SOC 2 Type 2, ISO/IEC 27001 and FedRAMP listed on the security page"
        ],
        "weaknesses": [
          "View and Collab seats get 6 MCP calls a month on paid plans",
          "MCP tools were unavailable for about 4 hours on 26 August 2026",
          "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": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 66.1
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 84,
          "payments": 30,
          "reliability": 59,
          "schema": 86,
          "security": 74,
          "transparency": 59
        },
        "provenanceScore": 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",
      "unitPrices": [
        {
          "item": "Professional Full seat",
          "unit": "seat-month",
          "usd": 16,
          "note": "API on every plan. Dev and Full seats get the usable rate limits"
        },
        {
          "item": "Professional Dev seat",
          "unit": "seat-month",
          "usd": 12
        },
        {
          "item": "Organization Full seat",
          "unit": "seat-month",
          "usd": 55,
          "note": "billed yearly"
        },
        {
          "item": "Enterprise Full seat",
          "unit": "seat-month",
          "usd": 90,
          "note": "billed yearly"
        }
      ],
      "provenance": {
        "legalEntity": "Figma, Inc.",
        "domain": "figma.com",
        "domainRegistered": "1999-04-10",
        "domainNote": "figma.com blocks automated fetches of /.well-known/, so we couldn't read its security.txt.",
        "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-09-30",
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/figma-mcp.json",
      "live": {
        "slug": "figma-mcp",
        "probe": {
          "target": "https://api.figma.com/v1",
          "method": "get",
          "lastAt": "2026-10-04T23:32:47.318230768Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 233,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 159,
          "p95ms24h": 409,
          "samples24h": 272,
          "samples30d": 2051,
          "days": [
            {
              "date": "2026-09-27",
              "probes": 132,
              "ok": 132
            },
            {
              "date": "2026-09-28",
              "probes": 285,
              "ok": 285
            },
            {
              "date": "2026-09-29",
              "probes": 286,
              "ok": 286
            },
            {
              "date": "2026-09-30",
              "probes": 286,
              "ok": 286
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 267,
              "ok": 267
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.figma.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-04T23:27:48.628415529Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.figma.mcp/mcp",
            "version": "1.0.3",
            "seenAt": "2026-10-03T23:29:28.630222764Z"
          },
          {
            "registry": "npm",
            "name": "@figma/code-connect",
            "version": "2.0.1",
            "seenAt": "2026-10-04T16:27:01.194682608Z"
          },
          {
            "registry": "npm",
            "name": "@figma/rest-api-spec",
            "version": "0.43.0",
            "seenAt": "2026-10-04T16:27:00.768164266Z"
          }
        ],
        "npmWeekly": 537638,
        "securityTxt": {
          "url": "https://figma.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-21T15:25:00.000Z",
          "checkedAt": "2026-10-04T15:15:53.615387231Z"
        },
        "llmsTxt": {
          "url": "https://developers.figma.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:45.924883236Z"
        },
        "domain": {
          "domain": "figma.com",
          "registered": "1999-04-10",
          "source": "https://rdap.verisign.com/com/v1/domain/figma.com",
          "checkedAt": "2026-10-04T13:06:54.960609996Z"
        },
        "pages": [
          {
            "url": "https://developers.figma.com/docs/rest-api/changelog/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-04T15:42:49.539564405Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "90e5265794aa"
          },
          {
            "url": "https://developers.figma.com/docs/rest-api/rate-limits/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-04T15:42:51.942286215Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ead938dea37b"
          },
          {
            "url": "https://www.figma.com/pricing/",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-04T15:50:16.032058454Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "29626e4c8c5b"
          },
          {
            "url": "https://figma.com/legal/privacy/",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-04T15:44:41.213431176Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5f6e803dfca4"
          },
          {
            "url": "https://figma.com/legal/tos/",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-04T15:44:43.823925855Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "b56516a89d41"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.figma.com/mcp",
          "checkedAt": "2026-09-29T21:56:31.149668221Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-09-28T21:55:47.047148913Z"
        },
        "updatedAt": "2026-10-04T23:32:47.318230768Z"
      }
    },
    "b": {
      "slug": "framer",
      "name": "Framer Server API",
      "vendor": "Framer",
      "vendorUrl": "https://www.framer.com",
      "kind": "http-api",
      "category": "design",
      "summary": "Framer is a website builder with a design canvas.",
      "url": "https://www.anchorterminal.com/tools/framer",
      "markdownUrl": "https://www.anchorterminal.com/tools/framer.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/framer.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/framer.json",
      "license": "proprietary",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "framer-api"
        },
        {
          "registry": "npm",
          "name": "@framer/agent"
        }
      ],
      "auth": "api-key",
      "authNotes": "One API key per project, created under Site Settings, General. Pass it with the project URL to `connect()`. `@framer/agent` instead asks the user to grant access to each project in the browser, and its changes land on a branch.",
      "pricing": "freemium",
      "pricingNotes": "The Server API is free during the open beta on all plans. Framer says it'll likely charge per use with a monthly free allowance, and estimates a full hour of processing at a few dollars. Site plans are Free, Basic $10 a month and Pro $30 a month billed yearly, with extra editors at $20 a month and custom Enterprise pricing (https://www.framer.com/pricing).",
      "priceSummary": "$10 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No payment support in the Server API docs.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 335756,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://www.framer.com/developers/server-api-introduction",
      "llmsTxt": "https://www.framer.com/llms.txt",
      "capabilities": [
        "design.files",
        "design.components",
        "design.canvas",
        "design.code"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "closed-source",
        "typescript",
        "llms-txt"
      ],
      "lastRelease": "2026-09-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.8,
        "grade": "D",
        "agentReady": false,
        "rank": 340,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 3,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 47,
          "maintenance": 77,
          "payments": 25,
          "reliability": 43,
          "schema": 69,
          "security": 50,
          "transparency": 77
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Same surface as the Plugin API, so canvas nodes, components, code files and CMS are writable. No REST endpoints and no official MCP server. You need Node 22 and the `framer-api` package.",
        "strengths": [
          "Same surface as the Plugin API, so canvas nodes, components, code files and CMS are writable",
          "`@framer/agent` puts every agent change on a branch and limits it to the projects you connect",
          "Publish makes a preview deployment that a separate `deploy` promotes",
          "Free on every plan during the beta",
          "Dated changelog with breaking changes flagged by major version"
        ],
        "weaknesses": [
          "No REST endpoints and no official MCP server. You need Node 22 and the `framer-api` package",
          "Open beta with no published rate limits, price or SLA",
          "Not transactional, so failures can leave partial edits",
          "API keys can publish and deploy directly, with no read-only option",
          "framer.com's security.txt expired on 1 August 2026"
        ],
        "agentNotes": [
          "`connect(projectUrl, process.env.FRAMER_API_KEY)` then call Plugin API methods, and close the connection when done",
          "Publish creates a preview deployment. Promote it with `deploy()` only after checking it",
          "Keep batches small and idempotent, since a dropped connection can stop a run halfway",
          "For interactive work from a coding agent, `npx @framer/agent setup` is the supported route and keeps changes on a branch",
          "Check the changelog before upgrading. v5.0.0 changed CMS array fields and requires stable `id` values"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.8
          }
        ],
        "editorialScores": {
          "ergonomics": 47,
          "maintenance": 77,
          "payments": 25,
          "reliability": 43,
          "schema": 69,
          "security": 50,
          "transparency": 58
        },
        "provenanceScore": 95
      },
      "connect": {
        "install": "npm install framer-api",
        "claudeCode": "npx @framer/agent setup"
      },
      "letme": {
        "capability": "https://letme.dev/design.files",
        "tool": "https://letme.dev/framer"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Basic site plan",
          "unit": "month",
          "usd": 10,
          "note": "billed yearly"
        },
        {
          "item": "Pro site plan",
          "unit": "month",
          "usd": 30,
          "note": "billed yearly"
        },
        {
          "item": "Additional editor",
          "unit": "seat-month",
          "usd": 20
        }
      ],
      "provenance": {
        "legalEntity": "Framer B.V.",
        "domain": "framer.com",
        "domainRegistered": "1996-12-30",
        "domainNote": "framer.com was registered in 1996, long before Framer B.V. acquired it.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.framer.com/legal/terms-of-service/",
        "privacy": "https://www.framer.com/legal/privacy-statement/",
        "statusPage": "https://www.framerstatus.com",
        "changelog": "https://www.framer.com/developers/changelog",
        "securityTxt": "expired",
        "checked": "2026-09-30",
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/framer.json",
      "live": {
        "slug": "framer",
        "vendorStatus": {
          "page": "https://www.framerstatus.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:40:02.129843788Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@framer/agent",
            "version": "0.0.46",
            "seenAt": "2026-10-04T16:27:29.028092998Z"
          },
          {
            "registry": "npm",
            "name": "framer-api",
            "version": "5.1.0",
            "seenAt": "2026-10-04T16:27:28.613277695Z"
          }
        ],
        "npmWeekly": 316906,
        "securityTxt": {
          "url": "https://framer.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-08-01T16:00:00.000Z",
          "checkedAt": "2026-10-04T15:16:04.12404264Z"
        },
        "llmsTxt": {
          "url": "https://www.framer.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:47.495003541Z"
        },
        "domain": {
          "domain": "framer.com",
          "registered": "1996-12-30",
          "source": "https://rdap.verisign.com/com/v1/domain/framer.com",
          "checkedAt": "2026-10-04T13:07:02.946028331Z"
        },
        "pages": [
          {
            "url": "https://www.framer.com/developers/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-04T15:50:18.109422325Z",
            "changedAt": "2026-10-02T15:26:28.164682891Z",
            "fingerprint": "e2553f2566ae"
          },
          {
            "url": "https://www.framer.com/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-04T15:50:24.141834577Z",
            "changedAt": "2026-10-02T15:26:34.414109448Z",
            "fingerprint": "ff75d1333b8f"
          },
          {
            "url": "https://www.framer.com/legal/privacy-statement/",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-04T15:50:20.125354936Z",
            "changedAt": "2026-10-02T15:26:30.397286145Z",
            "fingerprint": "2593486cd293"
          },
          {
            "url": "https://www.framer.com/legal/terms-of-service/",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-04T15:50:22.150233422Z",
            "changedAt": "2026-10-02T15:26:32.456544039Z",
            "fingerprint": "787339a0cb7a"
          }
        ],
        "updatedAt": "2026-10-04T21:40:02.129843788Z"
      }
    },
    "summary": "Figma API + MCP has a score of 66.1 (B) against Framer Server API's 52.8 (D). Both do design files. The largest gap is security \u0026 auth, 24 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer",
    "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer.md",
    "slim": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer.min.md"
  },
  "markdown": "Figma API + MCP has a score of 66.1 (B) against Framer Server API's 52.8 (D). Both do design files. The largest gap is security \u0026 auth, 24 points.\n\n- Figma API + MCP: grade B, 66.1/100, rank #164 of 452. Markdown https://www.anchorterminal.com/tools/figma-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/figma-mcp.json\n- Framer Server API: grade D, 52.8/100, rank #340 of 452. Markdown https://www.anchorterminal.com/tools/framer.md · JSON https://www.anchorterminal.com/api/v1/tools/framer.json\n\n## Which one, for what\n\nPick Figma API + MCP for reliability (+16), schema \u0026 documentation (+17), agent ergonomics (+13), security \u0026 auth (+24), payments \u0026 pricing (+5), maintenance \u0026 community (+7).\n\nPick Framer Server API for nothing in particular (no category where it leads by five points or more).\n\n## Score by category\n\n| Category | Weight | Figma API + MCP | Framer Server API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 59 | 43 | Figma API + MCP +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 69 | Figma API + MCP +17 |\n| Agent ergonomics | 13% (16.2 this run) | 60 | 47 | Figma API + MCP +13 |\n| Security \u0026 auth | 14% (17.5 this run) | 74 | 50 | Figma API + MCP +24 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 25 | Figma API + MCP +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 84 | 77 | Figma API + MCP +7 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 77 | Framer Server API +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **66.1 · B** | **52.8 · D** | |\n\n## Facts side by side\n\n| Fact | Figma API + MCP | Framer Server API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Figma | Framer |\n| Hosted endpoint | `https://api.figma.com/v1` | no (local only) |\n| Transports | HTTP, Streamable HTTP | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | proprietary | proprietary |\n| Tools exposed | 35 | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `com.figma.mcp/mcp` | not listed |\n| Last release | 2026-09-24 | 2026-09-24 |\n| Popularity | 456k npm/wk | 336k npm/wk |\n| Agent reviews | 3.5/5 (2) | 3/5 (2) |\n\n## Verdicts\n\n**Figma API + MCP.** OpenAPI spec, TypeScript types and an llms.txt index for the REST API. View and Collab seats get 6 MCP calls a month on paid plans.\n\n**Framer Server API.** Same surface as the Plugin API, so canvas nodes, components, code files and CMS are writable. No REST endpoints and no official MCP server. You need Node 22 and the `framer-api` package.\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### Framer Server API\n\n1. `connect(projectUrl, process.env.FRAMER_API_KEY)` then call Plugin API methods, and close the connection when done\n2. Publish creates a preview deployment. Promote it with `deploy()` only after checking it\n3. Keep batches small and idempotent, since a dropped connection can stop a run halfway\n4. For interactive work from a coding agent, `npx @framer/agent setup` is the supported route and keeps changes on a branch\n5. Check the changelog before upgrading. v5.0.0 changed CMS array fields and requires stable `id` values\n\n## Other comparisons with Figma API + MCP or Framer Server API\n\n- [Figma API + MCP vs Miro API + MCP](https://www.anchorterminal.com/compare/figma-mcp-vs-miro.md)\n- [Figma API + MCP vs Penpot API + MCP](https://www.anchorterminal.com/compare/figma-mcp-vs-penpot.md)\n- [Framer Server API vs Miro API + MCP](https://www.anchorterminal.com/compare/framer-vs-miro.md)\n- [Framer Server API vs Penpot API + MCP](https://www.anchorterminal.com/compare/framer-vs-penpot.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Figma API + MCP vs Framer Server API",
        "url": ""
      }
    ],
    "description": "Figma API + MCP has a score of 66.1 (B) against Framer Server API's 52.8 (D). Both do design files. The largest gap is security \u0026 auth, 24 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Figma API + MCP B 66.1",
      "Framer Server API D 52.8",
      "scores"
    ],
    "h1": "Figma API + MCP vs Framer Server API",
    "image": "https://www.anchorterminal.com/assets/og/compare-figma-mcp-vs-framer.png",
    "path": "/compare/figma-mcp-vs-framer",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Figma API + MCP vs Framer Server API for AI agents, B 66.1 vs D 52.8",
    "toc": null,
    "updated": "2026-10-04",
    "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-framer"
  },
  "tokens": {
    "markdown": 1300,
    "slim": 380
  },
  "version": 1
}
