Head to head · Diagram creation · October 2026 research run
D2 vs Mumble
D2 scores 65.3 (B) on agent readiness against Mumble's 7.5 (F), and leads in every scored category. Both do diagram creation.
Best diagramming APIs and diagram-as-code for AI agents · All 128 diagrams comparisons
Which one, for what
D2 B
Best for Agents that need to produce or edit architecture, sequence, grid, SQL table or class diagrams as reviewable text and render them locally.
Ahead on
- Reliability, 68 against 5
- Schema & documentation, 65 against 10
- Agent ergonomics, 78 against 0
- Security & auth, 48 against 0
- Payments & pricing, 60 against 30
- Maintenance & community, 74 against 0
- Transparency & trust, 69 against 13
Also in its favour
- Open source
Watch for
No 1.0 release. The maintainer lists a stable 1.0 with a formal grammar as a goal, and 0.8.2 changed Dagre and ELK layout output
Mumble F
Best for A person on a Mac with early access who wants a live, transcript-linked diagram of a call or workshop, kept as plain files in git, and who already pays for Claude Code or Codex.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
No API or MCP server an outside agent can call. The documented mumble-mcp binary has no public download, package or repository (checked 14 October 2026)
Score by category
| Category | Weight this run | D2 | Mumble | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 68 | 5 | D2 +63 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 65 | 10 | D2 +55 |
| Agent ergonomics | 13%16.2 | 78 | 0 | D2 +78 |
| Security & auth | 14%17.5 | 48 | 0 | D2 +48 |
| Payments & pricing | 10%12.5 | 60 | 30 | D2 +30 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 74 | 0 | D2 +74 |
| Transparency & trust | 7%8.8 | 69 | 13 | D2 +56 |
| Negative events | ≤15 | 0 | 0 | |
| Total | B 65.3/100 | F 7.5/100 |
Facts side by side
| Fact | D2 | Mumble |
|---|---|---|
| Kind | SDK + MCP | Platform |
| Vendor | D2 project (The Hack Foundation) | tiny space |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Your plan |
| x402 | no | no |
| Licence | MPL-2.0 | No licence, terms of use or source repository was found on tinyspace.ai or GitHub (checked 2026-10-14). The app and the mumble-mcp binary are not published as open source |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| Last release | 2026-09-07 | none |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no date given |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Popularity | 26k stars, 22k npm/wk | none |
Verdicts
D2
A single local command turns text into a diagram in six formats with no account, key or network call, and CI passes on the default branch. The language is at 0.9.0 with no stable release, its company sponsor has shut down, and one maintainer with limited time wrote every commit since July.
Mumble
Mumble keeps audio on the Mac and stores each conversation as plain files in ~/Mumble, with canvas JSON that diffs cleanly. There is no API or MCP server an outside agent can call today. The documented mumble-mcp has no public download, package or repository, and the app is reached only through an early-access waitlist.
Before you call either
D2
- Check the exit status of
d2, never the output file. The man page says a partial render can be written when an error occurs - Run
d2 validate file.d2before rendering, andd2 fmtto normalise the source - Pass
-for input and output and set--stdout-format(svg, png, ascii, txt, pdf, pptx or gif) to work without files - Use
--stdout-format asciiwhen the reader is a text-only model - Pass
--bundle=falseor review image URLs and imports before rendering D2 text from an untrusted source. Release 0.9.0 fetches remote images when bundling
Mumble
- Don't plan to call Mumble from another agent. Neither the app nor
mumble-mcpcan be obtained publicly, so hand the task to a person with early access - Don't configure
/path/to/mumble-mcpfrom the docs. It is a placeholder, and no binary is published - If the person already has Mumble, read ~/Mumble/<capture>/ directly,
capture.jsonfor the transcript anddiagram.canvasfor the map - Keep canvas keys in schema order and never rename a node id, or the edges that name it are orphaned and the canvas is refused. Use git as the undo
- Don't write to a capture that is being recorded. The app doesn't merge the two versions
Questions
Which is better for AI agents, D2 or Mumble?
D2 scores 65.3 (B) on agent readiness against Mumble's 7.5 (F), and leads in every scored category.
Are D2 and Mumble open source?
D2 is open source (MPL-2.0). No open-source release is listed for Mumble.
Other comparisons with D2 or Mumble
- Cloudviz API vs D2
- Cloudviz API vs Mumble
- D2 vs Diagrams.so API + MCP
- D2 vs Mural MCP
- D2 vs Whimsical MCP
- Diagrams.so API + MCP vs Mumble
- draw.io + MCP vs Mumble
- Eraser API + MCP vs Mumble
- ExcaliClaw vs Mumble
- Excalidraw vs Mumble
- Kroki vs Mumble
- Lucid API + MCP vs Mumble
- Mermaid Chart MCP vs Mumble
- Mumble vs Mural MCP
- Mumble vs PlantUML
- Mumble vs Structurizr + MCP
- Mumble vs tldraw SDK + MCP
- Mumble vs Whimsical MCP
- D2 vs draw.io + MCP
- D2 vs Eraser API + MCP
- D2 vs ExcaliClaw
- D2 vs Excalidraw
- D2 vs Kroki
- D2 vs Lucid API + MCP
- D2 vs Mermaid Chart MCP
- D2 vs PlantUML
- D2 vs Structurizr + MCP
- D2 vs tldraw SDK + MCP
Disclosure
Mumble is made by tiny space, the company of Quynh Tran-Thanh, a founder of Anchor Terminal. It's graded the same way as every listing, by the same published checklist with the same readings, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed. letme never picks it.
Machine-readable
- This page as Markdown
/compare/d2-vs-mumble.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/d2.json·/api/v1/tools/mumble.json - From a terminal
anchor compare d2 mumble(the CLI) - Over MCP
compare_tools {"a": "d2", "b": "mumble"}at/mcp, no key