Skip to content
Agentmart
Submit a tool

Next AI Draw.io

draw.io diagrams your AI agent draws on a live browser canvas that you can also edit by hand

Connector by DayuanJiang · GitHub account verified by the MCP Registry

IndexedApache-2.0Local (stdio)★ 36,395
Write a review

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/dayuanjiang-next-ai-drawio

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.

We use your email only for this newsletter. Privacy

About

draw.io diagrams your AI agent draws on a live browser canvas that you can also edit by hand

Use cases: documentation, ui-design

No 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
7 read · 5 write · 2 delete · 2 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 16

Read from the source code; the running server may list different tools.

Read 7 · Look things up without changing anything.

  • get_diagram
  • get_drawing_guide
  • get_selection
  • get_shape_library
  • list_pages
  • list_saved_diagrams
  • screenshot_diagram

Write 5 · Create, change, send or run things.

  • add_page
  • create_new_diagram
  • rename_page
  • restore_version
  • start_session

Delete 2 · Delete, drop, revoke or wipe things.

  • delete_page
  • edit_diagram

Not yet classified 2 · We could not tell from the name and description.

  • export_diagram
  • load_diagram

Files it touches

  • Any path the agent passes to its tools

Tools (16)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • add_pageAdd page

    Append a new page (tab) to the current diagram WITHOUT touching existing pages or unsaved user changes. Use this when the user wants "another diagram alongside" — e.g. "add a CNN page" — instead of create_new_diagram which wipes everything. Inputs: - name: optional display name for the tab (defaults to Page-N where N = existing-page-count + 1) - id: optional explicit page id; if omitted the server generates a short alphanumeric id - xml: optional starting content: the mxCell elements of the page (root cells "0" and "1" are added), or a bare <mxGraphModel>. If omitted, the page starts blank. …

  • create_new_diagramCreate new diagram

    Create a NEW diagram, REPLACING the whole document: every page and any unsaved user changes (the previous state stays in History). To add a tab use add_page; to change cells use edit_diagram. Before using icon shapes (AWS, Azure, GCP, Kubernetes, Cisco...), call get_shape_library first. Follow the drawing guide returned by start_session (call get_drawing_guide if it is no longer in your context). Pass screenshot: true on the last call of a complex diagram to check the result. Accepted xml: 1) Only the mxCell elements of one page (recommended). The server adds <mxfile>, <mxGraphModel>, <root>…

  • delete_pageDelete page

    Delete a page (tab) from the current diagram. At least one of page_id / page_name / page_index is required. Refuses to delete the last remaining page — the editor needs at least one tab.

  • edit_diagramEdit diagram

    Edit a specific page in the current diagram by ID-based operations (update/add/delete cells). All-or-nothing: if any operation fails, nothing is applied and every failure is listed. Freshness: the server remembers the last diagram state you have seen, and rejects this call only if the user edited the diagram in the browser since then. You do NOT need to call get_diagram before every edit: a rejected call changes nothing and includes the current XML of the page, so you can rebuild your operations and retry. Call get_diagram first only when you don't know the current diagram content (cell IDs…

  • export_diagramExport diagram

    Export the current diagram to a file. Supports .drawio (XML), .png, .svg, and .drawio.svg (an SVG with the diagram embedded, which draw.io and load_diagram can open again). The format is auto-detected from the file extension, or can be specified explicitly. Images get a 20 px margin; a PNG has a white background (or the page's own background color) unless transparent is true. Multi-page behaviour: - .drawio with NO page selector: writes the full <mxfile> (all pages). - .drawio with a page selector: writes a single-page <mxfile> containing only that page. - .png / .svg with NO page selector: e…

  • get_diagramGet diagramread-only

    Get the current diagram XML (fetches latest from browser, including user's manual edits). Call this when you don't know the current diagram content (cell IDs, pages, structure) — e.g. before editing a diagram you didn't create in this conversation, or after edit_diagram was rejected because the user changed the diagram in the browser. Returns the full <mxfile> by default. If a page selector is provided, returns just that page's <mxGraphModel> embedded in a one-page <mxfile> wrapper.

  • get_drawing_guideGet drawing guideread-only

    Return the drawing guide: XML format, layout, edge routing, style and editing rules. start_session already returns it; call this only if the guide is no longer in your context. With topic, returns a short XML reference for tables, layers or groups.

  • get_selectionGet selectionread-only

    Return the cells the user has selected in the preview: their ids and labels, for edges the source and target ids, for shapes the position and size, and the page they are on. Call this when the user refers to what they selected ("this box", "these arrows", "the selected shapes"), then act on the ids with edit_diagram. Says when nothing is selected. Needs the preview tab to be open.

  • get_shape_libraryGet shape libraryread-only

    Description is built at runtime.

  • list_pagesList pagesread-only

    List every page (tab) in the current diagram. Returns each page's id, name, 0-based index, and cell count. Use this to discover what pages exist before targeting one with edit_diagram, get_diagram, export_diagram, rename_page, or delete_page.

  • list_saved_diagramsList saved diagramsread-only

    List the diagrams saved by earlier sessions (auto-save files), newest first, with their pages. Continue one with start_session session_id=<id>; the file path also works with load_diagram.

  • load_diagramLoad diagram file

    Load a .drawio diagram into the current session, REPLACING the entire diagram (all pages). To change an existing file, load it here, edit with edit_diagram, then export_diagram to the same path; never rewrite the file by hand. Provide ONE of two mutually exclusive sources: 'path' (the server reads the file from disk — you do NOT need to read the file yourself or pass its XML through create_new_diagram) or 'xml' (the raw file content you already have — from another tool, a repository read, or an API response — so no temporary file needs to be written first). Both accept plain XML and draw.io's …

  • rename_pageRename page

    Rename an existing page (tab). At least one of page_id / page_name / page_index is required to identify which page to rename. The new_name becomes the visible tab label in the editor.

  • restore_versionRestore version

    Undo: put an earlier version of the diagram from History back on the canvas (the current canvas is kept in History, so this can be undone too). Use it when the user asks to undo, revert or go back.

  • screenshot_diagramScreenshot diagramread-only

    Render the diagram in the preview and return it as a PNG image, so you can see your own result. Call this once after drawing or heavily editing a complex diagram, then fix overlaps and edges that cross shapes. Without a page selector it shows the page on screen; with one it renders that page without changing what the user sees. Needs the preview tab to be open.

Show 1 more tools
  • start_sessionStart session

    Start a new diagram session, or continue a saved one with session_id, and open the browser for real-time preview. Starts an embedded server and opens a browser window with draw.io. The browser will show diagram updates as they happen. The result includes the drawing guide; follow it when drawing.

Compare and alternatives

Featured in

Signals

Stars
36,395
Forks
3,804
Open issues
29
Weekly downloads
19,570
Last commit (this folder)
Oct 22, 2026 (6 days ago)
Last release
Oct 17, 2026 (11 days ago)
Last package publish
Oct 17, 2026 (11 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.DayuanJiang/next-ai-drawio
Version
0.4.5
Auth
No auth
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 25, 2026
Cite this page

Next AI Draw.io MCP server. Agent Mart. https://agentmart.dev/connectors/dayuanjiang-next-ai-drawio (last updated 2026-10-25)