Drawio Mcp

io.github.yohasacura由 GitHub 账号 yohasacura 发布v1.0.2更新于 Oct 24, 2026

MCP server for creating and editing draw.io / diagrams.net XML files programmatically.

已验证STDIO仅桌面开发者工具媒体与设计

概览

AI 生成的概览

本地 MCP 服务器,让助手创建、编辑、设置样式并自动排版 draw.io / diagrams.net 图表,并保存为 .drawio XML 文件。

可以做什么
  • 创建、加载、导入、保存和列出图表文件,支持多页面与图层
  • 添加、更新和删除顶点、连线、分组、标题与图例
  • 应用形状、连线与配色主题预设,并列出可用预设
  • 自动布局与整理:Sugiyama、树形、网格、流程图、对齐、连线走线、重叠修复与一键美化
  • 只读检查图表:单元格、重叠、连接端口与基本信息
适用场景
适合让助手把描述转成可编辑的图表文件,例如流程图、UML、ER、C4、BPMN、思维导图、云架构或网络拓扑;也适合加载已有 .drawio 文件、修改后保存回去。
运行要求
以 stdio 方式在本机运行 PyPI 包 drawio-mcp,需要 Python 3.11+ 以及 uv(推荐)或 pip。未声明账号、API 密钥或环境变量。仅支持桌面版 MCP 客户端。
安装前请注意
会在本机写入并覆盖图表文件,包括把修改保存回已加载的 .drawio 文件,请只指向愿意改动的路径。未声明任何凭据或网络访问。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Drawio Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

🎨 Draw.io MCP Server

[CI] [PyPI] [Python] [License: MIT]

Let your AI assistant create beautiful draw.io diagrams — just describe what you want.

An MCP server that generates draw.io / diagrams.net XML files programmatically. Works with GitHub Copilot (agent mode), Claude Desktop, Cursor, and any MCP-compatible client.


✨ What Can It Do?

CapabilityDetails
🏗️ Diagram typesFlowcharts, UML, ER, C4, BPMN, mindmaps, architecture, network, Kubernetes, and more
🎨 Styling310+ shape presets, 44 edge styles, 21 color themes
📐 Auto-layoutSugiyama DAG, tree, horizontal, vertical, grid, flowchart engines
🔀 Smart routingObstacle-aware orthogonal edge routing with automatic port distribution
✏️ Full editingAdd, move, resize, delete, restyle any element after creation
📄 Multi-pageMultiple pages and layers for complex diagrams
📥 Import/ExportLoad existing .drawio files, modify, and save back
🧹 One-click cleanupPolish command that auto-fixes layout, overlaps, edges, and labels

🚀 Quick Start

Prerequisites

  • Python 3.11+
  • uv (recommended) or pip

Install from PyPI

bash
pip install drawio-mcp

Or with uv:

bash
uvx drawio-mcp

Install from source

bash
git clone https://github.com/yohasacura/drawio-mcp.gitcd drawio-mcpuv syncuv run drawio-mcp

🔌 Setup with Your AI Client

VS Code (GitHub Copilot)

Add to your VS Code settings or .vscode/mcp.json:

json
{  "servers": {    "drawio-mcp": {      "command": "uvx",      "args": ["drawio-mcp"]    }  }}

Then use Copilot in Agent mode and ask it to create diagrams.

Claude Desktop

Add to your claude_desktop_config.json:

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

Cursor

Add to your Cursor MCP settings:

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

💬 Example Prompts

Once connected, try these in your AI chat:

PromptWhat you get
"Create a flowchart for a user login process"Login flow with decision nodes and error paths
"Create a C4 context diagram for an e-commerce system"System context with actors and external systems
"Make a UML class diagram with User, Order, and Product"Class diagram with relationships
"Create an ER diagram for a blog database"Entity-relationship diagram with tables
"Build an org chart for a startup"Tree layout with roles and hierarchy
"Draw an AWS architecture with API Gateway, Lambda, DynamoDB"Cloud architecture diagram
"Create a Kubernetes deployment diagram"K8s diagram with pods, services, ingress
"Make a network topology with servers and firewalls"Network diagram with device icons

💡 Tip: Always end with "...and save it as filename.drawio" to get a file you can open in draw.io.


🛠️ Tool Reference

The server exposes 5 tools, each with an action parameter:

diagram — Lifecycle

create · save · load · import_xml · list · get_xml · add_page · add_layer

draw — Content

add_vertices · add_edges · add_group · update_cells · delete_cells · add_title · add_legend · build_dag · build_full

style — Appearance

build · apply_theme · list_vertex_presets · list_edge_presets · list_themes

layout — Positioning

sugiyama · tree · horizontal · vertical · grid · flowchart · smart_connect · align · distribute · polish · relayout · compact · reroute_edges · resolve_overlaps · fix_labels · optimize_connections · resize_container

inspect — Read-only

cells · overlaps · ports · info


🎨 Style Reference

310+ Vertex Presets (click to expand)

Basic shapes: RECTANGLE ROUNDED_RECTANGLE ELLIPSE CIRCLE DIAMOND TRIANGLE HEXAGON CYLINDER CLOUD PARALLELOGRAM ACTOR PROCESS DOCUMENT DATA_STORE NOTE CARD CALLOUT TEXT CUBE STAR FOLDER and more

Themed boxes: BLUE_BOX GREEN_BOX ORANGE_BOX RED_BOX YELLOW_BOX PURPLE_BOX GRAY_BOX DARK_BOX TEAL_BOX WHITE_BOX

Flowchart: FLOWCHART_PROCESS FLOWCHART_DECISION FLOWCHART_TERMINATOR FLOWCHART_DATA FLOWCHART_DOCUMENT FLOWCHART_DATABASE FLOWCHART_START FLOWCHART_END and 25+ more

UML: UML_CLASS UML_INTERFACE UML_ACTOR UML_COMPONENT UML_PACKAGE UML_NODE UML_LIFELINE UML_FRAME

C4: C4_SYSTEM C4_CONTAINER C4_COMPONENT C4_PERSON C4_EXTERNAL C4_DATABASE C4_WEB_BROWSER

ER: ER_ENTITY ER_WEAK_ENTITY ER_ATTRIBUTE ER_KEY_ATTRIBUTE ER_RELATIONSHIP and more

BPMN: BPMN_TASK BPMN_START_EVENT BPMN_END_EVENT BPMN_GATEWAY BPMN_POOL BPMN_LANE and more

Architecture: ARCH_SERVICE ARCH_DATABASE ARCH_QUEUE ARCH_CLOUD ARCH_API ARCH_GATEWAY ARCH_CONTAINER ARCH_FIREWALL ARCH_SERVER ARCH_LOAD_BALANCER and 20+ more

Network: NETWORK_SERVER NETWORK_ROUTER NETWORK_SWITCH NETWORK_FIREWALL NETWORK_CLOUD NETWORK_STORAGE and 40+ more

Cloud/K8s: AWS_CLOUD AWS_LAMBDA AWS_S3 AWS_EC2 AWS_RDS AWS_SQS K8S_POD K8S_SERVICE K8S_DEPLOYMENT K8S_INGRESS and more

Containers: SWIMLANE GROUP GROUP_TRANSPARENT GROUP_DASHED

Plus: State machine, Sequence diagram, Mindmap, DFD, SysML, ArchiMate, Cisco, Mockup/Wireframe, Infographic, and more

44 Edge Presets (click to expand)

General: DEFAULT ORTHOGONAL STRAIGHT CURVED ENTITY_RELATION DASHED DOTTED BIDIRECTIONAL NO_ARROW

Styled: ROUNDED ROUNDED_DASHED THICK THICK_ROUNDED

Colored: COLORED_BLUE COLORED_GREEN COLORED_RED COLORED_ORANGE COLORED_PURPLE COLORED_YELLOW COLORED_GRAY

UML: UML_ASSOCIATION UML_INHERITANCE UML_IMPLEMENTATION UML_DEPENDENCY UML_AGGREGATION UML_COMPOSITION

ER: ER_ONE_TO_ONE ER_ONE_TO_MANY ER_MANY_TO_MANY ER_ZERO_TO_ONE ER_ZERO_TO_MANY

Flow: DATA_FLOW CONTROL_FLOW ASYNC SYNC BPMN_FLOW BPMN_MESSAGE_FLOW

21 Color Themes (click to expand)

BLUE GREEN YELLOW ORANGE RED PURPLE GRAY PINK TURQUOISE TEAL DARK_BLUE DARK_GREEN DARK_RED DARK_ORANGE DARK_PURPLE DARK WHITE C4_BLUE C4_LIGHT_BLUE C4_SKY C4_GRAY

Connection Ports (click to expand)

TOP BOTTOM LEFT RIGHT TOP_LEFT TOP_RIGHT BOTTOM_LEFT BOTTOM_RIGHT TOP_LEFT_THIRD TOP_RIGHT_THIRD BOTTOM_LEFT_THIRD BOTTOM_RIGHT_THIRD LEFT_TOP_THIRD LEFT_BOTTOM_THIRD RIGHT_TOP_THIRD RIGHT_BOTTOM_THIRD


🧑‍💻 Development

bash
git clone https://github.com/yohasacura/drawio-mcp.gitcd drawio-mcpuv sync
# Run testsuv run pytest tests/ -v
# Run the server locallyuv run drawio-mcp

Project Structure

src/drawio_mcp/├── server.py           # MCP server — 5 tools with 40+ actions├── models.py           # Core XML model (DrawioFile, Diagram, MxCell)├── styles.py           # Style builder, presets, and themes├── layout.py           # Layout helpers (tree, grid, port distribution)├── layout_engine.py    # Advanced layout (Sugiyama, edge routing, polish)└── validation.py       # Input validation

📝 Contributing

See CONTRIBUTING.md for guidelines on bug reports, feature requests, and pull requests.

📄 License

MIT © yohasacura

来源:README.md,提交 036573d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分