用途:指导在 Draw.io 中正确使用 Mermaid 转换,避免误以为转换后能得到可单独编辑的 mxCell。核心事实是 Mermaid 文本经 Draw.io 渲染后只生成一个复合形状(分组 SVG),无法单独选中、移动、改样式或连接其中节点。
主要能力与规则:需要单个单元格可编辑时不要用 Mermaid,生产图表应使用原生 mxGraph XML;不要对 Mermaid 复合形状执行 MCP 的 edit_cell、delete_cell、move_cell、restyle 等操作;调用 open_drawio_mermaid 前先校验 Mermaid 语法,否则会得到空白图且无报错;需要程序化操作时不要在同一画布混用 Mermaid 复合形状与原生 mxCell;调用时使用 content 参数而非 data 或 xml。
使用方式:官方 @drawio/mcp 提供 open_drawio_mermaid,参数 content 必填,dark 可选(auto/true/false,默认 auto),lightbox 可选(默认 false)。调用后浏览器打开 Draw.io 编辑器,Mermaid 文本渲染为单个复合形状,编辑需选中形状按 Enter 修改源文本。其他转换方式包括 URL 参数、Draw.io 界面 Arrange > Insert > Mermaid、嵌入模式 postMessage,以及通过 %%{init: {'flowchart': {'defaultRenderer': 'elk'}}}%% 启用 ELK 布局。
适用场景:快速可视化、原型、自包含只读图表。限制:不支持将复合形状拆分为独立单元格;需要像素级定位、布局完全控制或后续程序化编辑时应改用原生 mxGraph XML。支持的图表类型包括 flowchart、sequenceDiagram、classDiagram、stateDiagram、erDiagram、gantt、pie、gitgraph、mindmap、requirementDiagram、journey、C4Context、quadrantChart。