Back to explorer
diagrams MCP servers best source: official MCP

excalidraw

B

grade

100%

reliability

+0.07

overall

Virtual whiteboard for sketching hand-drawn like diagrams

TypeScript 94.1%SCSS 2.7%MDX 1.8%JavaScript 1.2%
npm View
MCP excalidraw-mcp Official · 4.8K★
Agent docs CLAUDE.md
Dependencies

Excalidraw requires the agent to generate and manipulate raw JSON files adhering to a complex, nesting-heavy schema representing graphical shapes, bindings, and positions. Because no schema documentation is provided to the agent, it must rely entirely on its pre-trained knowledge of the file format to define elements like nodes, pointers, and style attributes. This makes generating valid, precise layouts highly dependent on prior knowledge and prone to missing specific structural elements like formal frames or containers.

Surfaces × lenses

hostile friendly
surface ↓
lens →
Coherence Economy Consistency Verifiability Safety
Disclosure
Interface
Loop
Recursion
Human

Click any cell for what was measured and why. A corner dot marks a cell filled by a hard instrument (checker, telemetry); undotted cells are judged by the rater ensemble. 47% of this matrix is hard-measured.

The experience

The agent constructs the diagram by explicitly specifying coordinates, text bindings, and connection attributes in raw JSON. It defines properties like stroke, fill, and line bindings directly. This manual syntax creation becomes a verbose, expensive process that requires numerous tool calls to build even basic shapes.

A major friction point is the lack of a feedback loop for visual verification. Because the agent cannot render and view the resulting canvas, it generates layout parameters blindly. It cannot visually inspect whether text overflows shapes or if connectors overlap, making minor adjustment tasks highly error-prone.

Furthermore, working without local documentation forces the agent to rely on pre-existing knowledge of the JSON schema. While it successfully generates syntax-valid output that renders cleanly, it frequently misses semantic details. For example, it attempts to group regions using simple graphical rectangles rather than defining native frame objects, leaving schema-specific requirements unmet.

Finally, resuming the work with a fresh agent leads to regressions. When a new agent inherits the raw JSON file, it struggles to reconstruct the visual hierarchy and design intent without a rendering tool or schema template, causing it to damage or revert previously functioning components.

Fit

This format is suitable only for generating basic shapes and layout concepts that are simple enough to calculate programmatically. It works best when the agent receives a strict, pre-defined template schema to fill in rather than writing elements from scratch.

It is a poor fit for interactive diagrams, complex nested architectures, or tasks where visual alignment and semantic frame grouping are critical. Without live rendering utilities or schema-validation tools to inspect the layout, agents cannot guarantee visual correctness or satisfy complex layout rules.

Notes

The following diagram illustrates the agent's blind generation loop where it writes raw JSON coordinates from memory without any visual feedback or schema validation before producing the final asset.

Validation

Convergent check. Where a hard instrument and the independent rater panel measure the same cell, they agree on 5 of 14 cross-checked cells (76%). Two independent methods landing on the same number is our accuracy signal — not just the raters agreeing with each other.

Cell where they disagreeInstrumentRaterΔ
loop.determinism+0.70-0.301.00
recursion.verifiability-1.00+0.001.00
recursion.determinism+0.94+0.000.94
interface.prior_alignment-0.60+0.000.60
human.verifiability+0.60+0.000.60
interface.coherence+0.50+0.000.50
loop.safety+0.70+0.200.50
interface.verifiability+1.00+0.500.50
loop.verifiability+0.56+0.100.46

Ground truth

4 of 5 requirements met · deterministic checker, no model judgment
  • valid .excalidraw file — 41 elements
  • 6+ shapes — 30 shapes
  • 8+ arrows bound to shapes — 9/11 bound
  • 2+ frames/containers — 0 frames
  • a title text — present

Reliability (pass^k): one attempt succeeds 100% of the time · three in a row 100% · all runs 100%. A fresh agent resuming from the files alone sometimes regressed prior work.

Models & runs

2026-07-06
ModelHarnessRunsSolvedTurnsKnows it
Claude Code (claude-code-acp) Claude Code2517/2523

Each path is one run through the shared semantic space; nodes are turns (red = an errored turn). Hover a model — here or in the graph — to isolate its runs.
“Knows it” = a closed-book quiz (20 questions, no docs) on whether the model already knows this tool from pre-training — 84% across the panel.

How this was measured

reference agent
Claude Code (claude-code-acp)
trials
25 (n=5/tier)
methodology
v0.1 3e74a3c6
hard-measured cells
47%
teaching source
excalidraw-mcp (official)

Same brief, same reference agent, and the same trial count for every tool in a category — a difference in the numbers is attributable to the tool (and its teaching source), not the setup. Profiles carry the methodology hash; results under different hashes are not compared.