Head to head · Diagram creation · October 2026 research run

Excalidraw vs PlantUML

PlantUML scores 66.9 (B) on agent readiness against Excalidraw's 54.5 (C), and leads in 5 of 7 scored categories. Excalidraw leads on security & auth. Both do diagram creation.

Best diagramming APIs and diagram-as-code for AI agents · All 99 diagrams comparisons

Which one, for what

Excalidraw C

Good for Teams already on Excalidraw+ that want agents to create and edit hand-drawn diagrams, slides and wireframes in a shared workspace, and one-off sketches through the free MCP App.

Ahead on

  • Security & auth, 73 against 50

Also in its favour

  • A hosted endpoint, with nothing to install

Watch for

The API and MCP server are in public beta. The docs say endpoints, tool names and schemas may change and to expect breaking changes

PlantUML B

Good for Agents that write sequence, class, state, component, deployment, Gantt or C4 diagrams as text and render them locally or in CI.

Ahead on

  • Reliability, 83 against 50
  • Agent ergonomics, 78 against 58
  • Payments & pricing, 60 against 35
  • Maintenance & community, 73 against 44
  • Transparency & trust, 73 against 63

Also in its favour

  • No key needed to call it

Watch for

The default security profile is LEGACY, which gives diagram text full access to local files and URLs through !include. The docs say it will be removed, with no date

Score by category

CategoryWeight this runExcalidrawPlantUMLEdge
Reliability16%205083PlantUML +33
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26565even
Agent ergonomics13%16.25878PlantUML +20
Security & auth14%17.57350Excalidraw +23
Payments & pricing10%12.53560PlantUML +25
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84473PlantUML +29
Transparency & trust7%8.86373PlantUML +10
Negative events≤15-2-2
Total54.5 · C66.9 · B

Facts side by side

FactExcalidrawPlantUML
KindHTTP APISDK + MCP
VendorExcalidraw s.r.o.PlantUML project (Arnaud Roques)
Hosted endpointhttps://api.excalidraw.com/api/v1/mcpno (local only)
TransportsHTTP, Streamable HTTP
AuthAPI keyNone
PricingFreemiumFree
x402nono
LicenceExcalidraw+ is a proprietary service under Excalidraw's terms of use. The editor and the MCP App on GitHub are MITGPL-3.0-or-later
Tools exposed37none
Read-only variant documentednono
llms.txtyesno
Last release2026-09-012026-09-05
Terms last updatedno date givenno document linked
Privacy policy last updated2021-04-29no document linked
Customer content may train modelsnot found in the text
Terms restrict automated accessyes
Terms restrict benchmarkingnot found in the text
Terms or service can change without noticeyes
Arbitration or class-action waiveryes
Popularity134k stars, 676k npm/wk13k stars, 207 npm/wk

Verdicts

Excalidraw

Excalidraw+ keys carry read or full permission, route restrictions and an expiry, and the MCP server shows a key only the tools its routes allow. The API and MCP server are in public beta with breaking changes expected, sit behind the $6 Plus plan, and have no published OpenAPI file, SDK or idempotency keys.

PlantUML

One Java command reads diagram text from stdin and writes PNG, SVG, PDF or ASCII with no account, and CI passed on the last eight pushes. The default security profile lets diagram text read any local file and fetch any URL, and the documentation still lists chronology diagrams that release 1.2026.2 switched off.

Before you call either

Excalidraw

  1. Send Authorization: Bearer <API_KEY> to https://api.excalidraw.com/api/v1. For MCP, use POST /api/v1/mcp only. The server is stateless and answers 405 to other methods
  2. Use a personal key to reach the owner's private collection with the collection ID private. A workspace admin must enable personal keys first
  3. Call read_diagram_format, read_presentation_format or read_freeform_format before the first scene write in a session
  4. Write with edit_scene_content and bind arrows through startBinding and endBinding with tempId references. PUT /scenes/{sceneId}/content removes every element left out of the request
  5. Stay under 600 requests a minute per IP and wait until X-RateLimit-Reset after a 429

PlantUML

  1. Set PLANTUML_SECURITY_PROFILE to SANDBOX or ALLOWLIST before rendering text from an untrusted source. The default profile lets !include read local files and fetch URLs
  2. Run java -jar plantuml.jar --check-syntax with -stdrpt first and read the exit status. Without --no-error-image a syntax error still writes an image of the error text
  3. Pass -pipe with --svg, --txt or --utxt to work without files. --txt output suits a text-only model
  4. Start the local server as -picoweb:8080:127.0.0.1. Without the bind address it listens on every interface
  5. Use npx -y @plantuml/mcp-js when no Java runtime is present. It renders SVG only, so use the jar for PNG or PDF

Questions

Which is better for AI agents, Excalidraw or PlantUML?

PlantUML scores 66.9 (B) on agent readiness against Excalidraw's 54.5 (C), and leads in 5 of 7 scored categories. Excalidraw leads on security & auth.

Can an agent call Excalidraw and PlantUML without installing anything?

Excalidraw has a hosted endpoint at https://api.excalidraw.com/api/v1/mcp. No hosted endpoint is listed for PlantUML.

Are Excalidraw and PlantUML open source?

Yes. Excalidraw is open source (Excalidraw+ is a proprietary service under Excalidraw's terms of use. The editor and the MCP App on GitHub are MIT). PlantUML is open source (GPL-3.0-or-later).

Other comparisons with Excalidraw or PlantUML

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.