Developer tools

Excalidraw Architect MCP: editable diagrams from agents

The model describes components and links; a layout engine does the coordinates and writes an editable .excalidraw file. 25 diagram types, offline, no API keys.

Project and installation docs

View project

https://github.com/BV-Venky/excalidraw-architect-mcp

Ask a model to write Excalidraw JSON for an architecture diagram and you usually get overlapping boxes and tangled arrows to fix by hand. Mermaid is quick but hard to edit afterwards. Excalidraw Architect MCP separates what to draw from where to draw it: the model describes components, relationships and tiers, and the server picks a layout algorithm for the diagram type, styles it and writes a file you can keep editing in Excalidraw. It had about 160 stars as of 2026-10-06.

What it does

  • 25 diagram types: create_diagram covers architecture, flowcharts, sequence diagrams, state machines, ER models, swimlanes, Gantt charts, quadrants, and hand-drawn bar, line and scatter charts.
  • Edit without redrawing: get_diagram_info reads a diagram’s state and modify_diagram adds or rewires nodes and re-lays it out, as in “add a Redis cache in front of the database.”
  • Conversion and export: mermaid_to_excalidraw turns a Mermaid flowchart into an editable diagram, and export_diagram writes SVG (no extra dependencies) or PNG.
  • Technology-aware styling: 50+ built-in component styles, so “Kafka” becomes a stream-styled node.
  • Optional knowledge graph: the kg_* tools keep your architecture as a version-controlled file you can query for dependency paths, impact analysis, cycles and single points of failure.

Who it’s for

  • Engineers writing design docs, RFCs or onboarding guides who need several diagrams in one consistent style.
  • Teams that want the coding agent to read the code and sketch the service map.

Setup

Needs Python. Install it, then register it in Claude Code:

pip install excalidraw-architect-mcp
claude mcp add-json excalidraw-architect '{"type":"stdio","command":"excalidraw-architect-mcp"}' --scope user

For PNG export install excalidraw-architect-mcp[png] instead; with uv you can skip installing and run uvx excalidraw-architect-mcp.

Our take

A small, well-built project. The key decision is keeping the model away from coordinates: algorithms like Sugiyama handle layout and the model only states structure, which sidesteps exactly where LLM-drawn diagrams go wrong. The exporter ports the roughjs stroke generator to Python, so SVGs keep the hand-drawn look without a browser or Node.js, and everything runs offline with no external calls. Caveats: one person maintains it, the last push was in August 2026, and the knowledge graph’s drift check only understands Python imports so far. Licensed MIT.