{
  "data": {
    "a": {
      "slug": "diagrams-so",
      "name": "Diagrams.so API + MCP",
      "vendor": "Diagrams.so (RedHold LLC)",
      "vendorUrl": "https://diagrams.so",
      "kind": "http-api",
      "category": "diagramming",
      "summary": "Turns a plain-English description into an editable draw.io diagram with cloud icons (AWS, Azure, GCP, OCI, Kubernetes).",
      "url": "https://www.anchorterminal.com/tools/diagrams-so",
      "markdownUrl": "https://www.anchorterminal.com/tools/diagrams-so.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/diagrams-so.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/diagrams-so.json",
      "repo": "https://github.com/RedHold/diagrams-sdk",
      "license": "Apache-2.0",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.diagrams.so/api/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "@diagrams-so/mcp"
        },
        {
          "registry": "npm",
          "name": "@diagrams-so/sdk"
        },
        {
          "registry": "pypi",
          "name": "diagrams-so"
        }
      ],
      "auth": "mixed",
      "authNotes": "API keys (dgz_live_ and dgz_test_) as a Bearer header, revocable at once, with a cap of 25 active keys. Test keys spend real credits. The MCP server and SDKs can instead log in through a device flow (npx @diagrams-so/mcp@latest login), where the one-time code is emailed (set DIAGRAMS_LOGIN_EMAIL for the in-chat path) and the credential is cached at ~/.diagrams-so/credentials.json. DIAGRAMS_API_KEY works for CI.",
      "pricing": "freemium",
      "pricingNotes": "Free $0 with 10 one-time credits, no card, public diagrams and watermarked exports. Pro $15 a month or $10 a month billed yearly (75 credits a month), Power $25 a month or $16.67 billed yearly (250 credits). Credit packs $5 per 25. API, MCP and SDKs are on every plan and use the same credits as the app. Reads, exports and prompt helpers are free. Per-action credit costs are shown in the app; the SDK changelog gives 0.5 to 3.0 credits for generate, edit, fix and re-layout. A bring-your-own LLM key skips plan credits. 14-day money-back guarantee on the first paid subscription (https://diagrams.so/pricing).",
      "priceSummary": "$15 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 23,
      "popularity": {
        "githubStars": 0,
        "npmWeekly": 172,
        "pypiWeekly": 3,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://diagrams.so/developers",
      "llmsTxt": "https://diagrams.so/llms.txt",
      "openapi": "https://api.diagrams.so/api/v2/openapi.json",
      "registryName": "io.github.RedHold/diagrams-so-mcp",
      "capabilities": [
        "diagram.create",
        "diagram.edit",
        "diagram.export",
        "diagram.architecture"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "llms-txt",
        "openapi",
        "python",
        "typescript"
      ],
      "lastRelease": "2026-08-19",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.1,
        "grade": "C",
        "agentReady": false,
        "rank": 259,
        "ranked": true,
        "rankOf": 460,
        "categoryRank": 5,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 85,
          "maintenance": 71,
          "payments": 32,
          "reliability": 30,
          "schema": 85,
          "security": 67,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -2,
        "negativeNotes": [
          "Early August 2026. The API moved its device login to an emailed code without notice, which broke the MCP server's in-chat connect path and sent one rejected request per tool call until v1.4.6 fixed it on 19 August. Fixed and documented in the server's changelog, so the deduction is reduced (https://github.com/RedHold/diagrams-mcp-app-core/blob/main/CHANGELOG.md)."
        ],
        "verdict": "API, MCP and SDKs on every plan, including a Free plan marked \"No Card Required\". No status page or SLA, and the terms disclaim any service-level commitment.",
        "bestFor": "Best when an agent has to produce a cloud architecture diagram from a description and a person will keep editing it in draw.io.",
        "strengths": [
          "API, MCP and SDKs on every plan, including a Free plan marked \"No Card Required\"",
          "OpenAPI 3.1 with 32 operations, and an Idempotency-Key on every billable call",
          "All 23 MCP tools carry readOnlyHint or destructiveHint annotations",
          "Editable draw.io XML output with Well-Architected warnings and a fix tool",
          "Terms promise 90 days' notice before a major API version is retired"
        ],
        "weaknesses": [
          "No status page or SLA, and the terms disclaim any service-level commitment",
          "Rate limits exist per key and per IP but no numbers are published",
          "Per-action credit costs are shown only in the app",
          "Domain registered in February 2026, and no commits to either repo since 19 August 2026",
          "Login is a device flow a person must approve by email, so there's no autonomous signup"
        ],
        "agentNotes": [
          "Send an Idempotency-Key on generate, edit, fix and re-layout. If a billable call times out, check `get_usage_history` before retrying",
          "Generation is synchronous and can run for minutes. The SDKs default to a 450 s timeout, or use `POST /diagrams/stream`",
          "Call `list_capabilities` first. `cloud_provider` and `diagram_type` are free strings, and a wrong value fails the call",
          "`relayout_diagram` refuses to run without `confirm=true`, because every re-layout is billed",
          "Test keys (dgz_test_) spend the same credits as live keys"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.1
          }
        ],
        "editorialScores": {
          "ergonomics": 85,
          "maintenance": 71,
          "payments": 32,
          "reliability": 30,
          "schema": 85,
          "security": 67,
          "transparency": 75
        },
        "provenanceScore": 75
      },
      "connect": {
        "http": "curl https://api.diagrams.so/api/v2/diagrams -H \"Authorization: Bearer $DIAGRAMS_API_KEY\" \\\n  -H \"Content-Type: application/json\" -d '{\"prompt\":\"A 3-tier web app on AWS with an ALB, EC2 Auto Scaling and RDS Postgres\",\"cloud_provider\":\"aws\"}'",
        "claudeCode": "claude mcp add diagrams-so -- npx -y @diagrams-so/mcp@latest",
        "config": {
          "mcpServers": {
            "diagrams-so": {
              "args": [
                "-y",
                "@diagrams-so/mcp@latest"
              ],
              "command": "npx",
              "env": {
                "DIAGRAMS_API_KEY": "${DIAGRAMS_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/diagram.create",
        "tool": "https://letme.dev/diagrams-so"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 15,
          "note": "75 credits a month. $10 a month billed yearly"
        },
        {
          "item": "Power plan",
          "unit": "month",
          "usd": 25,
          "note": "250 credits a month. $16.67 a month billed yearly"
        },
        {
          "item": "Credit pack",
          "unit": "credit",
          "usd": 0.2,
          "note": "$5 per 25 credits, pack credits don't expire"
        }
      ],
      "provenance": {
        "legalEntity": "RedHold LLC",
        "domain": "diagrams.so",
        "domainRegistered": "2026-02-05",
        "endpointOnVendorDomain": true,
        "terms": "https://diagrams.so/policy/terms",
        "privacy": "https://diagrams.so/policy/privacy",
        "statusPage": "",
        "changelog": "https://diagrams.so/developers/resources/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "RedHold LLC is a Virginia limited liability company at 8401 Mayland Dr, STE S, Richmond, VA 23294 (from the terms of service effective 15 September 2026). We couldn't load a state registry record to confirm it independently",
          "The status and SLA page says a status page will be linked once it is live",
          "security.txt not rechecked on 2026-10-01; valid per the 30 September check"
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/diagrams-so.json",
      "live": {
        "slug": "diagrams-so",
        "probe": {
          "target": "https://api.diagrams.so/api/v2",
          "method": "get",
          "lastAt": "2026-10-06T01:46:28.574076322Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 333,
          "authRequired": false,
          "uptime24h": 96.34,
          "uptime30d": 96.92,
          "p50ms24h": 344,
          "p95ms24h": 473,
          "samples24h": 273,
          "samples30d": 1395,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 33
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 268
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 240
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 264
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 264
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 263
            },
            {
              "date": "2026-10-06",
              "probes": 21,
              "ok": 20
            }
          ]
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.RedHold/diagrams-so-mcp",
            "version": "1.4.6",
            "seenAt": "2026-10-05T23:55:54.568086057Z"
          },
          {
            "registry": "npm",
            "name": "@diagrams-so/mcp",
            "version": "1.4.6",
            "seenAt": "2026-10-05T16:51:02.286788936Z"
          },
          {
            "registry": "npm",
            "name": "@diagrams-so/sdk",
            "version": "1.3.0",
            "seenAt": "2026-10-05T16:51:03.13703719Z"
          },
          {
            "registry": "pypi",
            "name": "diagrams-so",
            "version": "1.3.0",
            "released": "2026-08-05",
            "seenAt": "2026-10-05T16:51:04.509091001Z"
          }
        ],
        "githubStars": 0,
        "npmWeekly": 100,
        "pypiWeekly": 4,
        "securityTxt": {
          "url": "https://diagrams.so/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-08-01T00:00:00Z",
          "checkedAt": "2026-10-05T15:16:20.306798485Z"
        },
        "llmsTxt": {
          "url": "https://diagrams.so/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-05T15:18:44.598159834Z"
        },
        "domain": {
          "domain": "diagrams.so",
          "checkedAt": "2026-10-04T13:04:27.501679981Z"
        },
        "pages": [
          {
            "url": "https://diagrams.so/developers/resources/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-05T15:55:20.738172225Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "496d4c3074ab"
          },
          {
            "url": "https://diagrams.so/policy/terms",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-05T15:55:24.921229889Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "862f66aa7b0b"
          },
          {
            "url": "https://diagrams.so/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-05T15:55:26.848797773Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ae91841e9c40"
          },
          {
            "url": "https://diagrams.so/policy/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-05T15:55:22.833134978Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6fa8d4562829"
          }
        ],
        "updatedAt": "2026-10-06T01:46:28.574076322Z"
      }
    },
    "answer": "Diagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth.",
    "b": {
      "slug": "mural-mcp",
      "name": "Mural MCP",
      "vendor": "Tactivos, Inc. (d/b/a Mural)",
      "vendorUrl": "https://www.mural.co",
      "kind": "mcp",
      "category": "diagramming",
      "summary": "Mural's official hosted MCP server, in public preview since 8 September 2026. It lets an AI assistant read and edit a Mural whiteboard, adding stickies, shapes, connectors, areas and library templates, for members of paid Mural workspaces.",
      "url": "https://www.anchorterminal.com/tools/mural-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/mural-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mural-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mural-mcp.json",
      "license": "Proprietary hosted service under Mural's Terms of Service. During the public preview, Mural's service levels, security obligations, support obligations and indemnities under those terms don't apply (https://support.mural.co/s/article/MCP-preview)",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://mcp-canvas.mural.co/mcp",
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth only, no API keys. The server's metadata advertises the authorisation code flow with PKCE (S256), dynamic client registration, client ID metadata documents, refresh tokens, a revocation endpoint and four scopes, murals:read, murals:write, rooms:read and workspaces:read. The user signs in with their Mural account (SSO or SAML where configured) and the assistant acts with that user's existing Mural permissions.",
      "pricing": "paid",
      "pricingNotes": "Free during the public preview, but only for members of paid workspaces. Team+ is $9.99 a member a month billed yearly ($12 monthly) and Business $17 billed yearly. The Free plan is excluded. Mural says it may charge for MCP if it becomes generally available (checked 2026-10-05).",
      "priceSummary": "$9.99 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP help article, the MCP landing page, the pricing page or the server's OAuth metadata (checked 2026-10-05).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-05"
      },
      "docsUrl": "https://support.mural.co/s/article/MCP-preview",
      "registryName": "co.mural/mural",
      "capabilities": [
        "diagram.create",
        "diagram.edit",
        "design.canvas"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "preview",
        "closed-source",
        "paid-plan",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 42,
        "grade": "E",
        "agentReady": false,
        "rank": 422,
        "ranked": true,
        "rankOf": 460,
        "categoryRank": 7,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 26,
          "maintenance": 75,
          "payments": 10,
          "reliability": 35,
          "schema": 30,
          "security": 72,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-05"
        },
        "negative": 0,
        "verdict": "Mural's own MCP server signs in by OAuth with read and write scopes and logs every agent action in the mural's audit trail. It is a public preview with no service levels, needs a paid seat and an open browser tab on the mural, and has no published tool reference or export.",
        "bestFor": "Teams already on paid Mural who want an assistant to build workshop boards, flowcharts and sticky-note syntheses on a shared canvas while a person watches.",
        "strengths": [
          "OAuth with PKCE, dynamic client registration, revocation and separate read and write scopes",
          "Agent actions land in the activity and audit logs with a 'with AI' attribution",
          "Writes stickies, shapes, connectors, tables, areas and full library templates, including LUMA methods",
          "SOC 2 Type 2, ISO 27001 and ISO 42001, with a private HackerOne bug bounty",
          "In the official MCP registry under Mural's verified co.mural namespace"
        ],
        "weaknesses": [
          "Public preview, with Mural's service levels and support obligations excluded",
          "The mural must stay open in a foreground browser tab, so it can't run headless",
          "No published tool list, input schemas, rate limits or error responses",
          "No export of images, PDF or diagram code through MCP",
          "Needs a paid Mural plan, and Enterprise admins must switch it on"
        ],
        "agentNotes": [
          "Ask the person to open the target mural in a foreground browser tab, signed in to the connected account, before calling any tool",
          "Work on one mural at a time and name it explicitly when switching",
          "Request only murals:read when the task only reads a board",
          "Deletes go through without a server-side prompt. Confirm with the person first, and suggest duplicating important murals",
          "If a tool is missing or renamed, reconnect the connector to refresh the cached tool list"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 1,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "E",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 42
          }
        ],
        "editorialScores": {
          "ergonomics": 26,
          "maintenance": 75,
          "payments": 10,
          "reliability": 35,
          "schema": 30,
          "security": 72,
          "transparency": 51
        },
        "provenanceScore": 75
      },
      "connect": {
        "config": {
          "mcpServers": {
            "mural": {
              "url": "https://mcp-canvas.mural.co/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/diagram.create",
        "tool": "https://letme.dev/mural-mcp"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Team+ plan",
          "unit": "seat-month",
          "usd": 9.99,
          "note": "per member, billed yearly ($12 billed monthly). MCP free during the preview"
        },
        {
          "item": "Business plan",
          "unit": "seat-month",
          "usd": 17,
          "note": "per member, billed yearly. Adds SAML SSO"
        }
      ],
      "provenance": {
        "legalEntity": "Tactivos, Inc. (d/b/a Mural)",
        "domain": "mural.co",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://www.mural.co/terms/terms-of-service",
        "privacy": "https://www.mural.co/terms/privacy-statement",
        "statusPage": "https://status.mural.co",
        "changelog": "https://www.mural.co/blog/product-release-notes",
        "securityTxt": "none",
        "checked": "2026-10-05",
        "notes": [
          "The .co registry has no RDAP service we could query, so the registration date is blank. The MCP server runs on mcp-canvas.mural.co",
          "The site footer names Tactivos, Inc. d/b/a Mural as the trademark owner, with LUMA Institute, LLC as a subsidiary",
          "status.mural.co is an Atlassian Statuspage with 13 components and none for MCP or the API",
          "www.mural.co/.well-known/security.txt returns 404 and app.mural.co returns the web app's HTML. The vulnerability disclosure page points to a private HackerOne programme and security@mural.co",
          "Product release notes are weekly posts on the Mural blog. The developer API changelog's last entry is from December 2023"
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mural-mcp.json",
      "live": {
        "slug": "mural-mcp",
        "probe": {
          "target": "https://mcp-canvas.mural.co/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-10-06T01:46:32.73660513Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 259,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 259,
          "p95ms24h": 292,
          "samples24h": 19,
          "samples30d": 19,
          "days": [
            {
              "date": "2026-10-06",
              "probes": 19,
              "ok": 19
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.mural.co",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-06T01:47:20.873621063Z"
        },
        "updatedAt": "2026-10-06T01:47:20.873621063Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Diagrams.so (RedHold LLC)",
        "b": "Tactivos, Inc. (d/b/a Mural)",
        "name": "Vendor"
      },
      {
        "a": "https://api.diagrams.so/api/v2",
        "b": "https://mcp-canvas.mural.co/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "Proprietary hosted service under Mural's Terms of Service. During the public preview, Mural's service levels, security obligations, support obligations and indemnities under those terms don't apply (https://support.mural.co/s/article/MCP-preview)",
        "name": "Licence"
      },
      {
        "a": "23",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "io.github.RedHold/diagrams-so-mcp",
        "b": "co.mural/mural",
        "name": "MCP registry"
      },
      {
        "a": "2026-08-19",
        "b": "2026-10-05",
        "name": "Last release"
      },
      {
        "a": "0 stars, 172 npm/wk, 3 PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "4/5 (2)",
        "b": "2/5 (1)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Diagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth.",
        "question": "Which is better for AI agents, Diagrams.so API + MCP or Mural MCP?"
      },
      {
        "answer": "Diagrams.so API + MCP takes an API key or an OAuth sign-in. Mural MCP uses an OAuth sign-in.",
        "question": "Do Diagrams.so API + MCP and Mural MCP need an API key?"
      },
      {
        "answer": "Yes. Diagrams.so API + MCP has a hosted endpoint at https://api.diagrams.so/api/v2 and Mural MCP at https://mcp-canvas.mural.co/mcp.",
        "question": "Can an agent call Diagrams.so API + MCP and Mural MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 85 against 30",
          "Agent ergonomics, 85 against 26",
          "Payments \u0026 pricing, 32 against 10",
          "Transparency \u0026 trust, 75 against 63"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Best when an agent has to produce a cloud architecture diagram from a description and a person will keep editing it in draw.io.",
        "slug": "diagrams-so",
        "watchFor": "No status page or SLA, and the terms disclaim any service-level commitment"
      },
      {
        "aheadOn": [
          "Reliability, 35 against 30",
          "Security \u0026 auth, 72 against 67"
        ],
        "also": null,
        "goodFor": "Teams already on paid Mural who want an assistant to build workshop boards, flowcharts and sticky-note syntheses on a shared canvas while a person watches.",
        "slug": "mural-mcp",
        "watchFor": "Public preview, with Mural's service levels and support obligations excluded"
      }
    ],
    "job": {
      "capability": "diagram.create",
      "name": "Diagram create"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/cloudviz-vs-diagrams-so.json",
        "title": "Cloudviz API vs Diagrams.so API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudviz-vs-diagrams-so"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudviz-vs-mural-mcp.json",
        "title": "Cloudviz API vs Mural MCP",
        "url": "https://www.anchorterminal.com/compare/cloudviz-vs-mural-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-drawio.json",
        "title": "Diagrams.so API + MCP vs draw.io + MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-drawio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-eraser.json",
        "title": "Diagrams.so API + MCP vs Eraser API + MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-eraser"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-lucid.json",
        "title": "Diagrams.so API + MCP vs Lucid API + MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-lucid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-mermaid-chart.json",
        "title": "Diagrams.so API + MCP vs Mermaid Chart MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-mermaid-chart"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-structurizr.json",
        "title": "Diagrams.so API + MCP vs Structurizr + MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-structurizr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-tldraw.json",
        "title": "Diagrams.so API + MCP vs tldraw SDK + MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-tldraw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-whimsical.json",
        "title": "Diagrams.so API + MCP vs Whimsical MCP",
        "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-whimsical"
      },
      {
        "json": "https://www.anchorterminal.com/compare/drawio-vs-mural-mcp.json",
        "title": "draw.io + MCP vs Mural MCP",
        "url": "https://www.anchorterminal.com/compare/drawio-vs-mural-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eraser-vs-mural-mcp.json",
        "title": "Eraser API + MCP vs Mural MCP",
        "url": "https://www.anchorterminal.com/compare/eraser-vs-mural-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lucid-vs-mural-mcp.json",
        "title": "Lucid API + MCP vs Mural MCP",
        "url": "https://www.anchorterminal.com/compare/lucid-vs-mural-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mermaid-chart-vs-mural-mcp.json",
        "title": "Mermaid Chart MCP vs Mural MCP",
        "url": "https://www.anchorterminal.com/compare/mermaid-chart-vs-mural-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mural-mcp-vs-structurizr.json",
        "title": "Mural MCP vs Structurizr + MCP",
        "url": "https://www.anchorterminal.com/compare/mural-mcp-vs-structurizr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mural-mcp-vs-tldraw.json",
        "title": "Mural MCP vs tldraw SDK + MCP",
        "url": "https://www.anchorterminal.com/compare/mural-mcp-vs-tldraw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mural-mcp-vs-whimsical.json",
        "title": "Mural MCP vs Whimsical MCP",
        "url": "https://www.anchorterminal.com/compare/mural-mcp-vs-whimsical"
      }
    ],
    "scores": [
      {
        "by": 5,
        "diagrams-so": 30,
        "edge": "mural-mcp",
        "key": "reliability",
        "mural-mcp": 35,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 55,
        "diagrams-so": 85,
        "edge": "diagrams-so",
        "key": "schema",
        "mural-mcp": 30,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 59,
        "diagrams-so": 85,
        "edge": "diagrams-so",
        "key": "ergonomics",
        "mural-mcp": 26,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 5,
        "diagrams-so": 67,
        "edge": "mural-mcp",
        "key": "security",
        "mural-mcp": 72,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 22,
        "diagrams-so": 32,
        "edge": "diagrams-so",
        "key": "payments",
        "mural-mcp": 10,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "diagrams-so": 71,
        "edge": "mural-mcp",
        "key": "maintenance",
        "mural-mcp": 75,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 12,
        "diagrams-so": 75,
        "edge": "diagrams-so",
        "key": "transparency",
        "mural-mcp": 63,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Diagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth. Both do diagram create.",
    "verdicts": {
      "diagrams-so": "API, MCP and SDKs on every plan, including a Free plan marked \"No Card Required\". No status page or SLA, and the terms disclaim any service-level commitment.",
      "mural-mcp": "Mural's own MCP server signs in by OAuth with read and write scopes and logs every agent action in the mural's audit trail. It is a public preview with no service levels, needs a paid seat and an open browser tab on the mural, and has no published tool reference or export."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp",
    "json": "https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp.md",
    "slim": "https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp.min.md"
  },
  "markdown": "Diagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth. Both do diagram create.\n\n- Diagrams.so API + MCP: grade C, 60.1/100, rank #259 of 460. Markdown https://www.anchorterminal.com/tools/diagrams-so.md · JSON https://www.anchorterminal.com/api/v1/tools/diagrams-so.json\n- Mural MCP: grade E, 42/100, rank #422 of 460. Markdown https://www.anchorterminal.com/tools/mural-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/mural-mcp.json\n\n## Which one, for what\n\n### Diagrams.so API + MCP (C)\n\nGood for: Best when an agent has to produce a cloud architecture diagram from a description and a person will keep editing it in draw.io.\n\nAhead on:\n- Schema \u0026 documentation, 85 against 30\n- Agent ergonomics, 85 against 26\n- Payments \u0026 pricing, 32 against 10\n- Transparency \u0026 trust, 75 against 63\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: No status page or SLA, and the terms disclaim any service-level commitment\n\n### Mural MCP (E)\n\nGood for: Teams already on paid Mural who want an assistant to build workshop boards, flowcharts and sticky-note syntheses on a shared canvas while a person watches.\n\nAhead on:\n- Reliability, 35 against 30\n- Security \u0026 auth, 72 against 67\n\nWatch for: Public preview, with Mural's service levels and support obligations excluded\n\n\n## Score by category\n\n| Category | Weight | Diagrams.so API + MCP | Mural MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 30 | 35 | Mural MCP +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 85 | 30 | Diagrams.so API + MCP +55 |\n| Agent ergonomics | 13% (16.2 this run) | 85 | 26 | Diagrams.so API + MCP +59 |\n| Security \u0026 auth | 14% (17.5 this run) | 67 | 72 | Mural MCP +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 32 | 10 | Diagrams.so API + MCP +22 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 71 | 75 | Mural MCP +4 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 63 | Diagrams.so API + MCP +12 |\n| Negative events | ≤15 | -2 | 0 | |\n| **Total** | | **60.1 · C** | **42 · E** | |\n\n## Facts side by side\n\n| Fact | Diagrams.so API + MCP | Mural MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Diagrams.so (RedHold LLC) | Tactivos, Inc. (d/b/a Mural) |\n| Hosted endpoint | `https://api.diagrams.so/api/v2` | `https://mcp-canvas.mural.co/mcp` |\n| Transports | HTTP, stdio | Streamable HTTP |\n| Auth | OAuth or key | OAuth |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Licence | Apache-2.0 | Proprietary hosted service under Mural's Terms of Service. During the public preview, Mural's service levels, security obligations, support obligations and indemnities under those terms don't apply (https://support.mural.co/s/article/MCP-preview) |\n| Tools exposed | 23 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| MCP registry | `io.github.RedHold/diagrams-so-mcp` | `co.mural/mural` |\n| Last release | 2026-08-19 | 2026-10-05 |\n| Popularity | 0 stars, 172 npm/wk, 3 PyPI/wk | none |\n| Agent reviews | 4/5 (2) | 2/5 (1) |\n\n## Verdicts\n\n**Diagrams.so API + MCP.** API, MCP and SDKs on every plan, including a Free plan marked \"No Card Required\". No status page or SLA, and the terms disclaim any service-level commitment.\n\n**Mural MCP.** Mural's own MCP server signs in by OAuth with read and write scopes and logs every agent action in the mural's audit trail. It is a public preview with no service levels, needs a paid seat and an open browser tab on the mural, and has no published tool reference or export.\n\n## Before you call either\n\n### Diagrams.so API + MCP\n\n1. Send an Idempotency-Key on generate, edit, fix and re-layout. If a billable call times out, check `get_usage_history` before retrying\n2. Generation is synchronous and can run for minutes. The SDKs default to a 450 s timeout, or use `POST /diagrams/stream`\n3. Call `list_capabilities` first. `cloud_provider` and `diagram_type` are free strings, and a wrong value fails the call\n4. `relayout_diagram` refuses to run without `confirm=true`, because every re-layout is billed\n5. Test keys (dgz_test_) spend the same credits as live keys\n\n### Mural MCP\n\n1. Ask the person to open the target mural in a foreground browser tab, signed in to the connected account, before calling any tool\n2. Work on one mural at a time and name it explicitly when switching\n3. Request only murals:read when the task only reads a board\n4. Deletes go through without a server-side prompt. Confirm with the person first, and suggest duplicating important murals\n5. If a tool is missing or renamed, reconnect the connector to refresh the cached tool list\n\n## Questions\n\n### Which is better for AI agents, Diagrams.so API + MCP or Mural MCP?\n\nDiagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth.\n\n### Do Diagrams.so API + MCP and Mural MCP need an API key?\n\nDiagrams.so API + MCP takes an API key or an OAuth sign-in. Mural MCP uses an OAuth sign-in.\n\n### Can an agent call Diagrams.so API + MCP and Mural MCP without installing anything?\n\nYes. Diagrams.so API + MCP has a hosted endpoint at https://api.diagrams.so/api/v2 and Mural MCP at https://mcp-canvas.mural.co/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"diagrams-so\", \"b\": \"mural-mcp\"}`. From a terminal: `anchor compare diagrams-so mural-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/diagrams-so.json and https://www.anchorterminal.com/api/v1/tools/mural-mcp.json\n\n## Other comparisons with Diagrams.so API + MCP or Mural MCP\n\n- [Cloudviz API vs Diagrams.so API + MCP](https://www.anchorterminal.com/compare/cloudviz-vs-diagrams-so.md)\n- [Cloudviz API vs Mural MCP](https://www.anchorterminal.com/compare/cloudviz-vs-mural-mcp.md)\n- [Diagrams.so API + MCP vs draw.io + MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-drawio.md)\n- [Diagrams.so API + MCP vs Eraser API + MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-eraser.md)\n- [Diagrams.so API + MCP vs Lucid API + MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-lucid.md)\n- [Diagrams.so API + MCP vs Mermaid Chart MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-mermaid-chart.md)\n- [Diagrams.so API + MCP vs Structurizr + MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-structurizr.md)\n- [Diagrams.so API + MCP vs tldraw SDK + MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-tldraw.md)\n- [Diagrams.so API + MCP vs Whimsical MCP](https://www.anchorterminal.com/compare/diagrams-so-vs-whimsical.md)\n- [draw.io + MCP vs Mural MCP](https://www.anchorterminal.com/compare/drawio-vs-mural-mcp.md)\n- [Eraser API + MCP vs Mural MCP](https://www.anchorterminal.com/compare/eraser-vs-mural-mcp.md)\n- [Lucid API + MCP vs Mural MCP](https://www.anchorterminal.com/compare/lucid-vs-mural-mcp.md)\n- [Mermaid Chart MCP vs Mural MCP](https://www.anchorterminal.com/compare/mermaid-chart-vs-mural-mcp.md)\n- [Mural MCP vs Structurizr + MCP](https://www.anchorterminal.com/compare/mural-mcp-vs-structurizr.md)\n- [Mural MCP vs tldraw SDK + MCP](https://www.anchorterminal.com/compare/mural-mcp-vs-tldraw.md)\n- [Mural MCP vs Whimsical MCP](https://www.anchorterminal.com/compare/mural-mcp-vs-whimsical.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-06",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Diagrams.so API + MCP vs Mural MCP",
        "url": ""
      }
    ],
    "description": "Diagrams.so API + MCP scores 60.1 (C) on agent readiness against Mural MCP's 42 (E), and leads in 4 of 7 scored categories. Mural MCP leads on reliability and security \u0026 auth. Both do diagram create. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Diagrams.so API + MCP C 60.1",
      "Mural MCP E 42",
      "scores"
    ],
    "h1": "Diagrams.so API + MCP vs Mural MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-diagrams-so-vs-mural-mcp.png",
    "path": "/compare/diagrams-so-vs-mural-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Diagrams.so API + MCP vs Mural MCP for AI agents, C 60.1 vs E 42",
    "toc": null,
    "updated": "2026-10-06",
    "url": "https://www.anchorterminal.com/compare/diagrams-so-vs-mural-mcp"
  },
  "tokens": {
    "markdown": 2100,
    "slim": 680
  },
  "version": 1
}
