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
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
| Category | Weight this run | Excalidraw | PlantUML | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 50 | 83 | PlantUML +33 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 65 | 65 | even |
| Agent ergonomics | 13%16.2 | 58 | 78 | PlantUML +20 |
| Security & auth | 14%17.5 | 73 | 50 | Excalidraw +23 |
| Payments & pricing | 10%12.5 | 35 | 60 | PlantUML +25 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 44 | 73 | PlantUML +29 |
| Transparency & trust | 7%8.8 | 63 | 73 | PlantUML +10 |
| Negative events | ≤15 | -2 | -2 | |
| Total | 54.5 · C | 66.9 · B |
Facts side by side
| Fact | Excalidraw | PlantUML |
|---|---|---|
| Kind | HTTP API | SDK + MCP |
| Vendor | Excalidraw s.r.o. | PlantUML project (Arnaud Roques) |
| Hosted endpoint | https://api.excalidraw.com/api/v1/mcp | no (local only) |
| Transports | HTTP, Streamable HTTP | |
| Auth | API key | None |
| Pricing | Freemium | Free |
| x402 | no | no |
| Licence | Excalidraw+ is a proprietary service under Excalidraw's terms of use. The editor and the MCP App on GitHub are MIT | GPL-3.0-or-later |
| Tools exposed | 37 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-09-01 | 2026-09-05 |
| Terms last updated | no date given | no document linked |
| Privacy policy last updated | 2021-04-29 | no document linked |
| Customer content may train models | not found in the text | |
| Terms restrict automated access | yes | |
| Terms restrict benchmarking | not found in the text | |
| Terms or service can change without notice | yes | |
| Arbitration or class-action waiver | yes | |
| Popularity | 134k stars, 676k npm/wk | 13k 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
- Send
Authorization: Bearer <API_KEY>to https://api.excalidraw.com/api/v1. For MCP, usePOST /api/v1/mcponly. The server is stateless and answers 405 to other methods - Use a personal key to reach the owner's private collection with the collection ID
private. A workspace admin must enable personal keys first - Call
read_diagram_format,read_presentation_formatorread_freeform_formatbefore the first scene write in a session - Write with
edit_scene_contentand bind arrows throughstartBindingandendBindingwithtempIdreferences.PUT /scenes/{sceneId}/contentremoves every element left out of the request - Stay under 600 requests a minute per IP and wait until
X-RateLimit-Resetafter a 429
PlantUML
- Set
PLANTUML_SECURITY_PROFILEtoSANDBOXorALLOWLISTbefore rendering text from an untrusted source. The default profile lets!includeread local files and fetch URLs - Run
java -jar plantuml.jar --check-syntaxwith-stdrptfirst and read the exit status. Without--no-error-imagea syntax error still writes an image of the error text - Pass
-pipewith--svg,--txtor--utxtto work without files.--txtoutput suits a text-only model - Start the local server as
-picoweb:8080:127.0.0.1. Without the bind address it listens on every interface - Use
npx -y @plantuml/mcp-jswhen 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
- Cloudviz API vs Excalidraw
- Cloudviz API vs PlantUML
- Diagrams.so API + MCP vs Excalidraw
- Diagrams.so API + MCP vs PlantUML
- draw.io + MCP vs Excalidraw
- draw.io + MCP vs PlantUML
- Eraser API + MCP vs Excalidraw
- Eraser API + MCP vs PlantUML
- Excalidraw vs Kroki
- Excalidraw vs Lucid API + MCP
- Excalidraw vs Mermaid Chart MCP
- Excalidraw vs Mural MCP
- Excalidraw vs Structurizr + MCP
- Excalidraw vs tldraw SDK + MCP
- Excalidraw vs Whimsical MCP
- Lucid API + MCP vs PlantUML
- Mermaid Chart MCP vs PlantUML
- Mural MCP vs PlantUML
- PlantUML vs Whimsical MCP
- D2 vs Excalidraw
- D2 vs PlantUML
- Kroki vs PlantUML
- PlantUML vs Structurizr + MCP
- PlantUML vs tldraw SDK + MCP
Machine-readable
- This page as Markdown
/compare/excalidraw-vs-plantuml.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/excalidraw.json·/api/v1/tools/plantuml.json - From a terminal
anchor compare excalidraw plantuml(the CLI) - Over MCP
compare_tools {"a": "excalidraw", "b": "plantuml"}at/mcp, no key