Skip to main content

Automate Flowcharts & Draw.io Diagrams with AI. Official Model Context Protocol (MCP) Server for Google Antigravity, Claude Code, Cursor, and VS Code.

Project description

🎨 Flowchart AI Generator & Draw.io MCP Server (antigravity-drawio-mcp)

PyPI version License: MIT Python 3.8+ MCP Protocol Code Style: Black

Automate Draw.io Flowcharts & Architecture Diagrams with AI. antigravity-drawio-mcp is a production-grade Model Context Protocol (MCP) Server framework connecting Google Antigravity, Claude Code, Cursor IDE, VS Code, and Windsurf directly to the Draw.io Desktop App and CLI environment.

🚀 Free & Open Source Flowchart AI Generator: Create, convert, decompress, validate, and export native .drawio XML files automatically using AI prompts.


⚡ Quick Install

pip install antigravity-drawio-mcp

Or run directly without installation via uvx:

uvx antigravity-drawio-mcp

🏗️ System Architecture

Antigravity Draw.io MCP Architecture

The antigravity-drawio-mcp framework is structured into a 3-tier C4 Software Component Architecture (Level 3):

  1. Software System Boundary (AI Clients): Communicates via standard JSON-RPC 2.0 over Stdio transport with Google Antigravity Core Agent or any MCP-compatible IDE (VS Code, Cursor, Claude Desktop, Windsurf).
  2. Container: Antigravity Draw.io MCP Server (src/antigravity_drawio_mcp):
    • FastMCP Request Handler: FastMCP protocol engine and tool request dispatcher.
    • Draw.io XML Builder: Programmatic XML DOM construction and geometry engine.
    • Draw.io File Parser: Direct .drawio XML parsing & native zlib/base64 decompressor.
    • CLI Export Engine: Process lock manager and Draw.io desktop CLI wrapper (--export).
    • Diagram Validator: Automated collision detector & label boundary auditor.
    • Mermaid Conversion Engine: Bi-directional Mermaid JS to Draw.io converter.
  3. External Systems & Storage: Interoperates with local draw.io.exe for headless image rendering (PNG, SVG, PDF) and persistent file storage.

🔑 Key Features & AI Capabilities

  • 🤖 100% Automatic AI Flowchart Generator: Generate clean visual graphs and software architectures straight from AI prompts.
  • 🎨 Programmatic XML Construction: Build complex multi-page Draw.io diagrams natively in Python without manual drag-and-drop.
  • 🔄 Mermaid JS to Draw.io Converter: Instantly convert existing Mermaid JS flowchart syntax into native, fully editable Draw.io XML cells.
  • 🛡️ 4-5 Iteration Boundary Verification: Automated collision detection to eliminate overlapping lines, text clipping, and broken edge paths.
  • 🖼️ Headless Image Rendering: Instant export to high-resolution PNG, vector SVG, PDF, or JPEG using local draw.io.exe desktop CLI integration.
  • 🔍 Native Zlib Decompressor: Inspect existing Draw.io diagrams, automatically decompressing compressed XML streams.
  • 🖥️ Desktop GUI Interop: Automatically launch generated .drawio files directly inside the Draw.io Desktop application.

🔌 AI Assistant & IDE Setup (Google Antigravity, Cursor, Claude, VS Code)

For detailed step-by-step setup guides, refer to the Integration Guide.

1. 🌐 Google Antigravity (~/.gemini/config/mcp_config.json)

{
  "mcpServers": {
    "drawio": {
      "command": "uvx",
      "args": ["antigravity-drawio-mcp"]
    }
  }
}

Or using local python:

{
  "mcpServers": {
    "drawio": {
      "command": "python",
      "args": ["-m", "antigravity_drawio_mcp.server"]
    }
  }
}

2. 🤖 Claude Desktop / Claude Code (claude_desktop_config.json)

{
  "mcpServers": {
    "antigravity_drawio": {
      "command": "python",
      "args": ["-m", "antigravity_drawio_mcp.server"]
    }
  }
}

3. ⚡ Cursor IDE (Features -> MCP Servers)

  • Name: antigravity_drawio
  • Type: stdio
  • Command: python -m antigravity_drawio_mcp.server

4. 💻 VS Code / Continue.dev (~/.continue/config.json)

{
  "experimental": {
    "modelContextProtocol": [
      {
        "name": "antigravity_drawio",
        "command": "python",
        "args": ["-m", "antigravity_drawio_mcp.server"]
      }
    ]
  }
}

🛠️ MCP Tools Reference

The antigravity-drawio-mcp server exposes production tools over Model Context Protocol:

Tool Name Parameters Description
create_diagram output_path, nodes, edges, page_name Generates a native .drawio XML diagram file from structured JSON nodes & edges.
export_diagram input_path, output_path, format, page_index Renders a .drawio file to high-res PNG, vector SVG, PDF, or JPEG via Draw.io CLI.
open_in_drawio input_path Launches the specified .drawio file directly inside Draw.io Desktop GUI.
parse_diagram input_path Parses raw or zlib-compressed .drawio XML files and extracts node/edge data.
convert_mermaid_to_drawio mermaid_code, output_path Converts Mermaid JS flowchart syntax directly to a .drawio file.
validate_diagram input_path Audits a diagram for node collisions, layout overlaps, and text clipping issues.

🎨 Real-World Industry Diagram Examples

antigravity-drawio-mcp powers production-grade architectural diagrams across hardware, software, and decision-tree domains:

1. SystemVerilog UVM Layered Testbench Architecture

SystemVerilog UVM Testbench IEEE 1800 Object-Oriented Verification Framework diagram featuring Driver, Monitor, Sequencer, Scoreboard, and DUT Interface layers.

2. Graphic Organizer Selection Flowchart

Graphic Organizer Decision Flowchart 27-node decision flowchart mapping complex pedagogical visual learning structures.

3. DE10-Advanced FPGA Design & CAD Tool Flow

DE10-Advanced FPGA Design Flow Intel Quartus Prime CAD compilation, System Builder, and FPGA programming workflow.


🚀 Proof of Concept (PoC) & Runnable Examples

Comprehensive Python PoC scripts are available in the examples/ directory:

Example Script Procedure Demonstrated
examples/01_basic_architecture.py Programmatic 3-tier web architecture graph creation, verification, PNG & SVG rendering.
examples/02_mermaid_to_drawio.py Converts a standard Mermaid JS flowchart definition string into native .drawio XML elements.
examples/03_parse_and_inspect.py Loads an existing .drawio XML diagram, transparently handles zlib stream decompression, and extracts nodes/edges.
examples/04_mcp_client_simulation.py Simulates how AI Assistants (e.g. Google Antigravity) dispatch Model Context Protocol (MCP) tool requests.

❓ Frequently Asked Questions (FAQ)

How do I use AI to generate Draw.io flowcharts?

Install antigravity-drawio-mcp and connect it to Google Antigravity, Claude Code, or Cursor. You can then ask your AI assistant to generate C4 architecture graphs, flowcharts, or UML diagrams in plain English, and the MCP server will construct fully editable Draw.io XML files automatically.

Can I convert Mermaid.js graphs to native Draw.io files?

Yes! Use the convert_mermaid_to_drawio MCP tool. It parses Mermaid JS flowchart syntax and outputs native .drawio XML elements with full cell geometry.

Are generated Draw.io diagrams editable?

Absolutely. All generated files are standard .drawio XML documents. You can open them in the Draw.io Desktop App or web editor (app.diagrams.net) to make manual adjustments at any time.


🧪 Testing & Verification

Run the comprehensive unit test suite:

python -m unittest tests/test_mcp_server.py

📄 License

Distributed under the MIT License. Copyright (c) 2026 SUJAN S.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

antigravity_drawio_mcp-1.0.5.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

antigravity_drawio_mcp-1.0.5-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file antigravity_drawio_mcp-1.0.5.tar.gz.

File metadata

  • Download URL: antigravity_drawio_mcp-1.0.5.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for antigravity_drawio_mcp-1.0.5.tar.gz
Algorithm Hash digest
SHA256 1b508423816fbd1aa3af2a1c62cf052eaf4af5f95e28d697013dbbaa09d35bad
MD5 022d760a5f0c99c4f85181e038c5ae48
BLAKE2b-256 0307904730a0cc415833c8b7c1e28662319ef34c593f7576d44a65476e9080f7

See more details on using hashes here.

File details

Details for the file antigravity_drawio_mcp-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for antigravity_drawio_mcp-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 875c222134233a21a016ff29d26caad3d04e1bfc48fef6ac719485970fe050da
MD5 3f1b6d0a5f3c834ef114fa3da6eb96ab
BLAKE2b-256 c321964182fd01520516da4415ca0abe481b30e733518849ad2bfdceef21e2a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page