Magic MCP vs Excalidraw Architect MCP

A side-by-side look at the Magic MCP and Excalidraw Architect MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Magic MCP logoMagic MCPArchitecture & Design · Local subprocess (stdio)Create crafted UI components inspired by the best 21st.dev design engineers.53GoodAuth: api key requiredExcalidraw Architect MCP logoExcalidraw Architect MCPArchitecture & Design · Local subprocess (stdio)Generate beautiful Excalidraw architecture diagrams with auto-layout, architecture-aware component styling, and stateful editing. 50+ technology mappings including databases, message queues, caches, and more. No API keys required.64GoodAuth: no auth required

Verdict: choose Magic MCP for architecture & design work as a local process; choose Excalidraw Architect MCP for architecture & design as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Magic MCP logoChoose Magic MCP when

  • You need dedicated capabilities in the Architecture & Design domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: TWENTY_FIRST_API_KEY, API_KEY_21ST.
Explore Magic MCP

Excalidraw Architect MCP logoChoose Excalidraw Architect MCP when

  • You need dedicated capabilities in the Architecture & Design domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like create_diagram, mermaid_to_excalidraw, modify_diagram.
Explore Excalidraw Architect MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMagic MCP logoMagic MCPExcalidraw Architect MCP logoExcalidraw Architect MCP
CategoryArchitecture & DesignArchitecture & Design
Quality signal53/100 · Good64/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthAPI key requiredNo auth required
PricingPaid serviceFree
Required env varsTWENTY_FIRST_API_KEYAPI_KEY_21STNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars6,193160
Directory activity 16 views 1 installs 0 upvotes 4 views 0 installs 0 upvotes
ToolsNot listed26

Tools & capabilities

Magic MCP tools

No tool names declared yet. Check the project README from the listing page.

Excalidraw Architect MCP tools 26

  • 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.
  • 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).
  • 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 complete list to change one entry. The node/connection operations below apply to architecture and flowchart diagrams only.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • kg_add_serviceAdd or update a service in the knowledge graph.
  • kg_remove_serviceRemove a service and all dependencies touching it.
  • 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_unlinkRemove the dependency ``from_id`` -> ``to_id``.
  • +14 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Magic MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "21st-dev-magic-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@21st-dev/cli@latest"
      ],
      "env": {
        "TWENTY_FIRST_API_KEY": "YOUR_TWENTY_FIRST_API_KEY_HERE",
        "API_KEY_21ST": "YOUR_API_KEY_21ST_HERE"
      }
    }
  }
}

Excalidraw Architect MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "bv-venky-excalidraw-architect-mcp": {
      "command": "uvx",
      "args": [
        "excalidraw-architect-mcp"
      ]
    }
  }
}

Frequently asked questions

Magic MCP is categorized under Architecture & Design and uses a local stdio subprocess. Excalidraw Architect MCP belongs to Architecture & Design and uses a local stdio subprocess. Pick Magic MCP for architecture & design work and Excalidraw Architect MCP for architecture & design.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Magic MCP is listed as a paid service. Auth: api key required. Excalidraw Architect MCP is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add 21st-dev-magic-mcp and bv-venky-excalidraw-architect-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Magic MCP has a quality signal of 53/100 (Good) with 16 views, 1 installs and 6,193 GitHub stars. Excalidraw Architect MCP has 64/100 (Good) with 4 views, 0 installs and 160 GitHub stars.