{
  "data": {
    "a": {
      "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": 517,
        "ranked": true,
        "rankOf": 1486,
        "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-07T18:20:36.546371661Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 191,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 200,
          "p95ms24h": 512,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://magicpatterns.statuspage.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:21:21.341572331Z"
        },
        "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-07T18:21:21.341572331Z"
      }
    },
    "answer": "Magic Patterns scores 63.4 (B) on agent readiness against Melius's 53.3 (D), and leads in every scored category.",
    "b": {
      "slug": "melius",
      "name": "Melius",
      "vendor": "Melius AI, Inc.",
      "vendorUrl": "https://www.melius.com",
      "kind": "http-api",
      "category": "design",
      "summary": "Melius is a hosted node-based canvas for generating images, video, audio and text with many third-party models. Outside agents read and write projects, canvases, nodes, edges, runs and comments through a REST API, an MCP server and the mel CLI.",
      "url": "https://www.anchorterminal.com/tools/melius",
      "markdownUrl": "https://www.anchorterminal.com/tools/melius.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/melius.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/melius.json",
      "dns": "melius.grade.anchorterminal.com",
      "license": "Proprietary service under Melius's terms of service. The mel CLI on npm is MIT, with no public source repository found",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.melius.com/api/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@melius-ai/cli"
        }
      ],
      "auth": "mixed",
      "authNotes": "A person creates an API key in the Melius app under Team settings, Integrations. The REST API, the CLI and the MCP endpoint at https://api.melius.com/mcp take it as a Bearer token, with an optional `x-team-id` header. The MCP endpoint at https://mcp.melius.com/mcp uses OAuth (authorisation code with S256 PKCE and dynamic client registration), where the user signs in, picks one team and Melius creates a connector key. Keys have no scopes. A key works with its creator's access and that user's role in each team. Access is self-serve, with no app review or sales approval.",
      "pricing": "freemium",
      "pricingNotes": "Free plan at $0 with trial credits, amount not published. Creator $20 a month for 20,000 credits, Growth $50 for 50,000, Professional $110 for 110,000, Team $70 a seat for 70,000 pooled credits (2 to 10 seats), Enterprise custom. Annual billing cuts 15 to 20 per cent. API, CLI and MCP calls have no separate charge and generations draw team credits. Per-model credit costs come from an authenticated endpoint, not the pricing page. The page's comparison table shows different figures ($18, $45, $99+, $63). Whether Free teams can create API keys is not stated (https://www.melius.com/pricing, checked 2026-10-08).",
      "priceSummary": "$20 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API, MCP or CLI docs, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 75,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 9,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.melius.com",
      "llmsTxt": "https://docs.melius.com/llms.txt",
      "openapi": "https://docs.melius.com/api/openapi.json",
      "capabilities": [
        "design.canvas",
        "design.comments",
        "design.files",
        "image.generate",
        "image.edit",
        "image.upscale",
        "video.generate",
        "speech.tts"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "closed-source",
        "mcp",
        "oauth",
        "api-key",
        "openapi",
        "llms-txt",
        "cli",
        "async-jobs",
        "status-page",
        "pre-1.0"
      ],
      "lastRelease": "2026-09-10",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.3,
        "grade": "D",
        "agentReady": false,
        "rank": 948,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 8,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 56,
          "payments": 20,
          "reliability": 69,
          "schema": 70,
          "security": 43,
          "transparency": 56
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": 0,
        "verdict": "One backend serves a 59-operation REST API with a public OpenAPI spec, a hosted MCP server with OAuth sign-in and a JSON-only CLI, and the status page showed no incidents from July to early October 2026. API keys carry no scopes and work with their creator's role, and no rate-limit numbers, changelog or per-model credit prices are published.",
        "bestFor": "An agent producing batches of ad creative, product images or short videos on a shared canvas that people then review, with many models behind one key.",
        "strengths": [
          "Public OpenAPI 3.0.2 spec with 59 operations, plus llms.txt, llms-full.txt and a Markdown copy of every docs page",
          "Hosted MCP server with OAuth sign-in (PKCE, dynamic client registration) or a bearer API key, tied to one team chosen at authorisation",
          "429 responses carry `Retry-After` and `retryAfterSeconds`, and the docs give a bounded retry policy",
          "The mel CLI prints JSON only, uses six fixed exit codes and returns errors with a `code` and a `suggestion`",
          "status.melius.com listed no incidents for Web app or MCP from July to 8 October 2026"
        ],
        "weaknesses": [
          "API keys have no scopes. A key works with its creator's role in every team the creator belongs to",
          "No rate-limit numbers, SLA, public changelog or API deprecation policy found in the reviewed documentation",
          "The MCP reference lists 75 tools, and the setup guide tells users to select Always Allow for all of them",
          "Per-model credit costs are returned by an authenticated endpoint and shown in the app, not on the pricing page",
          "No security.txt or disclosure policy found, and the Vanta trust centre at trust.melius.com needs JavaScript we couldn't run"
        ],
        "agentNotes": [
          "Generate by creating a node on a canvas, starting a run with POST /nodes/{nodeId}/runs, then polling GET /node-runs/{nodeRunId} until `status` is finished or failed",
          "Over MCP, call `get_guide` first, `show_presence` before node changes and `canvas_plan_layout` before `bulk_create_nodes`",
          "On 429 wait `Retry-After` seconds. After a timeout or 5xx on a write, read the canvas or run state before resubmitting, because there are no idempotency keys",
          "Read credit costs from GET /generation/models?category=image before a bulk run. A 400 can mean the team is out of credits",
          "Downloads arrive as a ZIP from a signed URL. Fetch that URL without the `Authorization` header"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.3
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 56,
          "payments": 20,
          "reliability": 69,
          "schema": 70,
          "security": 43,
          "transparency": 38
        },
        "provenanceScore": 73,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g @melius-ai/cli",
        "http": "curl -s -H \"Authorization: Bearer $MEL_API_KEY\" https://api.melius.com/api/v1/teams",
        "claudeCode": "claude mcp add melius --transport http https://mcp.melius.com/mcp --scope user",
        "config": {
          "mcpServers": {
            "melius": {
              "url": "https://mcp.melius.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.canvas",
        "tool": "https://letme.dev/melius"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Creator plan",
          "unit": "month",
          "usd": 20,
          "note": "20,000 credits a month, $17 a month on annual billing"
        },
        {
          "item": "Growth plan",
          "unit": "month",
          "usd": 50,
          "note": "50,000 credits a month, $43 on annual billing"
        },
        {
          "item": "Professional plan",
          "unit": "month",
          "usd": 110,
          "note": "110,000 credits a month, $93 on annual billing. A 300,000-credit option is also listed"
        },
        {
          "item": "Team plan",
          "unit": "seat-month",
          "usd": 70,
          "note": "70,000 pooled credits a seat, 2 to 10 seats, $56 on annual billing"
        }
      ],
      "provenance": {
        "legalEntity": "Melius AI, Inc.",
        "domain": "melius.com",
        "domainRegistered": "1998-11-24",
        "endpointOnVendorDomain": true,
        "terms": "https://www.melius.com/terms",
        "privacy": "https://www.melius.com/privacy",
        "statusPage": "https://status.melius.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-04",
        "notes": [
          "The terms of service (effective 30 October 2026, read on 4 November) name Melius AI, Inc., 420 Lexington Avenue, New York, as the contracting party and are governed by Delaware law. They replace terms effective 28 August 2026.",
          "Section 7.3(d) of those terms bars using automated means (including bots, scrapers, or crawlers) to access the Service, defined as the Melius platform including www.melius.com and any related subdomains, so melius.com hosts were not read after the terms on 4 November.",
          "The API answers at api.melius.com, the OAuth MCP endpoint at mcp.melius.com and the docs at docs.melius.com, all melius.com subdomains.",
          "/.well-known/security.txt returned 404 on www.melius.com, docs.melius.com and api.melius.com on 8 October.",
          "RDAP for melius.com gave a registration date of 1998-11-24 on 8 October, which predates the company. The site says it is not affiliated with other organisations that share the Melius name.",
          "No public changelog was found. docs.melius.com/changelog and www.melius.com/changelog returned 404 on 8 October, and release dates come from npm.",
          "trust.melius.com is a Vanta trust centre that renders only with JavaScript, so its contents were not read."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/melius.json",
      "live": {
        "slug": "melius",
        "probe": {
          "target": "https://api.melius.com/api/v1",
          "method": "get",
          "lastAt": "2026-11-07T18:20:38.350354127Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 428,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.97,
          "p50ms24h": 365,
          "p95ms24h": 492,
          "samples24h": 239,
          "samples30d": 7463,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 246
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 246
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.melius.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:21:22.469040713Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@melius-ai/cli",
            "version": "0.16.2",
            "seenAt": "2026-11-06T23:43:50.315024964Z"
          }
        ],
        "npmWeekly": 48,
        "securityTxt": {
          "url": "https://melius.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:41.601099823Z"
        },
        "llmsTxt": {
          "url": "https://docs.melius.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:59.262970677Z"
        },
        "domain": {
          "domain": "melius.com",
          "registered": "1998-11-24",
          "source": "https://rdap.verisign.com/com/v1/domain/melius.com",
          "checkedAt": "2026-11-01T14:20:37.07232315Z"
        },
        "pages": [
          {
            "url": "https://www.melius.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:29.815363633Z",
            "changedAt": "2026-11-06T13:52:05.411290744Z",
            "fingerprint": "36198850365b"
          },
          {
            "url": "https://www.melius.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:31.906851011Z",
            "changedAt": "2026-11-06T13:52:07.73698785Z",
            "fingerprint": "5f9570fb0610"
          },
          {
            "url": "https://www.melius.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:35.850607983Z",
            "changedAt": "2026-11-06T13:52:09.979247779Z",
            "fingerprint": "093288919adb"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.melius.com/mcp",
          "checkedAt": "2026-11-07T01:46:13.192360875Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:46:13.192360875Z"
        },
        "updatedAt": "2026-11-07T18:21:22.469040713Z"
      }
    },
    "edges": [
      {
        "by": 16,
        "category": "ergonomics",
        "leads": "magic-patterns",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "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.",
          "b": "The MCP reference lists 75 tools, in the over-30 band, with `get_guide` and `get_docs` loading guidance on demand and 18 Cast tools shown only to teams with access (10 of 25). Four list operations take `limit` and `offset` and three take `search`, canvas content can be narrowed to one node or to media summaries, and the CLI has `--fields` (14 of 20). REST errors carry `statusCode`, `error` and `message`, the CLI adds a `code` and a `suggestion`, and `CANVAS_TOO_LARGE` is documented as not worth retrying. A shortage of credits arrives as a plain 400 (14 of 20). No idempotency keys, and we couldn't read MCP annotations without an account. The docs do give safe-retry guidance (5 of 20). Auto model selection and defaults keep required fields few. There is no SDK library, only the CLI and generated code samples in six languages (8 of 15). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains."
        },
        "scores": {
          "a": 67,
          "b": 51
        }
      },
      {
        "by": 14,
        "category": "schema",
        "leads": "magic-patterns",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The MCP server is closed, so its tool definitions weren't read. The v3 API has an OpenAPI 3.0.3 description, served as a block in each API reference page; the file llms.txt links at /docs/openapi-v3.yml answered with a not-found page (20 of 25). llms.txt and a Markdown copy of every docs page (10). The tools page sets out four workflows with call order, says when to poll and how often, splits read from write tools and warns that the user may edit at any time (17 of 20). Parameters are typed and marked required, the feedback `category` is an enum, and file writes take an array of name and content pairs (10 of 15). Request and response examples, an error table (400, 401, 402, 403) and 409 behaviour on writes (12 of 15). Versioned /v3 paths, a v2 deprecation notice and a dated product changelog (15). 20 + 10 + 17 + 10 + 12 + 15 = 84.",
          "b": "Public OpenAPI 3.0.2 spec with 59 operations (25). llms.txt, llms-full.txt and a Markdown copy of every docs page (10). 58 of the 59 operations have a summary and no description. The MCP reference gives each of 75 tools one line, with ordering rules for `get_guide`, `show_presence` and `canvas_plan_layout`, and the tool definitions themselves need a signed-in client, so we didn't read them (8 of 20). Request bodies are typed with 336 enums, ranges, UUID formats and required fields, with 52 open `additionalProperties` objects (13 of 15). 401, 403 and 429 are declared on every operation and 400, 404 and 409 where they apply, but the spec has no examples and most error bodies are a bare `message` (9 of 15). The path is versioned at /api/v1 and the CLI states semantic versioning. No public changelog found (5 of 15). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains."
        },
        "scores": {
          "a": 84,
          "b": 70
        }
      },
      {
        "by": 14,
        "category": "maintenance",
        "leads": "magic-patterns",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "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.",
          "b": "The newest dated release is the CLI, 0.16.2 on 10 September 2026 per the 8 October npm reading, 55 days before this check. The vendor's Homebrew tap, whose bot tracks npm hourly, has no version after 0.16.2, and no other dated source could be read (20). Versions 0.15.0 to 0.16.2, eight in all, fall between 7 August and 10 September by the tap's bump commits, which match the 19 versions since 10 July in the 8 October npm reading (20). Closed service with no public changelog or issue tracker. Support is by email at support@melius.com and a Discord server linked from the site (5 of 15). There is no SDK library, though the CLI is on npm and Homebrew (5 of 15). The CLI has three dependencies, needs Node.js 20 and is published from GitHub Actions through npm trusted publishing. Its source is not public (6 of 10)."
        },
        "scores": {
          "a": 70,
          "b": 56
        }
      },
      {
        "by": 12,
        "category": "security",
        "leads": "magic-patterns",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "OAuth 2.1 with PKCE S256, dynamic registration and a device flow, issued by oauth.magicpatterns.com with WorkOS keys. Scopes are openid, email, profile and offline_access only, so a token carries the user's whole workspace role. API keys are shown once, with no scopes, expiry or rotation documented (22 of 30). The read-only endpoint doesn't register the 13 tools that create, change or publish. There is no confirmation step on the write endpoint (14 of 20). Tools return design code and chat history that collaborators wrote, and no prompt-injection guidance was found (3 of 15). `x-mp-agent-name` attributes changes in the UI, and audit logs come with Enterprise only (8 of 15). The security page describes encryption, logging and the Render and MongoDB Atlas setup and points to SOC 2 reports in a Trust Center drawn by script, which wasn't read. No security.txt, disclosure policy or bug bounty found (8 of 20). 22 + 14 + 3 + 8 + 8 = 55.",
          "b": "API keys are revocable at once, can expire and are shown once, but have no scopes. A key works with its creator's access in every team that user belongs to, capped at the user's role. The MCP OAuth flow uses S256 PKCE and dynamic client registration, lists no scopes, and ties the connector key to one team (22 of 30). A key made by a viewer can only read, `bulk_delete_node` asks the user to confirm and a run can return a pending approval, but there is no read-only key and the setup guide tells users to select Always Allow for every tool (9 of 20). Canvas text, comments from collaborators and files fetched by `url_to_canvas` reach the model, and no prompt-injection guidance was found (2 of 15). Keys list a `lastUsedAt` time, connector keys are named after the client, and generation history is kept per member. No audit log is documented (7 of 15). No security.txt, disclosure policy or bug bounty found. A Vanta trust centre exists at trust.melius.com but needs JavaScript, so certifications are unchecked (3 of 20). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains."
        },
        "scores": {
          "a": 55,
          "b": 43
        }
      },
      {
        "by": 6,
        "category": "reliability",
        "leads": "magic-patterns",
        "name": "Reliability",
        "reasons": {
          "a": "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.",
          "b": "Graded on the hosted REST API and MCP server. status.melius.com runs on incident.io with component history for Web app and MCP, though it has no API component (20). Its history listed no incidents from July to 8 October 2026, as far back as the page went. 9 October to 4 November is unread, and a partly unread window keeps its recorded award (30). No rate-limit numbers are published. The docs say only that no plan has a monthly request quota and that bursts can return 429 (0). 429s carry `Retry-After` and a `retryAfterSeconds` body field, and the docs give a bounded retry policy and tell clients to check canvas or run state after a timeout or 5xx on a write. There are no idempotency keys (12 of 15). No SLA found (0). The API and MCP server carry no beta label, but the CLI is at 0.16.2 and Cast and media-URL inputs are marked beta (7 of 10). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains."
        },
        "scores": {
          "a": 75,
          "b": 69
        }
      }
    ],
    "facts": [
      {
        "a": "MCP server",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "North Park Labs, Inc. (Magic Patterns)",
        "b": "Melius AI, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://mcp.magicpatterns.com/mcp",
        "b": "https://api.melius.com/api/v1",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP, HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Closed service under the Magic Patterns terms of service (last updated 1 April 2025)",
        "b": "Proprietary service under Melius's terms of service. The mel CLI on npm is MIT, with no public source repository found",
        "name": "Licence"
      },
      {
        "a": "24",
        "b": "75",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-11-05",
        "b": "2026-09-10",
        "name": "Last release"
      },
      {
        "a": "2025-04-01",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2025-04-01",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "9 npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Magic Patterns scores 63.4 (B) on agent readiness against Melius's 53.3 (D), and leads in every scored category.",
        "question": "Which is better for AI agents, Magic Patterns or Melius?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Magic Patterns and Melius need an API key?"
      },
      {
        "answer": "Yes. Magic Patterns has a hosted endpoint at https://mcp.magicpatterns.com/mcp and Melius at https://api.melius.com/api/v1.",
        "question": "Can an agent call Magic Patterns and Melius without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 75 against 69",
          "Schema \u0026 documentation, 84 against 70",
          "Agent ergonomics, 67 against 51",
          "Security \u0026 auth, 55 against 43",
          "Maintenance \u0026 community, 70 against 56"
        ],
        "also": null,
        "goodFor": "Generating and iterating on coded React prototypes from a coding agent, and pulling a design into a codebase.",
        "slug": "magic-patterns",
        "watchFor": "MCP and API-key access need a paid seat, Starter at $20 a month"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "An agent producing batches of ad creative, product images or short videos on a shared canvas that people then review, with many models behind one key.",
        "slug": "melius",
        "watchFor": "API keys have no scopes. A key works with its creator's role in every team the creator belongs to"
      }
    ],
    "history": {
      "magic-patterns": null,
      "melius": [
        {
          "causes": [
            "time"
          ],
          "date": "2026-11-04",
          "delta": -0.9,
          "from": 54.2,
          "fromGrade": "C",
          "to": 53.3,
          "toGrade": "D"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 54.1,
          "fromGrade": "C",
          "to": 54.2,
          "toGrade": "C"
        }
      ]
    },
    "job": {
      "capability": "design.canvas",
      "name": "Design canvases"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/artcraft-vs-melius.json",
        "title": "ArtCraft vs Melius",
        "url": "https://www.anchorterminal.com/compare/artcraft-vs-melius"
      },
      {
        "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/figma-mcp-vs-melius.json",
        "title": "Figma API + MCP vs Melius",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-melius"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.json",
        "title": "Framelink MCP for Figma vs Magic Patterns",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns"
      },
      {
        "json": "https://www.anchorterminal.com/compare/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/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/framer-vs-melius.json",
        "title": "Framer Server API vs Melius",
        "url": "https://www.anchorterminal.com/compare/framer-vs-melius"
      },
      {
        "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/kite-new-vs-melius.json",
        "title": "Kite vs Melius",
        "url": "https://www.anchorterminal.com/compare/kite-new-vs-melius"
      },
      {
        "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/melius-vs-zeplin.json",
        "title": "Melius vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/melius-vs-zeplin"
      },
      {
        "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-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-uxkin-agent.json",
        "title": "Magic Patterns vs UXKIN",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-uxkin-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/melius-vs-miro.json",
        "title": "Melius vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/melius-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/melius-vs-pen-dev.json",
        "title": "Melius vs pen.dev",
        "url": "https://www.anchorterminal.com/compare/melius-vs-pen-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/melius-vs-penpot.json",
        "title": "Melius vs Penpot API + MCP",
        "url": "https://www.anchorterminal.com/compare/melius-vs-penpot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/melius-vs-sketch.json",
        "title": "Melius vs Sketch",
        "url": "https://www.anchorterminal.com/compare/melius-vs-sketch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/melius-vs-subframe.json",
        "title": "Melius vs Subframe",
        "url": "https://www.anchorterminal.com/compare/melius-vs-subframe"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 6,
        "edge": "magic-patterns",
        "key": "reliability",
        "magic-patterns": 75,
        "melius": 69,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "magic-patterns",
        "key": "schema",
        "magic-patterns": 84,
        "melius": 70,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 16,
        "edge": "magic-patterns",
        "key": "ergonomics",
        "magic-patterns": 67,
        "melius": 51,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 12,
        "edge": "magic-patterns",
        "key": "security",
        "magic-patterns": 55,
        "melius": 43,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 3,
        "edge": "magic-patterns",
        "key": "payments",
        "magic-patterns": 23,
        "melius": 20,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "magic-patterns",
        "key": "maintenance",
        "magic-patterns": 70,
        "melius": 56,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 4,
        "edge": "magic-patterns",
        "key": "transparency",
        "magic-patterns": 60,
        "melius": 56,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Magic Patterns scores 63.4 (B) on agent readiness against Melius's 53.3 (D), and leads in every scored category. Both do design canvases.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "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.",
      "melius": "One backend serves a 59-operation REST API with a public OpenAPI spec, a hosted MCP server with OAuth sign-in and a JSON-only CLI, and the status page showed no incidents from July to early October 2026. API keys carry no scopes and work with their creator's role, and no rate-limit numbers, changelog or per-model credit prices are published."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius",
    "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius.min.md"
  },
  "markdown": "Magic Patterns scores 63.4 (B) on agent readiness against Melius's 53.3 (D), and leads in every scored category. Both do design canvases.\n\n- Magic Patterns: grade B, 63.4/100, rank #517 of 1486. Markdown https://www.anchorterminal.com/tools/magic-patterns.md · JSON https://www.anchorterminal.com/api/v1/tools/magic-patterns.json\n- Melius: grade D, 53.3/100, rank #948 of 1486. Markdown https://www.anchorterminal.com/tools/melius.md · JSON https://www.anchorterminal.com/api/v1/tools/melius.json\n- Best design workspace and canvas APIs for AI agents: https://www.anchorterminal.com/best/design/index.md\n- All 120 design comparisons: https://www.anchorterminal.com/compare/design/index.md\n\n## Which one, for what\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 69\n- Schema \u0026 documentation, 84 against 70\n- Agent ergonomics, 67 against 51\n- Security \u0026 auth, 55 against 43\n- Maintenance \u0026 community, 70 against 56\n\nWatch for: MCP and API-key access need a paid seat, Starter at $20 a month\n\n### Melius (D)\n\nGood for: An agent producing batches of ad creative, product images or short videos on a shared canvas that people then review, with many models behind one key.\n\nWatch for: API keys have no scopes. A key works with its creator's role in every team the creator belongs to\n\n\n## Why the edge\n\n### Agent ergonomics: Magic Patterns +16\n\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- Melius (51): The MCP reference lists 75 tools, in the over-30 band, with `get_guide` and `get_docs` loading guidance on demand and 18 Cast tools shown only to teams with access (10 of 25). Four list operations take `limit` and `offset` and three take `search`, canvas content can be narrowed to one node or to media summaries, and the CLI has `--fields` (14 of 20). REST errors carry `statusCode`, `error` and `message`, the CLI adds a `code` and a `suggestion`, and `CANVAS_TOO_LARGE` is documented as not worth retrying. A shortage of credits arrives as a plain 400 (14 of 20). No idempotency keys, and we couldn't read MCP annotations without an account. The docs do give safe-retry guidance (5 of 20). Auto model selection and defaults keep required fields few. There is no SDK library, only the CLI and generated code samples in six languages (8 of 15). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains.\n\n### Schema \u0026 documentation: Magic Patterns +14\n\n- Magic Patterns (84): The MCP server is closed, so its tool definitions weren't read. The v3 API has an OpenAPI 3.0.3 description, served as a block in each API reference page; the file llms.txt links at /docs/openapi-v3.yml answered with a not-found page (20 of 25). llms.txt and a Markdown copy of every docs page (10). The tools page sets out four workflows with call order, says when to poll and how often, splits read from write tools and warns that the user may edit at any time (17 of 20). Parameters are typed and marked required, the feedback `category` is an enum, and file writes take an array of name and content pairs (10 of 15). Request and response examples, an error table (400, 401, 402, 403) and 409 behaviour on writes (12 of 15). Versioned /v3 paths, a v2 deprecation notice and a dated product changelog (15). 20 + 10 + 17 + 10 + 12 + 15 = 84.\n- Melius (70): Public OpenAPI 3.0.2 spec with 59 operations (25). llms.txt, llms-full.txt and a Markdown copy of every docs page (10). 58 of the 59 operations have a summary and no description. The MCP reference gives each of 75 tools one line, with ordering rules for `get_guide`, `show_presence` and `canvas_plan_layout`, and the tool definitions themselves need a signed-in client, so we didn't read them (8 of 20). Request bodies are typed with 336 enums, ranges, UUID formats and required fields, with 52 open `additionalProperties` objects (13 of 15). 401, 403 and 429 are declared on every operation and 400, 404 and 409 where they apply, but the spec has no examples and most error bodies are a bare `message` (9 of 15). The path is versioned at /api/v1 and the CLI states semantic versioning. No public changelog found (5 of 15). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains.\n\n### Maintenance \u0026 community: Magic Patterns +14\n\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- Melius (56): The newest dated release is the CLI, 0.16.2 on 10 September 2026 per the 8 October npm reading, 55 days before this check. The vendor's Homebrew tap, whose bot tracks npm hourly, has no version after 0.16.2, and no other dated source could be read (20). Versions 0.15.0 to 0.16.2, eight in all, fall between 7 August and 10 September by the tap's bump commits, which match the 19 versions since 10 July in the 8 October npm reading (20). Closed service with no public changelog or issue tracker. Support is by email at support@melius.com and a Discord server linked from the site (5 of 15). There is no SDK library, though the CLI is on npm and Homebrew (5 of 15). The CLI has three dependencies, needs Node.js 20 and is published from GitHub Actions through npm trusted publishing. Its source is not public (6 of 10).\n\n### Security \u0026 auth: Magic Patterns +12\n\n- Magic Patterns (55): OAuth 2.1 with PKCE S256, dynamic registration and a device flow, issued by oauth.magicpatterns.com with WorkOS keys. Scopes are openid, email, profile and offline_access only, so a token carries the user's whole workspace role. API keys are shown once, with no scopes, expiry or rotation documented (22 of 30). The read-only endpoint doesn't register the 13 tools that create, change or publish. There is no confirmation step on the write endpoint (14 of 20). Tools return design code and chat history that collaborators wrote, and no prompt-injection guidance was found (3 of 15). `x-mp-agent-name` attributes changes in the UI, and audit logs come with Enterprise only (8 of 15). The security page describes encryption, logging and the Render and MongoDB Atlas setup and points to SOC 2 reports in a Trust Center drawn by script, which wasn't read. No security.txt, disclosure policy or bug bounty found (8 of 20). 22 + 14 + 3 + 8 + 8 = 55.\n- Melius (43): API keys are revocable at once, can expire and are shown once, but have no scopes. A key works with its creator's access in every team that user belongs to, capped at the user's role. The MCP OAuth flow uses S256 PKCE and dynamic client registration, lists no scopes, and ties the connector key to one team (22 of 30). A key made by a viewer can only read, `bulk_delete_node` asks the user to confirm and a run can return a pending approval, but there is no read-only key and the setup guide tells users to select Always Allow for every tool (9 of 20). Canvas text, comments from collaborators and files fetched by `url_to_canvas` reach the model, and no prompt-injection guidance was found (2 of 15). Keys list a `lastUsedAt` time, connector keys are named after the client, and generation history is kept per member. No audit log is documented (7 of 15). No security.txt, disclosure policy or bug bounty found. A Vanta trust centre exists at trust.melius.com but needs JavaScript, so certifications are unchecked (3 of 20). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains.\n\n### Reliability: Magic Patterns +6\n\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- Melius (69): Graded on the hosted REST API and MCP server. status.melius.com runs on incident.io with component history for Web app and MCP, though it has no API component (20). Its history listed no incidents from July to 8 October 2026, as far back as the page went. 9 October to 4 November is unread, and a partly unread window keeps its recorded award (30). No rate-limit numbers are published. The docs say only that no plan has a monthly request quota and that bursts can return 429 (0). 429s carry `Retry-After` and a `retryAfterSeconds` body field, and the docs give a bounded retry policy and tell clients to check canvas or run state after a timeout or 5xx on a write. There are no idempotency keys (12 of 15). No SLA found (0). The API and MCP server carry no beta label, but the CLI is at 0.16.2 and Cast and media-URL inputs are marked beta (7 of 10). Per the 8 October check, not re-read on 4 November, because the terms of 30 October 2026 bar automated access to melius.com and its subdomains.\n\n## Score by category\n\n| Category | Weight | Magic Patterns | Melius | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 75 | 69 | Magic Patterns +6 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 84 | 70 | Magic Patterns +14 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 51 | Magic Patterns +16 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 43 | Magic Patterns +12 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 23 | 20 | Magic Patterns +3 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 70 | 56 | Magic Patterns +14 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 60 | 56 | Magic Patterns +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.4 · B** | **53.3 · D** | |\n\n## Facts side by side\n\n| Fact | Magic Patterns | Melius |\n| --- | --- | --- |\n| Kind | MCP server | HTTP API |\n| Vendor | North Park Labs, Inc. (Magic Patterns) | Melius AI, Inc. |\n| Hosted endpoint | `https://mcp.magicpatterns.com/mcp` | `https://api.melius.com/api/v1` |\n| Transports | Streamable HTTP, HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | Closed service under the Magic Patterns terms of service (last updated 1 April 2025) | Proprietary service under Melius's terms of service. The mel CLI on npm is MIT, with no public source repository found |\n| Tools exposed | 24 | 75 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| Last release | 2026-11-05 | 2026-09-10 |\n| Terms last updated | 2025-04-01 | no date given |\n| Privacy policy last updated | 2025-04-01 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | yes |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 9 npm/wk |\n\n## How the scores have moved\n\n### Magic Patterns\n\nNo score change since it was listed.\n\n### Melius\n\n- -0.9 on 4 November 2026 (C to D): time\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\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**Melius.** One backend serves a 59-operation REST API with a public OpenAPI spec, a hosted MCP server with OAuth sign-in and a JSON-only CLI, and the status page showed no incidents from July to early October 2026. API keys carry no scopes and work with their creator's role, and no rate-limit numbers, changelog or per-model credit prices are published.\n\n## Before you call either\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### Melius\n\n1. Generate by creating a node on a canvas, starting a run with POST /nodes/{nodeId}/runs, then polling GET /node-runs/{nodeRunId} until `status` is finished or failed\n2. Over MCP, call `get_guide` first, `show_presence` before node changes and `canvas_plan_layout` before `bulk_create_nodes`\n3. On 429 wait `Retry-After` seconds. After a timeout or 5xx on a write, read the canvas or run state before resubmitting, because there are no idempotency keys\n4. Read credit costs from GET /generation/models?category=image before a bulk run. A 400 can mean the team is out of credits\n5. Downloads arrive as a ZIP from a signed URL. Fetch that URL without the `Authorization` header\n\n## Questions\n\n### Which is better for AI agents, Magic Patterns or Melius?\n\nMagic Patterns scores 63.4 (B) on agent readiness against Melius's 53.3 (D), and leads in every scored category.\n\n### Do Magic Patterns and Melius need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Magic Patterns and Melius without installing anything?\n\nYes. Magic Patterns has a hosted endpoint at https://mcp.magicpatterns.com/mcp and Melius at https://api.melius.com/api/v1.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/magic-patterns-vs-melius.json, and with the fewest tokens: https://www.anchorterminal.com/compare/magic-patterns-vs-melius.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"magic-patterns\", \"b\": \"melius\"}`. From a terminal: `anchor compare magic-patterns melius`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/magic-patterns.json and https://www.anchorterminal.com/api/v1/tools/melius.json\n\n## Other comparisons with Magic Patterns or Melius\n\n- [ArtCraft vs Melius](https://www.anchorterminal.com/compare/artcraft-vs-melius.md)\n- [Figma API + MCP vs Magic Patterns](https://www.anchorterminal.com/compare/figma-mcp-vs-magic-patterns.md)\n- [Figma API + MCP vs Melius](https://www.anchorterminal.com/compare/figma-mcp-vs-melius.md)\n- [Framelink MCP for Figma vs Magic Patterns](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-magic-patterns.md)\n- [Framelink MCP for Figma vs Melius](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-melius.md)\n- [Framer Server API vs Magic Patterns](https://www.anchorterminal.com/compare/framer-vs-magic-patterns.md)\n- [Framer Server API vs Melius](https://www.anchorterminal.com/compare/framer-vs-melius.md)\n- [Kite vs Magic Patterns](https://www.anchorterminal.com/compare/kite-new-vs-magic-patterns.md)\n- [Kite vs Melius](https://www.anchorterminal.com/compare/kite-new-vs-melius.md)\n- [Magic Patterns vs Miro API + MCP](https://www.anchorterminal.com/compare/magic-patterns-vs-miro.md)\n- [Melius vs Zeplin](https://www.anchorterminal.com/compare/melius-vs-zeplin.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 Zeplin](https://www.anchorterminal.com/compare/magic-patterns-vs-zeplin.md)\n- [Magic Patterns vs UXKIN](https://www.anchorterminal.com/compare/magic-patterns-vs-uxkin-agent.md)\n- [Melius vs Miro API + MCP](https://www.anchorterminal.com/compare/melius-vs-miro.md)\n- [Melius vs pen.dev](https://www.anchorterminal.com/compare/melius-vs-pen-dev.md)\n- [Melius vs Penpot API + MCP](https://www.anchorterminal.com/compare/melius-vs-penpot.md)\n- [Melius vs Sketch](https://www.anchorterminal.com/compare/melius-vs-sketch.md)\n- [Melius vs Subframe](https://www.anchorterminal.com/compare/melius-vs-subframe.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": "Magic Patterns vs Melius",
        "url": ""
      }
    ],
    "description": "Magic Patterns scores 63.4 (B) to Melius's 53.3 (D) for design canvases. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Magic Patterns B 63.4",
      "Melius D 53.3",
      "scores"
    ],
    "h1": "Magic Patterns vs Melius",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/magic-patterns-vs-melius",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Magic Patterns vs Melius for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-melius"
  },
  "tokens": {
    "markdown": 4700,
    "slim": 2930
  },
  "version": 1
}
