{
  "data": {
    "a": {
      "slug": "framelink-figma-mcp",
      "name": "Framelink MCP for Figma",
      "vendor": "Framelink (Graham Lipsman)",
      "vendorUrl": "https://www.framelink.ai",
      "kind": "mcp",
      "category": "design",
      "summary": "Framelink MCP for Figma is an open-source MCP server, run locally with npx, that reads Figma files through the Figma REST API and returns simplified layout and style data and image assets to coding agents.",
      "url": "https://www.anchorterminal.com/tools/framelink-figma-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/framelink-figma-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/framelink-figma-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/framelink-figma-mcp.json",
      "dns": "framelink-figma-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/GLips/Figma-Context-MCP",
      "license": "MIT",
      "transports": [
        "stdio",
        "streamable-http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "figma-developer-mcp"
        }
      ],
      "auth": "pat",
      "authNotes": "Needs the user's own Figma credential. A Figma personal access token (`FIGMA_API_KEY` or `--figma-api-key`, sent as `X-Figma-Token`) where `file_content:read` is the one scope the server strictly needs, or a Figma OAuth access token the user already holds (`FIGMA_OAUTH_TOKEN`), which the server neither obtains nor refreshes. In HTTP mode each request can carry its own token in `X-Figma-Token` or `Authorization: Bearer`. The local HTTP server has no authentication of its own and binds 127.0.0.1 by default.",
      "pricing": "free",
      "pricingNotes": "Free and MIT-licensed, run on your own machine. Calls go to the Figma REST API under the user's Figma plan and its rate limits. The site advertises a coming team product only as early access, with no price.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "A free local server with nothing to buy. No x402, MPP or L402 in the repository or the docs (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": 2,
      "popularity": {
        "githubStars": 16173,
        "npmWeekly": 162432,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.framelink.ai",
      "llmsTxt": "https://docs.framelink.ai/llms.txt",
      "registryName": "io.github.GLips/Figma-Context-MCP",
      "capabilities": [
        "design.files",
        "design.code",
        "design.components"
      ],
      "tags": [
        "open-source",
        "local",
        "mcp",
        "stdio",
        "mcp-registry",
        "llms-txt",
        "typescript",
        "community",
        "free",
        "telemetry"
      ],
      "lastRelease": "2026-06-18",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 66.1,
        "grade": "B",
        "agentReady": false,
        "rank": 387,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 2,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 41,
          "payments": 60,
          "reliability": 68,
          "schema": 87,
          "security": 55,
          "transparency": 47
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Two compact, typed tools return Figma layout and styles in a token-saving tree format and save image assets, with a read-only hint and a flag that removes the writing tool. There has been no release since 18 June 2026, issues and outside pull requests since July have gone unanswered, and telemetry is on by default.",
        "bestFor": "Reading a Figma frame into a coding agent to build matching UI.",
        "strengths": [
          "Two tools with zod input schemas and regex checks on file keys, node IDs and file names",
          "Compact `tree` output that deduplicates repeated styles and subtrees, with `nodeId` and `depth` to narrow a read",
          "Uses a Figma personal access token that needs only `file_content:read`, or a per-request token in HTTP mode",
          "MIT, in the official MCP registry under the maintainer's GitHub namespace, with a release-please changelog",
          "Docs publish llms.txt and a Markdown copy of each page, including a full tool reference"
        ],
        "weaknesses": [
          "Last release 0.13.2 on 18 June 2026, and still below 1.0",
          "The three open issues filed since May 2026 and seven outside pull requests since July have no reply",
          "PostHog telemetry is on by default, the README doesn't mention it, and an open issue says error messages can carry file keys and node IDs",
          "Read-only on Figma, so an agent cannot change a design through it",
          "No privacy policy, terms or named company on framelink.ai"
        ],
        "agentNotes": [
          "Pass the `node-id` from the Figma link as `nodeId` so the call returns one frame, not the whole file",
          "Leave `depth` unset unless the user asks, as the tool description says",
          "Set `--image-dir` to the project folder in stdio mode, or `--skip-image-downloads` when the task only reads",
          "Set `FRAMELINK_TELEMETRY=off` or `DO_NOT_TRACK=1` in the server's env if the user's policy forbids usage reporting",
          "On a 429 from Figma, wait and retry later; the limit is the user's Figma plan, not the server's"
        ],
        "metrics": {
          "kind": "local",
          "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": 66.1
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 41,
          "payments": 60,
          "reliability": 68,
          "schema": 87,
          "security": 55,
          "transparency": 57
        },
        "provenanceScore": 37,
        "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": {
        "install": "npx -y figma-developer-mcp --stdio",
        "config": {
          "mcpServers": {
            "Framelink_Figma_MCP": {
              "args": [
                "-y",
                "figma-developer-mcp",
                "--stdio"
              ],
              "command": "npx",
              "env": {
                "FIGMA_API_KEY": "YOUR-KEY"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.files",
        "tool": "https://letme.dev/framelink-figma-mcp"
      },
      "area": "design-diagrams",
      "provenance": {
        "legalEntity": "",
        "domain": "framelink.ai",
        "domainRegistered": "2025-03-22",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/GLips/Figma-Context-MCP/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "No company is named on www.framelink.ai, whose footer reads only a copyright line. The repository, the npm package and the X account linked from the site belong to Graham Lipsman (GitHub GLips, npm glips, X glipsman).",
          "No terms of service or privacy policy linked from www.framelink.ai or docs.framelink.ai.",
          "www.framelink.ai/robots.txt sets no Disallow rules for our crawler. docs.framelink.ai/robots.txt allows all paths but /_next/ and /cdn-cgi/, with Content-Signal ai-train=yes, search=yes, ai-input=yes.",
          "RDAP gives framelink.ai a registration date of 22 March 2025.",
          "/.well-known/security.txt returns 404. SECURITY.md in the repository asks for private reports through GitHub security advisories, with acknowledgement within 48 hours."
        ],
        "score": 37
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/framelink-figma-mcp.json",
      "live": {
        "slug": "framelink-figma-mcp",
        "versions": [
          {
            "registry": "github",
            "name": "GLips/Figma-Context-MCP",
            "version": "v0.13.2",
            "released": "2026-06-18",
            "seenAt": "2026-11-06T23:26:50.051758823Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.GLips/Figma-Context-MCP",
            "version": "0.13.2",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "figma-developer-mcp",
            "version": "0.13.2",
            "seenAt": "2026-11-06T23:26:49.765537974Z"
          }
        ],
        "githubStars": 16175,
        "npmWeekly": 162432,
        "securityTxt": {
          "url": "https://framelink.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:33.444843239Z"
        },
        "llmsTxt": {
          "url": "https://docs.framelink.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:32.515548222Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/GLips/Figma-Context-MCP/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:18:23.302835389Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fd50fd2f5316"
          }
        ],
        "updatedAt": "2026-11-07T18:16:28.95801333Z"
      }
    },
    "answer": "Framelink MCP for Figma scores 66.1 (B) on agent readiness against Magic Patterns's 63.4 (B), and leads in 3 of 7 scored categories. Magic Patterns leads on reliability, maintenance \u0026 community and transparency \u0026 trust.",
    "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": 37,
        "category": "payments",
        "leads": "framelink-figma-mcp",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "By the self-hosted rule. A free MIT package with nothing to buy (20 + 20 + 20), and no payment protocol (0). Figma API use falls under the user's own Figma plan. 60.",
          "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": 60,
          "b": 23
        }
      },
      {
        "by": 29,
        "category": "maintenance",
        "leads": "magic-patterns",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Last release 0.13.2 on 18 June 2026, 141 days before this check (10). No release in the 90 days since 8 August (0). The maintainer merged his own pull requests through June and closed four outside pull requests between July and September, but the three open issues filed since May have no reply and seven outside pull requests from July to October are open without one (8 of 25). In the official MCP registry under the GitHub-verified namespace io.github.GLips, with 0.13.2 as the latest entry (15). CI and tests exist, and the MCP SDK is pinned at 1.29.0 with current dependencies (8 of 10). 10 + 0 + 8 + 15 + 8 = 41.",
          "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": 41,
          "b": 70
        }
      },
      {
        "by": 16,
        "category": "ergonomics",
        "leads": "framelink-figma-mcp",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Two compact tools (25). Output is sized by `nodeId` and `depth`, and the default `tree` format drops default values and auto-generated layer names and deduplicates repeated styles and subtrees. No pagination, which a single-file read rarely needs (16 of 20). Errors are written for a model to recover from, with Figma's 403 body surfaced and guidance for wrong node IDs from prototype, branch and FigJam links, per the 0.12.0 changelog (16 of 20). `get_figma_data` carries readOnlyHint and `download_figma_images` openWorldHint, with no destructiveHint on the tool that writes files and no note on overwriting (14 of 20). Only `fileKey` is required and one npx line starts it, but there is no SDK, which a two-tool local server doesn't need (12 of 15). 25 + 16 + 16 + 14 + 12 = 83.",
          "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": 83,
          "b": 67
        }
      },
      {
        "by": 13,
        "category": "transparency",
        "leads": "magic-patterns",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "MIT licence in the repository and on npm (30). No privacy policy or terms on framelink.ai or the docs. Design data goes from Figma to the local model client, and the docs describe what telemetry sends, but there is no data statement to agree with (8 of 30). No deprecation policy. Breaking defaults are called out in the changelog (5 of 20). Telemetry to PostHog (us.i.posthog.com) has been on by default since 0.10.0 on 10 April 2026. The configuration page discloses it with three ways to opt out, while the README doesn't mention it, and an open issue of 16 April 2026 reports that `error_message` can include file keys and node IDs, which the source's redaction (credentials only) doesn't cover (14 of 20). 30 + 8 + 5 + 14 = 57.",
          "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": 47,
          "b": 60
        }
      },
      {
        "by": 7,
        "category": "reliability",
        "leads": "magic-patterns",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the local-software lines, because the server runs on the user's machine and calls the Figma REST API. Installs from the official npm package figma-developer-mcp, with Node 20.20 or later stated in package.json (20). A CI workflow runs prettier, eslint, a type check and the vitest suite, but only on pull requests, and the five newest runs (outside pull requests from 22 August to 2 October) all failed, so passing on the default branch couldn't be confirmed (15). Eight open issues, the oldest open one a 429 rate-limit thread from November 2025 with 30 comments, and nothing open that reports a crash in the current release (18). Release-please changelog with semver tags and breaking defaults called out, such as the switch to `tree` output in 0.13.0 (15). Version 0.13.2, below 1.0 and not declared stable (0). 20 + 15 + 18 + 15 + 0 = 68.",
          "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": 68,
          "b": 75
        }
      }
    ],
    "facts": [
      {
        "a": "MCP server",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Framelink (Graham Lipsman)",
        "b": "North Park Labs, Inc. (Magic Patterns)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://mcp.magicpatterns.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio, Streamable HTTP",
        "b": "Streamable HTTP, HTTP",
        "name": "Transports"
      },
      {
        "a": "Token",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Closed service under the Magic Patterns terms of service (last updated 1 April 2025)",
        "name": "Licence"
      },
      {
        "a": "2",
        "b": "24",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.github.GLips/Figma-Context-MCP",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-06-18",
        "b": "2026-11-05",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2025-04-01",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2025-04-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "16k stars, 162k npm/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Framelink MCP for Figma scores 66.1 (B) on agent readiness against Magic Patterns's 63.4 (B), and leads in 3 of 7 scored categories. Magic Patterns leads on reliability, maintenance \u0026 community and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Framelink MCP for Figma or Magic Patterns?"
      },
      {
        "answer": "Framelink MCP for Figma needs an access token. Magic Patterns takes an API key or an OAuth sign-in.",
        "question": "Do Framelink MCP for Figma and Magic Patterns need an API key?"
      },
      {
        "answer": "Framelink MCP for Figma runs on your own machine, with no hosted endpoint listed. Magic Patterns has a hosted endpoint at https://mcp.magicpatterns.com/mcp.",
        "question": "Can an agent call Framelink MCP for Figma and Magic Patterns without installing anything?"
      },
      {
        "answer": "Framelink MCP for Figma is open source (MIT). No open-source release is listed for Magic Patterns.",
        "question": "Are Framelink MCP for Figma and Magic Patterns open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 83 against 67",
          "Payments \u0026 pricing, 60 against 23"
        ],
        "also": [
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "Reading a Figma frame into a coding agent to build matching UI.",
        "slug": "framelink-figma-mcp",
        "watchFor": "Last release 0.13.2 on 18 June 2026, and still below 1.0"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 68",
          "Maintenance \u0026 community, 70 against 41",
          "Transparency \u0026 trust, 60 against 47"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "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": 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-magic-patterns.json",
        "title": "Figma API + MCP vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-framer.json",
        "title": "Framelink MCP for Figma vs Framer Server API",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-framer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-kite-new.json",
        "title": "Framelink MCP for Figma vs Kite",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-kite-new"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-melius.json",
        "title": "Framelink MCP for Figma vs Melius",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-melius"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro.json",
        "title": "Framelink MCP for Figma vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-pen-dev.json",
        "title": "Framelink MCP for Figma vs pen.dev",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-pen-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-penpot.json",
        "title": "Framelink MCP for Figma vs Penpot API + MCP",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-penpot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-sketch.json",
        "title": "Framelink MCP for Figma vs Sketch",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-sketch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-subframe.json",
        "title": "Framelink MCP for Figma vs Subframe",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-subframe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-zeplin.json",
        "title": "Framelink MCP for Figma vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-zeplin"
      },
      {
        "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/framelink-figma-mcp-vs-impeccable.json",
        "title": "Framelink MCP for Figma vs Impeccable",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-impeccable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp.json",
        "title": "Framelink MCP for Figma vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp"
      },
      {
        "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/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/framelink-figma-mcp-vs-uxkin-agent.json",
        "title": "Framelink MCP for Figma vs UXKIN",
        "url": "https://www.anchorterminal.com/compare/framelink-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": 7,
        "edge": "magic-patterns",
        "framelink-figma-mcp": 68,
        "key": "reliability",
        "magic-patterns": 75,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 3,
        "edge": "framelink-figma-mcp",
        "framelink-figma-mcp": 87,
        "key": "schema",
        "magic-patterns": 84,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 16,
        "edge": "framelink-figma-mcp",
        "framelink-figma-mcp": 83,
        "key": "ergonomics",
        "magic-patterns": 67,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 0,
        "edge": "",
        "framelink-figma-mcp": 55,
        "key": "security",
        "magic-patterns": 55,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 37,
        "edge": "framelink-figma-mcp",
        "framelink-figma-mcp": 60,
        "key": "payments",
        "magic-patterns": 23,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 29,
        "edge": "magic-patterns",
        "framelink-figma-mcp": 41,
        "key": "maintenance",
        "magic-patterns": 70,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 13,
        "edge": "magic-patterns",
        "framelink-figma-mcp": 47,
        "key": "transparency",
        "magic-patterns": 60,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Framelink MCP for Figma scores 66.1 (B) on agent readiness against Magic Patterns's 63.4 (B), and leads in 3 of 7 scored categories. Magic Patterns leads on reliability, maintenance \u0026 community and transparency \u0026 trust. Both do design files.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "framelink-figma-mcp": "Two compact, typed tools return Figma layout and styles in a token-saving tree format and save image assets, with a read-only hint and a flag that removes the writing tool. There has been no release since 18 June 2026, issues and outside pull requests since July have gone unanswered, and telemetry is on by default.",
      "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/framelink-figma-mcp-vs-magic-patterns",
    "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.min.md"
  },
  "markdown": "Framelink MCP for Figma scores 66.1 (B) on agent readiness against Magic Patterns's 63.4 (B), and leads in 3 of 7 scored categories. Magic Patterns leads on reliability, maintenance \u0026 community and transparency \u0026 trust. Both do design files.\n\n- Framelink MCP for Figma: grade B, 66.1/100, rank #387 of 1510. Markdown https://www.anchorterminal.com/tools/framelink-figma-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/framelink-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### Framelink MCP for Figma (B)\n\nGood for: Reading a Figma frame into a coding agent to build matching UI.\n\nAhead on:\n- Agent ergonomics, 83 against 67\n- Payments \u0026 pricing, 60 against 23\n\nAlso in its favour:\n- Runs on your own machine\n- Open source\n\nWatch for: Last release 0.13.2 on 18 June 2026, and still below 1.0\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 68\n- Maintenance \u0026 community, 70 against 41\n- Transparency \u0026 trust, 60 against 47\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\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### Payments \u0026 pricing: Framelink MCP for Figma +37\n\n- Framelink MCP for Figma (60): By the self-hosted rule. A free MIT package with nothing to buy (20 + 20 + 20), and no payment protocol (0). Figma API use falls under the user's own Figma plan. 60.\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### Maintenance \u0026 community: Magic Patterns +29\n\n- Framelink MCP for Figma (41): Last release 0.13.2 on 18 June 2026, 141 days before this check (10). No release in the 90 days since 8 August (0). The maintainer merged his own pull requests through June and closed four outside pull requests between July and September, but the three open issues filed since May have no reply and seven outside pull requests from July to October are open without one (8 of 25). In the official MCP registry under the GitHub-verified namespace io.github.GLips, with 0.13.2 as the latest entry (15). CI and tests exist, and the MCP SDK is pinned at 1.29.0 with current dependencies (8 of 10). 10 + 0 + 8 + 15 + 8 = 41.\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### Agent ergonomics: Framelink MCP for Figma +16\n\n- Framelink MCP for Figma (83): Two compact tools (25). Output is sized by `nodeId` and `depth`, and the default `tree` format drops default values and auto-generated layer names and deduplicates repeated styles and subtrees. No pagination, which a single-file read rarely needs (16 of 20). Errors are written for a model to recover from, with Figma's 403 body surfaced and guidance for wrong node IDs from prototype, branch and FigJam links, per the 0.12.0 changelog (16 of 20). `get_figma_data` carries readOnlyHint and `download_figma_images` openWorldHint, with no destructiveHint on the tool that writes files and no note on overwriting (14 of 20). Only `fileKey` is required and one npx line starts it, but there is no SDK, which a two-tool local server doesn't need (12 of 15). 25 + 16 + 16 + 14 + 12 = 83.\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: Magic Patterns +13\n\n- Framelink MCP for Figma (47): MIT licence in the repository and on npm (30). No privacy policy or terms on framelink.ai or the docs. Design data goes from Figma to the local model client, and the docs describe what telemetry sends, but there is no data statement to agree with (8 of 30). No deprecation policy. Breaking defaults are called out in the changelog (5 of 20). Telemetry to PostHog (us.i.posthog.com) has been on by default since 0.10.0 on 10 April 2026. The configuration page discloses it with three ways to opt out, while the README doesn't mention it, and an open issue of 16 April 2026 reports that `error_message` can include file keys and node IDs, which the source's redaction (credentials only) doesn't cover (14 of 20). 30 + 8 + 5 + 14 = 57.\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### Reliability: Magic Patterns +7\n\n- Framelink MCP for Figma (68): Read with the local-software lines, because the server runs on the user's machine and calls the Figma REST API. Installs from the official npm package figma-developer-mcp, with Node 20.20 or later stated in package.json (20). A CI workflow runs prettier, eslint, a type check and the vitest suite, but only on pull requests, and the five newest runs (outside pull requests from 22 August to 2 October) all failed, so passing on the default branch couldn't be confirmed (15). Eight open issues, the oldest open one a 429 rate-limit thread from November 2025 with 30 comments, and nothing open that reports a crash in the current release (18). Release-please changelog with semver tags and breaking defaults called out, such as the switch to `tree` output in 0.13.0 (15). Version 0.13.2, below 1.0 and not declared stable (0). 20 + 15 + 18 + 15 + 0 = 68.\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## Score by category\n\n| Category | Weight | Framelink MCP for Figma | Magic Patterns | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 68 | 75 | Magic Patterns +7 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 87 | 84 | Framelink MCP for Figma +3 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 67 | Framelink MCP for Figma +16 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 55 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 23 | Framelink MCP for Figma +37 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 41 | 70 | Magic Patterns +29 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 47 | 60 | Magic Patterns +13 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **66.1 · B** | **63.4 · B** | |\n\n## Facts side by side\n\n| Fact | Framelink MCP for Figma | Magic Patterns |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | Framelink (Graham Lipsman) | North Park Labs, Inc. (Magic Patterns) |\n| Hosted endpoint | no (local only) | `https://mcp.magicpatterns.com/mcp` |\n| Transports | stdio, Streamable HTTP | Streamable HTTP, HTTP |\n| Auth | Token | OAuth or key |\n| Pricing | Free | Freemium |\n| x402 | no | no |\n| Licence | MIT | Closed service under the Magic Patterns terms of service (last updated 1 April 2025) |\n| Tools exposed | 2 | 24 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| MCP registry | `io.github.GLips/Figma-Context-MCP` | not listed |\n| Last release | 2026-06-18 | 2026-11-05 |\n| Terms last updated | no document linked | 2025-04-01 |\n| Privacy policy last updated | no document linked | 2025-04-01 |\n| Customer content may train models | not read yet | not found in the text |\n| Terms restrict automated access | not read yet | yes |\n| Terms restrict benchmarking | not read yet | yes |\n| Terms or service can change without notice | not read yet | yes |\n| Arbitration or class-action waiver | not read yet | not found in the text |\n| Popularity | 16k stars, 162k npm/wk | none |\n\n## Verdicts\n\n**Framelink MCP for Figma.** Two compact, typed tools return Figma layout and styles in a token-saving tree format and save image assets, with a read-only hint and a flag that removes the writing tool. There has been no release since 18 June 2026, issues and outside pull requests since July have gone unanswered, and telemetry is on by default.\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### Framelink MCP for Figma\n\n1. Pass the `node-id` from the Figma link as `nodeId` so the call returns one frame, not the whole file\n2. Leave `depth` unset unless the user asks, as the tool description says\n3. Set `--image-dir` to the project folder in stdio mode, or `--skip-image-downloads` when the task only reads\n4. Set `FRAMELINK_TELEMETRY=off` or `DO_NOT_TRACK=1` in the server's env if the user's policy forbids usage reporting\n5. On a 429 from Figma, wait and retry later; the limit is the user's Figma plan, not the server's\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, Framelink MCP for Figma or Magic Patterns?\n\nFramelink MCP for Figma scores 66.1 (B) on agent readiness against Magic Patterns's 63.4 (B), and leads in 3 of 7 scored categories. Magic Patterns leads on reliability, maintenance \u0026 community and transparency \u0026 trust.\n\n### Do Framelink MCP for Figma and Magic Patterns need an API key?\n\nFramelink MCP for Figma needs an access token. Magic Patterns takes an API key or an OAuth sign-in.\n\n### Can an agent call Framelink MCP for Figma and Magic Patterns without installing anything?\n\nFramelink MCP for Figma runs on your own machine, with no hosted endpoint listed. Magic Patterns has a hosted endpoint at https://mcp.magicpatterns.com/mcp.\n\n### Are Framelink MCP for Figma and Magic Patterns open source?\n\nFramelink MCP for Figma is open source (MIT). No open-source release is listed for Magic Patterns.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.json, and with the fewest tokens: https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"framelink-figma-mcp\", \"b\": \"magic-patterns\"}`. From a terminal: `anchor compare framelink-figma-mcp magic-patterns`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/framelink-figma-mcp.json and https://www.anchorterminal.com/api/v1/tools/magic-patterns.json\n\n## Other comparisons with Framelink MCP for Figma 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 Magic Patterns](https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.md)\n- [Framelink MCP for Figma vs Framer Server API](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-framer.md)\n- [Framelink MCP for Figma vs Kite](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-kite-new.md)\n- [Framelink MCP for Figma vs Melius](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-melius.md)\n- [Framelink MCP for Figma vs Miro API + MCP](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro.md)\n- [Framelink MCP for Figma vs pen.dev](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-pen-dev.md)\n- [Framelink MCP for Figma vs Penpot API + MCP](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-penpot.md)\n- [Framelink MCP for Figma vs Sketch](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-sketch.md)\n- [Framelink MCP for Figma vs Subframe](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-subframe.md)\n- [Framelink MCP for Figma vs Zeplin](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-zeplin.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- [Framelink MCP for Figma vs Impeccable](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-impeccable.md)\n- [Framelink MCP for Figma vs UX Pilot MCP server](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp.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- [Magic Patterns vs Melius](https://www.anchorterminal.com/compare/magic-patterns-vs-melius.md)\n- [Framelink MCP for Figma vs UXKIN](https://www.anchorterminal.com/compare/framelink-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": "Framelink MCP for Figma vs Magic Patterns",
        "url": ""
      }
    ],
    "description": "Framelink MCP for Figma scores 66.1 (B) to Magic Patterns's 63.4 (B) for design files. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Framelink MCP for Figma B 66.1",
      "Magic Patterns B 63.4",
      "scores"
    ],
    "h1": "Framelink MCP for Figma vs Magic Patterns",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/framelink-figma-mcp-vs-magic-patterns",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Framelink MCP for Figma vs Magic Patterns for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns"
  },
  "tokens": {
    "markdown": 4450,
    "slim": 2530
  },
  "version": 1
}
