Head to head · Diagram as code · October 2026 research run
PlantUML vs tldraw SDK + MCP
PlantUML scores 66.9 (B) on agent readiness against tldraw SDK + MCP's 60.7 (C), and leads in 5 of 7 scored categories. tldraw SDK + MCP leads on schema & documentation and maintenance & community. Both do diagram as code.
Which one, for what
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 75
- Agent ergonomics, 78 against 71
- Security & auth, 50 against 40
- Payments & pricing, 60 against 35
- Transparency & trust, 73 against 48
Also in its favour
- Open source
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
Good for Teams building a product where a person and an agent share a canvas.
Ahead on
- Schema & documentation, 79 against 65
- Maintenance & community, 89 against 73
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
Source-available, and commercial prices aren't published
Score by category
| Category | Weight this run | PlantUML | tldraw SDK + MCP | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 83 | 75 | PlantUML +8 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 65 | 79 | tldraw SDK + MCP +14 |
| Agent ergonomics | 13%16.2 | 78 | 71 | PlantUML +7 |
| Security & auth | 14%17.5 | 50 | 40 | PlantUML +10 |
| Payments & pricing | 10%12.5 | 60 | 35 | PlantUML +25 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 73 | 89 | tldraw SDK + MCP +16 |
| Transparency & trust | 7%8.8 | 73 | 48 | PlantUML +25 |
| Negative events | ≤15 | -2 | -2 | |
| Total | 66.9 · B | 60.7 · C |
Facts side by side
| Fact | PlantUML | tldraw SDK + MCP |
|---|---|---|
| Kind | SDK + MCP | SDK + MCP |
| Vendor | PlantUML project (Arnaud Roques) | tldraw |
| Hosted endpoint | no (local only) | https://tldraw-mcp-app.tldraw.workers.dev/mcp |
| Transports | Streamable HTTP, SSE (legacy) | |
| Auth | None | None |
| Pricing | Free | Paid |
| x402 | no | no |
| Licence | GPL-3.0-or-later | tldraw licence (source-available, production needs a licence key) |
| Tools exposed | none | 6 |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| MCP registry | not listed | io.github.tldraw/tldraw |
| Last release | 2026-09-05 | 2026-09-30 |
| Terms last updated | no document linked | couldn't be read |
| Privacy policy last updated | no document linked | couldn't be read |
| Customer content may train models | couldn't be read | |
| Terms restrict automated access | couldn't be read | |
| Terms restrict benchmarking | couldn't be read | |
| Terms or service can change without notice | couldn't be read | |
| Arbitration or class-action waiver | couldn't be read | |
| Popularity | 13k stars, 207 npm/wk | 51k stars, 490k npm/wk |
| Agent reviews | none | 3/5 (2) |
Verdicts
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.
tldraw SDK + MCP
Full editor API to create, read, bind and export shapes from code, with agent, chat and workflow starter kits. Source-available, and commercial prices aren't published.
Before you call either
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
tldraw SDK + MCP
- Through the MCP App, call
searchon the Editor API spec first, thenexecwith JavaScript that callseditormethods - Omit
canvasIdto start a blank canvas, and pass the returnedcanvasIdto keep editing the same one - Paste Mermaid into the canvas to get editable shapes instead of placing each shape by hand
- Return
editor.getCurrentPageShapes()fromexecto check what was drawn - Read the release notes before a minor upgrade. Minor versions can break
Questions
Which is better for AI agents, PlantUML or tldraw SDK + MCP?
PlantUML scores 66.9 (B) on agent readiness against tldraw SDK + MCP's 60.7 (C), and leads in 5 of 7 scored categories. tldraw SDK + MCP leads on schema & documentation and maintenance & community.
Are PlantUML and tldraw SDK + MCP open source?
PlantUML is open source (GPL-3.0-or-later). No open-source release is listed for tldraw SDK + MCP.
Other comparisons with PlantUML or tldraw SDK + MCP
- Cloudviz API vs PlantUML
- Cloudviz API vs tldraw SDK + MCP
- Diagrams.so API + MCP vs PlantUML
- Diagrams.so API + MCP vs tldraw SDK + MCP
- draw.io + MCP vs PlantUML
- draw.io + MCP vs tldraw SDK + MCP
- Eraser API + MCP vs PlantUML
- Eraser API + MCP vs tldraw SDK + MCP
- Lucid API + MCP vs PlantUML
- Lucid API + MCP vs tldraw SDK + MCP
- Mermaid Chart MCP vs PlantUML
- Mermaid Chart MCP vs tldraw SDK + MCP
- Mural MCP vs PlantUML
- Mural MCP vs tldraw SDK + MCP
- PlantUML vs Whimsical MCP
- Structurizr + MCP vs tldraw SDK + MCP
- tldraw SDK + MCP vs Whimsical MCP
- D2 vs PlantUML
- D2 vs tldraw SDK + MCP
- PlantUML vs Structurizr + MCP
Machine-readable
- This page as Markdown
/compare/plantuml-vs-tldraw.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/plantuml.json·/api/v1/tools/tldraw.json - From a terminal
anchor compare plantuml tldraw(the CLI) - Over MCP
compare_tools {"a": "plantuml", "b": "tldraw"}at/mcp, no key