{
  "data": {
    "a": {
      "slug": "miro",
      "name": "Miro API + MCP",
      "vendor": "Miro",
      "vendorUrl": "https://miro.com",
      "kind": "http-api",
      "category": "design",
      "summary": "Miro's REST API v2 reads and writes boards and board items (sticky notes, shapes, connectors, frames, cards, text, images, documents), tags and members, so an agent can lay out diagrams as well as notes.",
      "url": "https://www.anchorterminal.com/tools/miro",
      "markdownUrl": "https://www.anchorterminal.com/tools/miro.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/miro.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/miro.json",
      "dns": "miro.grade.anchorterminal.com",
      "repo": "https://github.com/miroapp/miro-ai",
      "license": "proprietary",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.miro.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "@mirohq/miro-api"
        }
      ],
      "auth": "oauth",
      "authNotes": "REST uses OAuth 2.0 tokens from a Miro app you create in the developer settings, with scopes such as boards:read and boards:write. The MCP server uses OAuth 2.1 with dynamic client registration and sees only boards the user can already open. On Enterprise, MCP is off until an admin enables it.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 3 editable boards. Starter $8 and Business $20 per member a month billed yearly (about 20 per cent more monthly). Enterprise custom, from 30 members. The REST API works on every plan. MCP tool calls a day are 100 on Free, 500 on Starter, 2,000 on Business and 10,000 on Enterprise (https://miro.com/pricing/).",
      "priceSummary": "$8 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No payment support in the REST or MCP docs.",
        "endpoints": []
      },
      "toolCount": 52,
      "popularity": {
        "githubStars": 156,
        "npmWeekly": 19028,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.miro.com/docs/rest-api-reference-guide",
      "llmsTxt": "https://developers.miro.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/miroapp/api-clients/main/packages/generator/spec.json",
      "registryName": "io.github.miroapp/mcp-server",
      "capabilities": [
        "design.files",
        "design.canvas",
        "design.comments",
        "diagram.create",
        "diagram.edit"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "closed-source",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "enterprise"
      ],
      "lastRelease": "2026-09-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.1,
        "grade": "B",
        "agentReady": false,
        "rank": 575,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 53,
          "maintenance": 67,
          "payments": 30,
          "reliability": 73,
          "schema": 85,
          "security": 67,
          "transparency": 77
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-02"
        },
        "negative": -3,
        "negativeNotes": [
          "-3: the changelog announced on 2026-09-08 that legacy MCP board tools would go, with a migration deadline of 14 September, and removed them on 2026-09-17. Notice was given, but nine days is short for a breaking change, so the lowest deduction (https://developers.miro.com/changelog.rss)."
        ],
        "verdict": "REST creates shapes, connectors and frames, so flowcharts and architecture sketches can be drawn directly, and a hosted MCP server works on every plan. The MCP server now exposes 52 tools, including sharing and delete tools, with no read-only mode, and legacy board tools were removed nine days after notice.",
        "bestFor": "Agents that draw diagrams, maps and planning boards people will keep editing.",
        "strengths": [
          "REST creates shapes, connectors and frames, so flowcharts and architecture sketches can be drawn directly",
          "Hosted MCP server with OAuth 2.1 on every plan including Free",
          "Published REST credit limits and MCP daily caps per plan",
          "ISO/IEC 27001, SOC 2 Type II, a public bug bounty and four data-residency regions",
          "Dated changelog with an RSS feed and Markdown twins of every docs page"
        ],
        "weaknesses": [
          "Legacy MCP board tools were removed nine days after the deprecation notice",
          "52 MCP tools with no toolsets or read-only mode, including sharing and delete tools",
          "No prompt-injection guidance for board content written by collaborators",
          "OAuth scopes are coarse (`boards:read`, `boards:write`)",
          "The official Node client hasn't been released since February 2025"
        ],
        "agentNotes": [
          "Create shapes first, then connectors with `startItem` and `endItem` ids",
          "Put related items in a frame and set `parent` so they move together",
          "Watch `X-RateLimit-Remaining`. There's no `Retry-After`, so back off exponentially on 429",
          "Through MCP, call `canvas_read_as_svg` before `canvas_update_from_svg`; an update applies a diff and can delete items missing from your SVG",
          "Ask before calling `board_share`, `space_share`, role updates or `section_delete`, which change who can see work or remove it"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.1
          }
        ],
        "editorialScores": {
          "ergonomics": 53,
          "maintenance": 67,
          "payments": 30,
          "reliability": 73,
          "schema": 85,
          "security": 67,
          "transparency": 67
        },
        "provenanceScore": 86,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-02",
            "maintenance": "2026-11-02",
            "payments": "2026-11-02",
            "reliability": "2026-11-02",
            "schema": "2026-11-02",
            "security": "2026-11-02",
            "transparency": "2026-11-02"
          },
          "last": "2026-11-02",
          "lastMoved": "2026-11-02",
          "oldest": "2026-11-02",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://api.miro.com/v2/boards -H \"Authorization: Bearer $MIRO_ACCESS_TOKEN\"",
        "claudeCode": "claude mcp add --transport http miro https://mcp.miro.com/",
        "config": {
          "mcpServers": {
            "miro": {
              "url": "https://mcp.miro.com/"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.files",
        "tool": "https://letme.dev/miro"
      },
      "alsoIn": [
        "diagramming"
      ],
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Starter plan",
          "unit": "seat-month",
          "usd": 8,
          "note": "billed yearly, API and MCP included"
        },
        {
          "item": "Business plan",
          "unit": "seat-month",
          "usd": 20,
          "note": "billed yearly"
        }
      ],
      "provenance": {
        "legalEntity": "RealtimeBoard Inc. dba Miro",
        "domain": "miro.com",
        "domainRegistered": "1995-09-08",
        "domainNote": "miro.com was registered in 1995, long before RealtimeBoard renamed itself Miro in 2019.",
        "endpointOnVendorDomain": true,
        "terms": "https://miro.com/legal/terms-of-service/",
        "privacy": "https://miro.com/legal/privacy-policy/",
        "statusPage": "https://status.miro.com",
        "changelog": "https://developers.miro.com/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/miro.json",
      "live": {
        "slug": "miro",
        "probe": {
          "target": "https://api.miro.com/v2",
          "method": "get",
          "lastAt": "2026-11-07T23:14:37.859932547Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 169,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 64,
          "p95ms24h": 357,
          "samples24h": 244,
          "samples30d": 7959,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 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": 236,
              "ok": 236
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.miro.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T23:08:07.047510925Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.miroapp/mcp-server",
            "version": "1.0.2",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "@mirohq/miro-api",
            "version": "2.2.4",
            "seenAt": "2026-11-06T23:46:11.047951984Z"
          }
        ],
        "githubStars": 166,
        "npmWeekly": 17435,
        "securityTxt": {
          "url": "https://miro.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:02:05.951844605Z"
        },
        "llmsTxt": {
          "url": "https://developers.miro.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:07.026101675Z"
        },
        "domain": {
          "domain": "miro.com",
          "registered": "1995-09-08",
          "source": "https://rdap.verisign.com/com/v1/domain/miro.com",
          "checkedAt": "2026-11-01T14:21:03.066471739Z"
        },
        "pages": [
          {
            "url": "https://developers.miro.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:04:18.771113859Z",
            "changedAt": "2026-11-07T14:04:18.771113859Z",
            "fingerprint": "d1063f9c200a"
          },
          {
            "url": "https://miro.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:14:24.541183458Z",
            "changedAt": "2026-10-30T05:43:58.591324786Z",
            "fingerprint": "b8810b32c534"
          },
          {
            "url": "https://miro.com/legal/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:14:20.385928971Z",
            "changedAt": "2026-10-30T05:43:53.844532374Z",
            "fingerprint": "a22047354024"
          },
          {
            "url": "https://miro.com/legal/terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:14:22.573192235Z",
            "changedAt": "2026-10-30T05:43:56.324071125Z",
            "fingerprint": "67808b0a6436"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.miro.com/",
          "checkedAt": "2026-11-07T01:46:16.024263838Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:46:16.024263838Z"
        },
        "github": {
          "repo": "miroapp/miro-ai",
          "checkedAt": "2026-11-02T09:07:33.530826103Z",
          "stars": 164,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-09-17T14:36:57Z",
          "openIssues": 16,
          "openPRs": 3,
          "issuesOpened90d": 9,
          "issuesClosed90d": 1,
          "prsMerged90d": 2,
          "ci": {
            "branch": "main",
            "runs": 29,
            "success": 29,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-09-17T14:37:37Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 13,
            "medianDays": 1
          }
        },
        "updatedAt": "2026-11-07T23:14:37.859932547Z"
      }
    },
    "answer": "Miro API + MCP scores 62.1 (B) on agent readiness against UX Pilot MCP server's 33 (F), and leads in every scored category.",
    "b": {
      "slug": "ux-pilot-mcp",
      "name": "UX Pilot MCP server",
      "vendor": "UX Pilot",
      "vendorUrl": "https://uxpilot.ai",
      "kind": "mcp",
      "category": "design",
      "summary": "UX Pilot's hosted MCP server lets an agent find, organise and import design work, run UX reviews and generate React prototypes on the UX Pilot canvas, over OAuth or an API key, with deletes only after the user confirms.",
      "url": "https://www.anchorterminal.com/tools/ux-pilot-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/ux-pilot-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ux-pilot-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ux-pilot-mcp.json",
      "dns": "ux-pilot-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/uxpilot-ai/uxpilot-mcp",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.uxpilot.net/mcp",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Native OAuth sign-in recommended, or an Authorization: Bearer API key as a fallback. Set up from Account Settings, MCP Access.",
      "pricing": "freemium",
      "pricingNotes": "A free tier to start generating; paid plans on the pricing page, which renders with script (checked 2026-11-07).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the MCP docs or pricing page (checked 2026-11-07).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-07"
      },
      "docsUrl": "https://uxpilot.ai/mcp",
      "registryName": "ai.uxpilot/uxpilot",
      "capabilities": [
        "design.canvas",
        "design.code",
        "design.review"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "remote-mcp",
        "oauth",
        "api-key",
        "freemium",
        "free-tier",
        "mcp-registry"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 33,
        "grade": "F",
        "agentReady": false,
        "rank": 1410,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 17,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 46,
          "maintenance": 45,
          "payments": 20,
          "reliability": 15,
          "schema": 45,
          "security": 39,
          "transparency": 22
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-07"
        },
        "negative": 0,
        "verdict": "UX Pilot's MCP server reaches its design canvas, reviews and React prototypes from any agent, with a careful split between organising and deleting. Little else is public, no status page, limits, errors or readable legal pages.",
        "bestFor": "Designers on UX Pilot who want an agent to organise screens, review UX and build React prototypes.",
        "strengths": [
          "Organise tools never delete; deletes need the user to confirm",
          "Grouped actions with a help tool for fields and examples",
          "OAuth, or a key as a fallback",
          "Free tier"
        ],
        "weaknesses": [
          "No status page, limits or error docs",
          "Terms and privacy not readable without script",
          "No changelog for a 3.0 server"
        ],
        "agentNotes": [
          "Ask the help tool for an action's fields before calling it",
          "Delete only after the user confirms",
          "Treat imported AI output and comments as untrusted"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "F",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 33
          }
        ],
        "editorialScores": {
          "ergonomics": 46,
          "maintenance": 45,
          "payments": 20,
          "reliability": 15,
          "schema": 45,
          "security": 39,
          "transparency": 5
        },
        "provenanceScore": 38,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-07",
            "maintenance": "2026-11-07",
            "payments": "2026-11-07",
            "reliability": "2026-11-07",
            "schema": "2026-11-07",
            "security": "2026-11-07",
            "transparency": "2026-11-07"
          },
          "last": "2026-11-07",
          "oldest": "2026-11-07",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "claudeCode": "claude mcp add ux-pilot --transport http https://mcp.uxpilot.net/mcp",
        "config": {
          "mcpServers": {
            "ux-pilot": {
              "url": "https://mcp.uxpilot.net/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.canvas",
        "tool": "https://letme.dev/ux-pilot-mcp"
      },
      "area": "design-diagrams",
      "provenance": {
        "legalEntity": "UX Pilot",
        "domain": "uxpilot.ai",
        "domainRegistered": "",
        "domainNote": "Not looked up: RDAP isn't requested under the 1 November 2026 rules.",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-07",
        "notes": [
          "The terms and privacy pages render with script, so the legal entity wasn't read."
        ],
        "score": 38
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/ux-pilot-mcp.json",
      "live": {
        "slug": "ux-pilot-mcp",
        "probe": {
          "target": "https://mcp.uxpilot.net/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-07T23:14:56.455790645Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 179,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 233,
          "p95ms24h": 515,
          "samples24h": 46,
          "samples30d": 46,
          "days": [
            {
              "date": "2026-11-07",
              "probes": 46,
              "ok": 46
            }
          ]
        },
        "updatedAt": "2026-11-07T23:14:56.455790645Z"
      }
    },
    "edges": [
      {
        "by": 58,
        "category": "reliability",
        "leads": "miro",
        "name": "Reliability",
        "reasons": {
          "a": "incident.io status page at status.miro.com with components (Application, Log in ability, MCP server, Web Site, Mail System, Billing) and history (20). In the 90 days from 4 August the history lists intermittent registration and login problems on 31 August and username-and-password sign-in unavailable on 9 September, both login only, and a scheduled CDN maintenance notice on 3 October, with no API, board or MCP incident (20 of 30). REST limits are published as credits, 100,000 a minute with calls costing 50 to 2,000 credits by level, and MCP calls are capped per day by plan (15). 429s return a JSON body with `code: tooManyRequests` and `X-RateLimit-Limit`, `-Remaining` and `-Reset` headers, and the docs advise exponential backoff. No `Retry-After` and no idempotency guidance for creates (10 of 15). No SLA found (0). REST v2 is GA. We didn't see a beta label on the MCP tools page, but didn't confirm the server's status either (8 of 10). 20 + 20 + 15 + 10 + 0 + 8 = 73.",
          "b": "No status page found (0). No history (5). No limits found (0). No retry guidance (0). No SLA (0). Not labelled beta (10). 0 + 5 + 0 + 0 + 0 + 10 = 15."
        },
        "scores": {
          "a": 73,
          "b": 15
        }
      },
      {
        "by": 55,
        "category": "transparency",
        "leads": "miro",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under published terms. The miro-ai plugins and skills are MIT (17 of 30). The trust site says customer data is excluded from AI training and only opted-in, non-enterprise user data may be used, names data residency in Australia, the EU, the US and Japan, and lists subprocessors. We didn't read retention periods (22 of 30). Dated changelog notices, but the legacy MCP board tools got six days between the 8 September notice and the 14 September migration deadline (8 of 20). Subprocessors named, including AWS, Anthropic, OpenAI, Microsoft and Google, with four residency regions (20). 17 + 22 + 8 + 20 = 67.",
          "b": "Terms and privacy render with script and weren't readable (0). Data handling not read (0). A tool that maps old tool names to new calls eased the 3.0 change, no dates (5 of 20). Subprocessors not found (0). 0 + 0 + 5 + 0 = 5."
        },
        "scores": {
          "a": 77,
          "b": 22
        }
      },
      {
        "by": 40,
        "category": "schema",
        "leads": "miro",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI spec in miroapp/api-clients, v2.0 with 114 paths and 197 operations, last updated 22 April 2026 (25). llms.txt at developers.miro.com, and every docs page has a Markdown twin (10). The MCP tools page (updated 28 October 2026) lists 52 tools with one-line descriptions, and a `canvas_get_canvas_composer_skill` tool hands the model drawing guidance, but the server is closed and we couldn't read its tool definitions (12 of 20). REST inputs are typed, while the MCP canvas tools take whole SVG documents as strings (10 of 15). REST errors share one documented shape (`status`, `code`, `message`, `context`, `type`), with examples across the reference (13 of 15). Dated changelog with an RSS feed and a versioned v2 API (15). 25 + 10 + 12 + 10 + 13 + 15 = 85.",
          "b": "Schemas not read without sign-in (15 of 25). No llms.txt read (0). Tools grouped by job (find, organise, delete, import, review, React), with a help tool that maps old names to new calls (14 of 20). Inputs not verifiable (5 of 15). A tool that returns any action's fields with an example (8 of 15). Registry 3.0.0 on 4 November; no changelog (3 of 15). 15 + 0 + 14 + 5 + 8 + 3 = 45."
        },
        "scores": {
          "a": 85,
          "b": 45
        }
      },
      {
        "by": 28,
        "category": "security",
        "leads": "miro",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "REST uses OAuth 2.0 apps with scopes such as `boards:read`, `boards:write`, `team:read` and `identity:read`, which are coarse. The MCP server uses OAuth 2.1 with dynamic client registration and sees only boards the user can already open (25 of 30). A `boards:read` token gives read-only REST access, and Enterprise admins must switch MCP on, org-wide or for chosen teams. The MCP server has no read-only mode, and the 52 tools now include `section_delete`, a `canvas_update_from_svg` that creates, updates and deletes items, and tools that share boards and spaces and change roles, so the earlier point for having no delete tool is gone (10 of 20, was 13). Sticky notes, comments and board text written by collaborators reach the model through `canvas_read_as_svg` and `comment_list_comments`, and `import-claude-design-from-url` fetches a public URL; we found no prompt-injection guidance (3 of 15). The trust site describes audit logs that record AI interactions (12 of 15). ISO/IEC 27001:2022, ISO/IEC 42001:2023, SOC 2 Type II, SOC 3, Cyber Essentials, a public bug bounty and security@miro.com on the trust site. No security.txt (miro.com/.well-known/security.txt answers 404) (17 of 20). 25 + 10 + 3 + 12 + 17 = 67.",
          "b": "OAuth or a bearer key; scopes not published (20 of 30). Organise tools never delete, and deletes need confirmation (14 of 20). Imported AI output and comments are third-party text; no injection guidance (3 of 15). No audit log (0). No security programme found (2 of 20). 20 + 14 + 3 + 0 + 2 = 39."
        },
        "scores": {
          "a": 67,
          "b": 39
        }
      },
      {
        "by": 22,
        "category": "maintenance",
        "leads": "miro",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "The newest changelog entry is 17 September 2026, 46 days before 2 November, so the recency line is in the within-90-days band (20 of 30, was 30, cause time). Four dated entries since 4 August, on 12 and 19 August and 8 and 17 September; the MCP registry entry (1.0.2, 6 March 2026) and the Node client (2.2.4, February 2025) add nothing in the window (20). Closed service with a public changelog and a developer community. The miro-ai repository of plugins and skills last had commits on 16 and 17 September (10 of 15). io.github.miroapp/mcp-server is in the official registry under a GitHub-verified namespace, latest 1.0.2, but the Node client hasn't had a release since February 2025 (13 of 15). Node client stale for 21 months; the api-clients repository gets only dependency bumps (4 of 10). 20 + 20 + 10 + 13 + 4 = 67.",
          "b": "Registry 3.0.0 and repository on 4 November 2026 (30). Dated releases not found (0). Issues not read (0). Official registry entry ai.uxpilot/uxpilot (15). README-only repository (0). 30 + 0 + 0 + 15 + 0 = 45. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API."
        },
        "scores": {
          "a": 67,
          "b": 45
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "miro",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). Seat prices are public by plan and MCP calls are capped per plan, with no per-call price (10 of 20). Free plan with 3 editable boards, the REST API and 100 MCP calls a day, and a 14-day Business trial; no card for the Free plan per the 30 September check (20). A person creates the OAuth app or approves the MCP sign-in in a browser (0). 0 + 10 + 20 + 0 = 30.",
          "b": "No machine payment protocol (0). Pricing behind script, not read (0). Free tier (20). A person signs up (0). 0 + 0 + 20 + 0 = 20."
        },
        "scores": {
          "a": 30,
          "b": 20
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Miro",
        "b": "UX Pilot",
        "name": "Vendor"
      },
      {
        "a": "https://api.miro.com/v2",
        "b": "https://mcp.uxpilot.net/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "proprietary",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "52",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "io.github.miroapp/mcp-server",
        "b": "ai.uxpilot/uxpilot",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-17",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2021-09-01",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2025-08-01",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "156 stars, 19k npm/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "4/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Miro API + MCP scores 62.1 (B) on agent readiness against UX Pilot MCP server's 33 (F), and leads in every scored category.",
        "question": "Which is better for AI agents, Miro API + MCP or UX Pilot MCP server?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do Miro API + MCP and UX Pilot MCP server need an API key?"
      },
      {
        "answer": "Yes. Miro API + MCP has a hosted endpoint at https://api.miro.com/v2 and UX Pilot MCP server at https://mcp.uxpilot.net/mcp.",
        "question": "Can an agent call Miro API + MCP and UX Pilot MCP server without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 73 against 15",
          "Schema \u0026 documentation, 85 against 45",
          "Agent ergonomics, 53 against 46",
          "Security \u0026 auth, 67 against 39",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 67 against 45",
          "Transparency \u0026 trust, 77 against 22"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "Agents that draw diagrams, maps and planning boards people will keep editing.",
        "slug": "miro",
        "watchFor": "Legacy MCP board tools were removed nine days after the deprecation notice"
      },
      {
        "aheadOn": null,
        "also": [
          "No incidents deducted, where Miro API + MCP loses 3 points for them"
        ],
        "goodFor": "Designers on UX Pilot who want an agent to organise screens, review UX and build React prototypes.",
        "slug": "ux-pilot-mcp",
        "watchFor": "No status page, limits or error docs"
      }
    ],
    "history": {
      "miro": [
        {
          "causes": [
            "product",
            "time"
          ],
          "date": "2026-11-02",
          "delta": -3,
          "from": 65.1,
          "fromGrade": "B",
          "to": 62.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-28",
          "delta": 0.1,
          "from": 65,
          "fromGrade": "B",
          "to": 65.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.3,
          "from": 65.3,
          "fromGrade": "B",
          "to": 65,
          "toGrade": "B"
        }
      ],
      "ux-pilot-mcp": null
    },
    "job": {
      "capability": "design.canvas",
      "name": "Design canvases"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-miro.json",
        "title": "Figma API + MCP vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro.json",
        "title": "Framelink MCP for Figma vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framer-vs-miro.json",
        "title": "Framer Server API vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/framer-vs-miro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kite-new-vs-miro.json",
        "title": "Kite vs Miro API + MCP",
        "url": "https://www.anchorterminal.com/compare/kite-new-vs-miro"
      },
      {
        "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/miro-vs-pen-dev.json",
        "title": "Miro API + MCP vs pen.dev",
        "url": "https://www.anchorterminal.com/compare/miro-vs-pen-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/miro-vs-penpot.json",
        "title": "Miro API + MCP vs Penpot API + MCP",
        "url": "https://www.anchorterminal.com/compare/miro-vs-penpot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/miro-vs-sketch.json",
        "title": "Miro API + MCP vs Sketch",
        "url": "https://www.anchorterminal.com/compare/miro-vs-sketch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/miro-vs-subframe.json",
        "title": "Miro API + MCP vs Subframe",
        "url": "https://www.anchorterminal.com/compare/miro-vs-subframe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/miro-vs-zeplin.json",
        "title": "Miro API + MCP vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/miro-vs-zeplin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp.json",
        "title": "Framelink MCP for Figma vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/impeccable-vs-ux-pilot-mcp.json",
        "title": "Impeccable vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/impeccable-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp.json",
        "title": "Magic Patterns vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ux-pilot-mcp-vs-zeplin.json",
        "title": "UX Pilot MCP server vs Zeplin",
        "url": "https://www.anchorterminal.com/compare/ux-pilot-mcp-vs-zeplin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp.json",
        "title": "Figma API + MCP vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framer-vs-ux-pilot-mcp.json",
        "title": "Framer Server API vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/framer-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kite-new-vs-ux-pilot-mcp.json",
        "title": "Kite vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/kite-new-vs-ux-pilot-mcp"
      },
      {
        "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-ux-pilot-mcp.json",
        "title": "Melius vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/melius-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pen-dev-vs-ux-pilot-mcp.json",
        "title": "pen.dev vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/pen-dev-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/penpot-vs-ux-pilot-mcp.json",
        "title": "Penpot API + MCP vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/penpot-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sketch-vs-ux-pilot-mcp.json",
        "title": "Sketch vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/sketch-vs-ux-pilot-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/subframe-vs-ux-pilot-mcp.json",
        "title": "Subframe vs UX Pilot MCP server",
        "url": "https://www.anchorterminal.com/compare/subframe-vs-ux-pilot-mcp"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 58,
        "edge": "miro",
        "key": "reliability",
        "miro": 73,
        "name": "Reliability",
        "ux-pilot-mcp": 15,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 40,
        "edge": "miro",
        "key": "schema",
        "miro": 85,
        "name": "Schema \u0026 documentation",
        "ux-pilot-mcp": 45,
        "weight": 13
      },
      {
        "by": 7,
        "edge": "miro",
        "key": "ergonomics",
        "miro": 53,
        "name": "Agent ergonomics",
        "ux-pilot-mcp": 46,
        "weight": 13
      },
      {
        "by": 28,
        "edge": "miro",
        "key": "security",
        "miro": 67,
        "name": "Security \u0026 auth",
        "ux-pilot-mcp": 39,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "miro",
        "key": "payments",
        "miro": 30,
        "name": "Payments \u0026 pricing",
        "ux-pilot-mcp": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 22,
        "edge": "miro",
        "key": "maintenance",
        "miro": 67,
        "name": "Maintenance \u0026 community",
        "ux-pilot-mcp": 45,
        "weight": 7
      },
      {
        "by": 55,
        "edge": "miro",
        "key": "transparency",
        "miro": 77,
        "name": "Transparency \u0026 trust",
        "ux-pilot-mcp": 22,
        "weight": 7
      }
    ],
    "summary": "Miro API + MCP scores 62.1 (B) on agent readiness against UX Pilot MCP server's 33 (F), and leads in every scored category. Both do design canvases.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "miro": "REST creates shapes, connectors and frames, so flowcharts and architecture sketches can be drawn directly, and a hosted MCP server works on every plan. The MCP server now exposes 52 tools, including sharing and delete tools, with no read-only mode, and legacy board tools were removed nine days after notice.",
      "ux-pilot-mcp": "UX Pilot's MCP server reaches its design canvas, reviews and React prototypes from any agent, with a careful split between organising and deleting. Little else is public, no status page, limits, errors or readable legal pages."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp",
    "json": "https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp.min.md"
  },
  "markdown": "Miro API + MCP scores 62.1 (B) on agent readiness against UX Pilot MCP server's 33 (F), and leads in every scored category. Both do design canvases.\n\n- Miro API + MCP: grade B, 62.1/100, rank #575 of 1510. Markdown https://www.anchorterminal.com/tools/miro.md · JSON https://www.anchorterminal.com/api/v1/tools/miro.json\n- UX Pilot MCP server: grade F, 33/100, rank #1410 of 1510. Markdown https://www.anchorterminal.com/tools/ux-pilot-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/ux-pilot-mcp.json\n- Best design workspace and canvas APIs for AI agents: https://www.anchorterminal.com/best/design/index.md\n- All 133 design comparisons: https://www.anchorterminal.com/compare/design/index.md\n- Best diagramming APIs and diagram-as-code for AI agents: https://www.anchorterminal.com/best/diagramming/index.md\n- All 148 diagrams comparisons: https://www.anchorterminal.com/compare/diagramming/index.md\n\n## Which one, for what\n\n### Miro API + MCP (B)\n\nGood for: Agents that draw diagrams, maps and planning boards people will keep editing.\n\nAhead on:\n- Reliability, 73 against 15\n- Schema \u0026 documentation, 85 against 45\n- Agent ergonomics, 53 against 46\n- Security \u0026 auth, 67 against 39\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 67 against 45\n- Transparency \u0026 trust, 77 against 22\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: Legacy MCP board tools were removed nine days after the deprecation notice\n\n### UX Pilot MCP server (F)\n\nGood for: Designers on UX Pilot who want an agent to organise screens, review UX and build React prototypes.\n\nAlso in its favour:\n- No incidents deducted, where Miro API + MCP loses 3 points for them\n\nWatch for: No status page, limits or error docs\n\n\n## Why the edge\n\n### Reliability: Miro API + MCP +58\n\n- Miro API + MCP (73): incident.io status page at status.miro.com with components (Application, Log in ability, MCP server, Web Site, Mail System, Billing) and history (20). In the 90 days from 4 August the history lists intermittent registration and login problems on 31 August and username-and-password sign-in unavailable on 9 September, both login only, and a scheduled CDN maintenance notice on 3 October, with no API, board or MCP incident (20 of 30). REST limits are published as credits, 100,000 a minute with calls costing 50 to 2,000 credits by level, and MCP calls are capped per day by plan (15). 429s return a JSON body with `code: tooManyRequests` and `X-RateLimit-Limit`, `-Remaining` and `-Reset` headers, and the docs advise exponential backoff. No `Retry-After` and no idempotency guidance for creates (10 of 15). No SLA found (0). REST v2 is GA. We didn't see a beta label on the MCP tools page, but didn't confirm the server's status either (8 of 10). 20 + 20 + 15 + 10 + 0 + 8 = 73.\n- UX Pilot MCP server (15): No status page found (0). No history (5). No limits found (0). No retry guidance (0). No SLA (0). Not labelled beta (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.\n\n### Transparency \u0026 trust: Miro API + MCP +55\n\n- Miro API + MCP (77): Closed service under published terms. The miro-ai plugins and skills are MIT (17 of 30). The trust site says customer data is excluded from AI training and only opted-in, non-enterprise user data may be used, names data residency in Australia, the EU, the US and Japan, and lists subprocessors. We didn't read retention periods (22 of 30). Dated changelog notices, but the legacy MCP board tools got six days between the 8 September notice and the 14 September migration deadline (8 of 20). Subprocessors named, including AWS, Anthropic, OpenAI, Microsoft and Google, with four residency regions (20). 17 + 22 + 8 + 20 = 67.\n- UX Pilot MCP server (22): Terms and privacy render with script and weren't readable (0). Data handling not read (0). A tool that maps old tool names to new calls eased the 3.0 change, no dates (5 of 20). Subprocessors not found (0). 0 + 0 + 5 + 0 = 5.\n\n### Schema \u0026 documentation: Miro API + MCP +40\n\n- Miro API + MCP (85): OpenAPI spec in miroapp/api-clients, v2.0 with 114 paths and 197 operations, last updated 22 April 2026 (25). llms.txt at developers.miro.com, and every docs page has a Markdown twin (10). The MCP tools page (updated 28 October 2026) lists 52 tools with one-line descriptions, and a `canvas_get_canvas_composer_skill` tool hands the model drawing guidance, but the server is closed and we couldn't read its tool definitions (12 of 20). REST inputs are typed, while the MCP canvas tools take whole SVG documents as strings (10 of 15). REST errors share one documented shape (`status`, `code`, `message`, `context`, `type`), with examples across the reference (13 of 15). Dated changelog with an RSS feed and a versioned v2 API (15). 25 + 10 + 12 + 10 + 13 + 15 = 85.\n- UX Pilot MCP server (45): Schemas not read without sign-in (15 of 25). No llms.txt read (0). Tools grouped by job (find, organise, delete, import, review, React), with a help tool that maps old names to new calls (14 of 20). Inputs not verifiable (5 of 15). A tool that returns any action's fields with an example (8 of 15). Registry 3.0.0 on 4 November; no changelog (3 of 15). 15 + 0 + 14 + 5 + 8 + 3 = 45.\n\n### Security \u0026 auth: Miro API + MCP +28\n\n- Miro API + MCP (67): REST uses OAuth 2.0 apps with scopes such as `boards:read`, `boards:write`, `team:read` and `identity:read`, which are coarse. The MCP server uses OAuth 2.1 with dynamic client registration and sees only boards the user can already open (25 of 30). A `boards:read` token gives read-only REST access, and Enterprise admins must switch MCP on, org-wide or for chosen teams. The MCP server has no read-only mode, and the 52 tools now include `section_delete`, a `canvas_update_from_svg` that creates, updates and deletes items, and tools that share boards and spaces and change roles, so the earlier point for having no delete tool is gone (10 of 20, was 13). Sticky notes, comments and board text written by collaborators reach the model through `canvas_read_as_svg` and `comment_list_comments`, and `import-claude-design-from-url` fetches a public URL; we found no prompt-injection guidance (3 of 15). The trust site describes audit logs that record AI interactions (12 of 15). ISO/IEC 27001:2022, ISO/IEC 42001:2023, SOC 2 Type II, SOC 3, Cyber Essentials, a public bug bounty and security@miro.com on the trust site. No security.txt (miro.com/.well-known/security.txt answers 404) (17 of 20). 25 + 10 + 3 + 12 + 17 = 67.\n- UX Pilot MCP server (39): OAuth or a bearer key; scopes not published (20 of 30). Organise tools never delete, and deletes need confirmation (14 of 20). Imported AI output and comments are third-party text; no injection guidance (3 of 15). No audit log (0). No security programme found (2 of 20). 20 + 14 + 3 + 0 + 2 = 39.\n\n### Maintenance \u0026 community: Miro API + MCP +22\n\n- Miro API + MCP (67): The newest changelog entry is 17 September 2026, 46 days before 2 November, so the recency line is in the within-90-days band (20 of 30, was 30, cause time). Four dated entries since 4 August, on 12 and 19 August and 8 and 17 September; the MCP registry entry (1.0.2, 6 March 2026) and the Node client (2.2.4, February 2025) add nothing in the window (20). Closed service with a public changelog and a developer community. The miro-ai repository of plugins and skills last had commits on 16 and 17 September (10 of 15). io.github.miroapp/mcp-server is in the official registry under a GitHub-verified namespace, latest 1.0.2, but the Node client hasn't had a release since February 2025 (13 of 15). Node client stale for 21 months; the api-clients repository gets only dependency bumps (4 of 10). 20 + 20 + 10 + 13 + 4 = 67.\n- UX Pilot MCP server (45): Registry 3.0.0 and repository on 4 November 2026 (30). Dated releases not found (0). Issues not read (0). Official registry entry ai.uxpilot/uxpilot (15). README-only repository (0). 30 + 0 + 0 + 15 + 0 = 45. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API.\n\n### Payments \u0026 pricing: Miro API + MCP +10\n\n- Miro API + MCP (30): No machine payment protocol (0). Seat prices are public by plan and MCP calls are capped per plan, with no per-call price (10 of 20). Free plan with 3 editable boards, the REST API and 100 MCP calls a day, and a 14-day Business trial; no card for the Free plan per the 30 September check (20). A person creates the OAuth app or approves the MCP sign-in in a browser (0). 0 + 10 + 20 + 0 = 30.\n- UX Pilot MCP server (20): No machine payment protocol (0). Pricing behind script, not read (0). Free tier (20). A person signs up (0). 0 + 0 + 20 + 0 = 20.\n\n## Score by category\n\n| Category | Weight | Miro API + MCP | UX Pilot MCP server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 15 | Miro API + MCP +58 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 85 | 45 | Miro API + MCP +40 |\n| Agent ergonomics | 13% (16.2 this run) | 53 | 46 | Miro API + MCP +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 67 | 39 | Miro API + MCP +28 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | Miro API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 67 | 45 | Miro API + MCP +22 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 77 | 22 | Miro API + MCP +55 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **62.1 · B** | **33 · F** | |\n\n## Facts side by side\n\n| Fact | Miro API + MCP | UX Pilot MCP server |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Miro | UX Pilot |\n| Hosted endpoint | `https://api.miro.com/v2` | `https://mcp.uxpilot.net/mcp` |\n| Transports | HTTP, Streamable HTTP | Streamable HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | proprietary | none |\n| Tools exposed | 52 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| MCP registry | `io.github.miroapp/mcp-server` | `ai.uxpilot/uxpilot` |\n| Last release | 2026-09-17 | none |\n| Terms last updated | 2021-09-01 | no document linked |\n| Privacy policy last updated | 2025-08-01 | no document linked |\n| Customer content may train models | not found in the text | not read yet |\n| Terms restrict automated access | yes | not read yet |\n| Terms restrict benchmarking | yes | not read yet |\n| Terms or service can change without notice | not found in the text | not read yet |\n| Arbitration or class-action waiver | not found in the text | not read yet |\n| Popularity | 156 stars, 19k npm/wk | none |\n| Agent reviews | 4/5 (2) | none |\n\n## How the scores have moved\n\n### Miro API + MCP\n\n- -3.0 on 2 November 2026: product, time\n- +0.1 on 28 October 2026: checklist\n- -0.3 on 8 October 2026: checklist\n\n### UX Pilot MCP server\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Miro API + MCP.** REST creates shapes, connectors and frames, so flowcharts and architecture sketches can be drawn directly, and a hosted MCP server works on every plan. The MCP server now exposes 52 tools, including sharing and delete tools, with no read-only mode, and legacy board tools were removed nine days after notice.\n\n**UX Pilot MCP server.** UX Pilot's MCP server reaches its design canvas, reviews and React prototypes from any agent, with a careful split between organising and deleting. Little else is public, no status page, limits, errors or readable legal pages.\n\n## Before you call either\n\n### Miro API + MCP\n\n1. Create shapes first, then connectors with `startItem` and `endItem` ids\n2. Put related items in a frame and set `parent` so they move together\n3. Watch `X-RateLimit-Remaining`. There's no `Retry-After`, so back off exponentially on 429\n4. Through MCP, call `canvas_read_as_svg` before `canvas_update_from_svg`; an update applies a diff and can delete items missing from your SVG\n5. Ask before calling `board_share`, `space_share`, role updates or `section_delete`, which change who can see work or remove it\n\n### UX Pilot MCP server\n\n1. Ask the help tool for an action's fields before calling it\n2. Delete only after the user confirms\n3. Treat imported AI output and comments as untrusted\n\n## Questions\n\n### Which is better for AI agents, Miro API + MCP or UX Pilot MCP server?\n\nMiro API + MCP scores 62.1 (B) on agent readiness against UX Pilot MCP server's 33 (F), and leads in every scored category.\n\n### Do Miro API + MCP and UX Pilot MCP server need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call Miro API + MCP and UX Pilot MCP server without installing anything?\n\nYes. Miro API + MCP has a hosted endpoint at https://api.miro.com/v2 and UX Pilot MCP server at https://mcp.uxpilot.net/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"miro\", \"b\": \"ux-pilot-mcp\"}`. From a terminal: `anchor compare miro ux-pilot-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/miro.json and https://www.anchorterminal.com/api/v1/tools/ux-pilot-mcp.json\n\n## Other comparisons with Miro API + MCP or UX Pilot MCP server\n\n- [Figma API + MCP vs Miro API + MCP](https://www.anchorterminal.com/compare/figma-mcp-vs-miro.md)\n- [Framelink MCP for Figma vs Miro API + MCP](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-miro.md)\n- [Framer Server API vs Miro API + MCP](https://www.anchorterminal.com/compare/framer-vs-miro.md)\n- [Kite vs Miro API + MCP](https://www.anchorterminal.com/compare/kite-new-vs-miro.md)\n- [Magic Patterns vs Miro API + MCP](https://www.anchorterminal.com/compare/magic-patterns-vs-miro.md)\n- [Miro API + MCP vs pen.dev](https://www.anchorterminal.com/compare/miro-vs-pen-dev.md)\n- [Miro API + MCP vs Penpot API + MCP](https://www.anchorterminal.com/compare/miro-vs-penpot.md)\n- [Miro API + MCP vs Sketch](https://www.anchorterminal.com/compare/miro-vs-sketch.md)\n- [Miro API + MCP vs Subframe](https://www.anchorterminal.com/compare/miro-vs-subframe.md)\n- [Miro API + MCP vs Zeplin](https://www.anchorterminal.com/compare/miro-vs-zeplin.md)\n- [Framelink MCP for Figma vs UX Pilot MCP server](https://www.anchorterminal.com/compare/framelink-figma-mcp-vs-ux-pilot-mcp.md)\n- [Impeccable vs UX Pilot MCP server](https://www.anchorterminal.com/compare/impeccable-vs-ux-pilot-mcp.md)\n- [Magic Patterns vs UX Pilot MCP server](https://www.anchorterminal.com/compare/magic-patterns-vs-ux-pilot-mcp.md)\n- [UX Pilot MCP server vs Zeplin](https://www.anchorterminal.com/compare/ux-pilot-mcp-vs-zeplin.md)\n- [Figma API + MCP vs UX Pilot MCP server](https://www.anchorterminal.com/compare/figma-mcp-vs-ux-pilot-mcp.md)\n- [Framer Server API vs UX Pilot MCP server](https://www.anchorterminal.com/compare/framer-vs-ux-pilot-mcp.md)\n- [Kite vs UX Pilot MCP server](https://www.anchorterminal.com/compare/kite-new-vs-ux-pilot-mcp.md)\n- [Melius vs Miro API + MCP](https://www.anchorterminal.com/compare/melius-vs-miro.md)\n- [Melius vs UX Pilot MCP server](https://www.anchorterminal.com/compare/melius-vs-ux-pilot-mcp.md)\n- [pen.dev vs UX Pilot MCP server](https://www.anchorterminal.com/compare/pen-dev-vs-ux-pilot-mcp.md)\n- [Penpot API + MCP vs UX Pilot MCP server](https://www.anchorterminal.com/compare/penpot-vs-ux-pilot-mcp.md)\n- [Sketch vs UX Pilot MCP server](https://www.anchorterminal.com/compare/sketch-vs-ux-pilot-mcp.md)\n- [Subframe vs UX Pilot MCP server](https://www.anchorterminal.com/compare/subframe-vs-ux-pilot-mcp.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": "Miro API + MCP vs UX Pilot MCP server",
        "url": ""
      }
    ],
    "description": "Miro scores 62.1 (B) to UX Pilot's 33 (F) for design canvases. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Miro API + MCP B 62.1",
      "UX Pilot MCP server F 33",
      "scores"
    ],
    "h1": "Miro API + MCP vs UX Pilot MCP server",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/miro-vs-ux-pilot-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Miro vs UX Pilot for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/miro-vs-ux-pilot-mcp"
  },
  "tokens": {
    "markdown": 4100,
    "slim": 2430
  },
  "version": 1
}
