Excalidraw Architect
Generate beautiful Excalidraw architecture diagrams with auto-layout and component styling
Connector by BV-Venky · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/bv-venky-excalidraw-architect-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documentation, ui-design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 9 read · 7 write · 2 delete · 8 not yet classified
- Secrets
- None asked for
- Install scripts
- Not scanned yet
- Runs as
- Python package
Tools by what they do 26
Read from the source code; the running server may list different tools.
Read 9 · Look things up without changing anything.
get_diagram_infoget_diagram_schemakg_diffkg_driftkg_infokg_lintkg_render_viewlist_diagram_typesmermaid_to_excalidraw
Write 7 · Create, change, send or run things.
create_diagramkg_add_servicekg_importkg_initkg_linkkg_set_domainmodify_diagram
Delete 2 · Delete, drop, revoke or wipe things.
kg_remove_servicekg_unlink
Not yet classified 8 · We could not tell from the name and description.
export_diagramkg_exportkg_onboarding_dockg_pathkg_renderkg_render_aroundkg_render_domainwhats_connected_to
Files it touches
- Any path the agent passes to its tools
Tools (26)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
create_diagramCreate a new Excalidraw diagram of any supported type. Two input modes: 1. **Graph types** (``architecture``, ``flowchart``) - pass ``nodes`` and ``connections``. The tool handles layout, styling, and rendering; no coordinates needed. 2. **Typed diagrams** (every other type) - pass ``diagram_type`` and a ``spec`` object shaped for that type. Call ``list_diagram_types`` to choose a type and ``get_diagram_schema`` to see its spec shape. Args: output_path: File path to save the .excalidraw file (e.g., "./arch.excalidraw") diagram_type: One of the types from ``list_diagram_t…
export_diagramExport an .excalidraw file to SVG or PNG image. Converts an existing .excalidraw diagram into a portable image file without requiring a browser or the Excalidraw application. Args: input_path: Path to the source .excalidraw file. output_path: Destination file path (e.g., "./arch.svg" or "./arch.png"). format: Output format - "svg" (default) or "png". PNG export requires the cairosvg package (``pip install cairosvg``). scale: Resolution multiplier for PNG output (default 2.0 = 2×). Has no effect on SVG output. Returns: Path to the export…
get_diagram_infoGet a structured summary of an existing Excalidraw diagram. Call this BEFORE modify_diagram to understand what nodes and connections currently exist. The summary includes node ids, labels, component types, and the full connection topology. Args: file_path: Path to the .excalidraw file. Returns: Human-readable summary of all nodes and connections. For typed diagrams (sequence, pyramid, bar, ...) this returns the stored spec, which is what you patch with modify_diagram.
get_diagram_schemaGet the JSON schema and selection guidance for one diagram type. Call this before passing a `spec` to create_diagram for a type you have not used yet, so the payload matches on the first attempt. Args: diagram_type: A type name from list_diagram_types (e.g. "sequence", "pyramid", "bar", "swimlane"). Returns: JSON with the spec schema, plus use_when / avoid_when guidance.
kg_add_serviceAdd or update a service in the knowledge graph. Args: id: Unique service identifier (stable; reused across diagrams). label: Display name (defaults to id). component_type: Technology for auto-styling (e.g. "postgresql", "kafka"). description: Free-text description. domain: Bounded-context / team / tier this service belongs to. owner: Owning team or person (e.g. "@payments"). tags: Arbitrary tags. links: Related URLs (ADRs, runbooks, dashboards). shape: Shape override (rectangle/diamond/ellipse/circle/stadium/parallelogram). graph_path: Knowledge file pa…
kg_diffShow how the architecture changed since a git ref (default HEAD). Compares the current knowledge file against its version at ``ref``.
kg_driftDetect drift between the declared architecture and Python imports under ``code_root``. Best-effort: treats each top-level package as a service and infers edges from imports. Reports undocumented and possibly-stale dependencies.
kg_exportExport the knowledge graph to another format. Args: format: "mermaid", "dot" (Graphviz), or "json". output_path: If given, write to this file; otherwise return the text.
kg_importImport an existing .excalidraw diagram's services into the knowledge graph. Bootstraps the graph from diagrams you already created with this tool.
kg_infoSummarize the whole knowledge graph: services, domains, and topology. Call this before mutating the graph to reason about current state.
kg_initCreate a new architecture knowledge graph file (markdown). The knowledge graph is the persistent source of truth for your system's services and dependencies. Diagrams are rendered *from* it. Args: graph_path: Where to store the knowledge file. Default ``.claude/architecture.md``. title: Human title for the architecture. direction: Default layout direction for rendered views (LR/TD/BT/RL). overwrite: Replace an existing file if present.
kg_linkAdd a directed dependency: ``from_id`` depends on / calls ``to_id``. Both services must already exist (add them with kg_add_service first). ``style`` is one of solid/dashed/dotted/thick.
kg_lintArchitecture health check: cycles, single points of failure, orphans, dangling references, and (optionally) unowned services.
kg_onboarding_docGenerate a human onboarding guide (entry points, hubs, domains) from the graph.
kg_pathTrace the shortest dependency path between two services.
Show 11 more tools
kg_remove_serviceRemove a service and all dependencies touching it.
kg_renderRender the entire architecture to an .excalidraw file.
kg_render_aroundRender a service plus everything within ``depth`` hops of it. ``direction``: "downstream" (its dependencies), "upstream" (its dependents), or "both".
kg_render_domainRender only the services belonging to one domain.
kg_render_viewRender a focused diagram of just the given services (induced subgraph).
kg_set_domainAssign a service to a domain (optionally set the domain's display label).
kg_unlinkRemove the dependency ``from_id`` -> ``to_id``.
list_diagram_typesList every supported diagram type with guidance on when to use it. Call this BEFORE create_diagram when the right diagram type isn't obvious. Picking the wrong type is the most common way a diagram fails - a swimlane drawn as a flowchart loses the handoffs that were the point. Two rules worth applying whatever you pick: - Target density ~4/10. Above 9 nodes it is probably two diagrams. - Mark only 1-2 elements "focal": true. The accent color is a signal, and using it everywhere destroys it. Returns: A table of type -> family, when to use it, and when not to.
mermaid_to_excalidrawConvert Mermaid flowchart syntax into an Excalidraw diagram. Supports the mermaid flowchart subset that AI agents commonly generate: - Directions: graph TD, LR, BT, RL - Node shapes: [text], {text}, ((text)), ([text]) - Edge types: -->, ---, -.-> ==> with |label| - Subgraphs: subgraph Title ... end Component types are auto-detected from node labels (e.g., a node labeled "PostgreSQL DB" automatically gets database styling). Args: mermaid_syntax: Mermaid flowchart source code. output_path: File path to save the .excalidraw file. theme: Color theme - "default", "dark", "colorful"…
modify_diagramModify an existing Excalidraw diagram created by this tool. Supports iterative editing: add components, remove nodes, update labels, and rewire connections - without recreating the entire diagram. IMPORTANT: Call get_diagram_info first to understand the current diagram state before making modifications. For **typed diagrams** (sequence, pyramid, bar, swimlane, ...) there is a single operation: {"op": "update_spec", "patch": {"tiers": [...], "title": "New title"}} The patch is deep-merged into the stored spec and the diagram re-rendered. Lists are replaced wholesale, so send the comple…
whats_connected_toImpact analysis: what breaks if ``service_id`` fails? Reports direct dependents, the full transitive upstream blast radius, and what the service itself depends on.
Compare and alternatives
Featured in
Signals
- Stars
- 160
- Forks
- 10
- Open issues
- 1
- Weekly downloads
- 484
- Last commit
- Aug 25, 2026 (2 months ago)
- Last release
- Aug 25, 2026 (2 months ago)
- Last package publish
- Aug 25, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.BV-Venky/excalidraw-architect-mcp- Version
- 0.2.2
- Auth
- No auth
- Packages
- pypi excalidraw-architect-mcp
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 25, 2026
Cite this page
Excalidraw Architect MCP server. Agent Mart. https://agentmart.dev/connectors/bv-venky-excalidraw-architect-mcp (last updated 2026-10-25)