{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"npm_npm-drawiomcp","slug":"npm-drawiomcp","name":"@drawio/mcp","type":"mcp","url":"https://www.npmjs.com/package/@drawio/mcp","page_url":"https://unfragile.ai/npm-drawiomcp","categories":["mcp-servers"],"tags":["mcp","drawio","draw.io","diagrams","mermaid","csv","xml","llm","claude","anthropic"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"npm_npm-drawiomcp__cap_0","uri":"capability://tool.use.integration.diagram.file.opening.in.draw.io.editor","name":"diagram-file-opening-in-draw-io-editor","description":"Enables LLMs to open diagram files (draw.io XML, Mermaid, CSV, SVG) directly in the draw.io web editor via MCP protocol, establishing a bidirectional communication channel between the LLM and the editor. Uses MCP resource URIs to reference local or remote diagram files and translates them into draw.io-compatible formats, allowing the LLM to initiate editor sessions with pre-loaded diagrams for visualization and interactive editing.","intents":["I want Claude to open a diagram I've been working on so I can see it rendered and edit it interactively","I need to load a Mermaid diagram into draw.io from an LLM conversation without manual file handling","I want to reference a CSV file as a diagram and open it in draw.io for visual data modeling"],"best_for":["LLM users (Claude, etc.) who need interactive diagram visualization during conversations","teams building diagram-centric workflows with LLM assistance","developers integrating draw.io into MCP-based agent systems"],"limitations":["Requires draw.io to be accessible (web or desktop app) — no headless rendering","File format conversion may lose advanced draw.io-specific properties when importing from Mermaid or CSV","No real-time sync between LLM edits and draw.io UI — changes in editor are not automatically reflected back to the LLM context"],"requires":["MCP client supporting resource protocol (Claude Desktop, custom MCP client)","draw.io web app or desktop application installed/accessible","Node.js 16+ for running the MCP server"],"input_types":["draw.io XML (.drawio, .xml)","Mermaid diagram syntax (.mmd, .md with mermaid blocks)","CSV files (.csv)","SVG files (.svg)"],"output_types":["draw.io editor session URL","diagram visualization in draw.io UI","structured diagram metadata"],"categories":["tool-use-integration","diagram-visualization"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_1","uri":"capability://data.processing.analysis.mermaid.to.draw.io.format.conversion","name":"mermaid-to-draw-io-format-conversion","description":"Converts Mermaid diagram syntax (flowcharts, sequence diagrams, class diagrams, etc.) into draw.io XML format for rendering and editing in the draw.io editor. The conversion process parses Mermaid syntax, maps diagram elements to draw.io shape primitives, and generates valid XML with positioning, styling, and connector information, allowing LLMs to author diagrams in Mermaid and visualize them in draw.io's interactive editor.","intents":["I want to write a Mermaid flowchart in the LLM and see it rendered in draw.io for refinement","I need to convert a Mermaid sequence diagram to draw.io format so I can add manual annotations","I want to generate a Mermaid class diagram from an LLM and open it in draw.io for visual inspection"],"best_for":["developers familiar with Mermaid syntax who want draw.io's interactive editing capabilities","LLM users generating diagrams programmatically and needing visual validation","teams using Mermaid in documentation who want to migrate to draw.io for collaboration"],"limitations":["Not all Mermaid diagram types are supported — complex subgraph nesting or advanced styling may not convert perfectly","Conversion is one-way (Mermaid → draw.io) — editing in draw.io and converting back to Mermaid is not supported","Layout algorithms differ between Mermaid and draw.io, so converted diagrams may require manual repositioning for optimal appearance"],"requires":["Mermaid diagram syntax (valid .mmd or inline syntax)","MCP server with Mermaid parsing capability","draw.io editor to display converted XML"],"input_types":["Mermaid diagram syntax (flowchart, sequence, class, state, ER, Gantt, pie, git, C4)"],"output_types":["draw.io XML (.drawio format)","diagram structure with positioning metadata"],"categories":["data-processing-analysis","format-conversion"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_2","uri":"capability://data.processing.analysis.csv.to.diagram.table.generation","name":"csv-to-diagram-table-generation","description":"Transforms CSV data into draw.io table diagrams with structured rows, columns, and styling. The conversion parses CSV headers and rows, creates draw.io table primitives with cell formatting, and generates a visual representation suitable for data modeling, entity-relationship diagrams, or data flow documentation. Enables LLMs to convert tabular data into visual diagram format for inclusion in draw.io projects.","intents":["I want to convert a CSV dataset into a draw.io table diagram for data structure documentation","I need to visualize database schema from a CSV export as a diagram in draw.io","I want to generate a data table diagram from CSV and add it to my architecture diagram"],"best_for":["data engineers documenting data structures visually","architects creating entity-relationship diagrams from CSV schemas","LLM users converting tabular data into diagram format for documentation"],"limitations":["Large CSV files (>1000 rows) may produce unwieldy diagrams — no built-in pagination or summarization","CSV conversion does not infer data types or relationships — purely structural visualization","Styling options are limited to basic cell formatting — no conditional formatting or data-driven coloring"],"requires":["CSV file with headers and data rows","MCP server with CSV parsing capability","draw.io editor to display generated table"],"input_types":["CSV files (.csv)","CSV data as text/string"],"output_types":["draw.io table diagram (XML)","structured table with rows and columns"],"categories":["data-processing-analysis","diagram-generation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_3","uri":"capability://image.visual.svg.to.draw.io.import","name":"svg-to-draw-io-import","description":"Imports SVG files into draw.io by converting SVG elements (paths, shapes, text, groups) into draw.io-compatible primitives. The conversion preserves visual properties (fill, stroke, opacity) and attempts to maintain structural hierarchy, allowing LLMs to reference SVG files and open them in draw.io for further editing and integration with other diagram elements.","intents":["I want to import an SVG icon or graphic into my draw.io diagram","I need to convert an SVG design into a draw.io diagram for collaborative editing","I want to reference an SVG file from an LLM and open it in draw.io for modification"],"best_for":["designers converting SVG graphics to draw.io for team collaboration","LLM users importing external SVG assets into diagram projects","teams integrating SVG-based designs with draw.io diagrams"],"limitations":["Complex SVG features (filters, gradients, clipping paths) may not convert perfectly — simplified to basic shapes","SVG text rendering may differ from draw.io's text model — font metrics and line breaks may shift","Large or highly complex SVGs may result in performance issues when imported into draw.io"],"requires":["SVG file (.svg)","MCP server with SVG parsing capability","draw.io editor to display imported diagram"],"input_types":["SVG files (.svg)","SVG data as XML/text"],"output_types":["draw.io diagram (XML) with SVG elements converted to draw.io shapes","visual representation in draw.io editor"],"categories":["image-visual","format-conversion"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_4","uri":"capability://search.retrieval.diagram.file.resource.discovery.and.listing","name":"diagram-file-resource-discovery-and-listing","description":"Exposes diagram files (draw.io, Mermaid, CSV, SVG) as MCP resources, allowing LLMs to discover, list, and reference available diagrams in a project directory or workspace. The server scans the file system, indexes supported diagram formats, and provides resource URIs that LLMs can use to reference files in conversations and tool calls. Enables LLMs to maintain awareness of available diagrams without explicit file path specification.","intents":["I want Claude to list all diagrams in my project so I can ask it to open a specific one","I need the LLM to discover and reference existing diagrams without me manually providing file paths","I want to browse available diagram files through the LLM interface"],"best_for":["LLM users working with multiple diagrams who want automatic file discovery","teams managing diagram repositories and needing LLM-assisted navigation","developers building diagram-centric workflows with automatic resource indexing"],"limitations":["Resource discovery is file-system based — no support for cloud storage or remote diagram repositories","Large directories (>1000 files) may cause slow indexing — no caching or incremental updates","Resource URIs are local file paths — no built-in support for sharing or collaborative access control"],"requires":["MCP server running with file system access","diagram files in supported formats (.drawio, .mmd, .csv, .svg) in accessible directory","MCP client that supports resource listing"],"input_types":["file system directory path"],"output_types":["list of MCP resource URIs","diagram file metadata (name, format, path)"],"categories":["search-retrieval","resource-management"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_5","uri":"capability://data.processing.analysis.draw.io.xml.validation.and.parsing","name":"draw-io-xml-validation-and-parsing","description":"Validates and parses draw.io XML files to extract diagram structure, elements, connections, and metadata. The parser reads draw.io's XML schema, validates file integrity, and provides structured access to diagram components (shapes, connectors, layers, styles). Enables LLMs to analyze existing diagrams, understand their structure, and make informed modifications or generate related diagrams.","intents":["I want Claude to analyze my draw.io diagram and tell me what elements and connections it contains","I need the LLM to validate that my diagram file is correct before opening it","I want to extract diagram structure information so the LLM can generate a related diagram"],"best_for":["LLM users analyzing existing diagrams for understanding or modification","developers building diagram analysis tools on top of draw.io","teams validating diagram files before collaboration or deployment"],"limitations":["Parsing is read-only — no modification of diagram structure through this capability","Complex draw.io features (custom shapes, plugins, extensions) may not parse completely","Large diagrams (>10,000 elements) may cause performance degradation during parsing"],"requires":["draw.io XML file (.drawio, .xml)","MCP server with XML parsing capability"],"input_types":["draw.io XML files","draw.io XML as text/string"],"output_types":["parsed diagram structure (JSON or structured format)","validation report with errors/warnings","element list with properties and connections"],"categories":["data-processing-analysis","parsing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_6","uri":"capability://code.generation.editing.llm.to.draw.io.diagram.generation","name":"llm-to-draw-io-diagram-generation","description":"Enables LLMs to generate draw.io diagrams programmatically by constructing draw.io XML from natural language descriptions or structured specifications. The LLM can describe diagram requirements (elements, connections, layout) and the MCP server translates these into valid draw.io XML with appropriate shapes, connectors, styling, and positioning. Allows LLMs to create diagrams directly without requiring users to manually draw them.","intents":["I want Claude to generate a flowchart diagram based on my process description","I need the LLM to create an architecture diagram from a text specification","I want to ask Claude to generate a sequence diagram for a user interaction flow"],"best_for":["LLM users who want to generate diagrams from natural language descriptions","teams using LLMs to automate diagram creation from documentation","developers building diagram generation pipelines with LLM assistance"],"limitations":["LLM-generated diagrams may require manual refinement for optimal layout and styling","Complex diagram types (C4, ERD with many entities) may exceed LLM context limits","No real-time preview during generation — users must open the diagram in draw.io to see results"],"requires":["LLM with function calling support (Claude, GPT-4, etc.)","MCP server with diagram generation capability","draw.io editor to display generated diagrams"],"input_types":["natural language diagram description","structured diagram specification (JSON, YAML)"],"output_types":["draw.io XML (.drawio format)","diagram file saved to disk or returned as data"],"categories":["code-generation-editing","diagram-generation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_7","uri":"capability://tool.use.integration.mcp.function.calling.for.diagram.operations","name":"mcp-function-calling-for-diagram-operations","description":"Exposes diagram operations (open, create, convert, validate) as MCP tools that LLMs can invoke via function calling. The server implements MCP tool schema with input/output specifications for each operation, allowing LLMs to call diagram functions with natural language intent translated to structured tool invocations. Enables seamless integration of diagram operations into LLM workflows and agent loops.","intents":["I want Claude to automatically open a diagram when I ask it to","I need the LLM to convert a Mermaid diagram to draw.io format as part of a workflow","I want to chain multiple diagram operations (create, validate, open) in a single LLM interaction"],"best_for":["LLM users building diagram-centric workflows with Claude or other MCP-compatible clients","developers creating LLM agents that manipulate diagrams as part of task execution","teams automating diagram operations through LLM-driven orchestration"],"limitations":["Tool invocation latency adds ~100-500ms per operation depending on diagram size and complexity","LLM may misinterpret tool parameters or invoke tools in suboptimal order — requires careful prompt engineering","No built-in error recovery — failed tool calls require explicit LLM handling"],"requires":["MCP client with function calling support (Claude Desktop, custom MCP client)","MCP server implementing tool schema for diagram operations","LLM with function calling capability (Claude, GPT-4, etc.)"],"input_types":["natural language LLM requests","structured tool parameters (JSON)"],"output_types":["tool execution results (success/failure)","diagram data or file references","operation status and metadata"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_8","uri":"capability://automation.workflow.diagram.file.persistence.and.storage","name":"diagram-file-persistence-and-storage","description":"Handles reading and writing diagram files to disk in supported formats (draw.io XML, Mermaid, CSV, SVG). The server manages file I/O operations, ensures format-specific encoding and validation, and provides atomic write operations to prevent data loss. Enables LLMs to persist generated or modified diagrams to the file system for later retrieval and collaboration.","intents":["I want Claude to save a generated diagram to a file so I can open it later","I need the LLM to export a diagram in a specific format (Mermaid, SVG) for use in documentation","I want to ensure that diagram changes are persisted safely without data corruption"],"best_for":["LLM users generating diagrams that need to be saved for later use","teams automating diagram creation and storage workflows","developers building diagram persistence layers for LLM-driven applications"],"limitations":["File system permissions may restrict write access — requires appropriate directory permissions","No built-in version control or backup — overwrites existing files without history","Concurrent writes to the same file may cause conflicts — no locking mechanism"],"requires":["write access to file system directory","MCP server with file I/O capability","appropriate file permissions for target directory"],"input_types":["diagram data (draw.io XML, Mermaid, CSV, SVG)","file path and format specification"],"output_types":["file written to disk","file path and metadata","write operation status"],"categories":["automation-workflow","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-drawiomcp__cap_9","uri":"capability://data.processing.analysis.multi.format.diagram.export","name":"multi-format-diagram-export","description":"Exports diagrams from draw.io XML to multiple formats (Mermaid, SVG, PNG, PDF) for use in documentation, presentations, and external tools. The export process converts draw.io elements to target format specifications, applies format-specific styling and layout rules, and generates output files. Enables LLMs to generate diagrams in draw.io and export them to formats suitable for different use cases.","intents":["I want Claude to generate a diagram and export it as SVG for embedding in a web page","I need to convert a draw.io diagram to Mermaid format for use in Markdown documentation","I want to export a diagram as PNG for inclusion in a presentation"],"best_for":["LLM users generating diagrams for multiple output formats","teams automating diagram export for documentation and presentations","developers building diagram publishing pipelines"],"limitations":["Export quality varies by format — PNG/PDF exports depend on rendering engine quality","Some draw.io features may not translate to target formats — advanced styling may be lost","Large diagrams may produce large export files (especially PNG/PDF) — no built-in compression"],"requires":["draw.io XML diagram file","MCP server with export capability","target format support (Mermaid, SVG, PNG, PDF)"],"input_types":["draw.io XML diagram","export format specification"],"output_types":["Mermaid syntax (.mmd)","SVG file (.svg)","PNG image (.png)","PDF document (.pdf)"],"categories":["data-processing-analysis","format-conversion"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":29,"verified":false,"data_access_risk":"high","permissions":["MCP client supporting resource protocol (Claude Desktop, custom MCP client)","draw.io web app or desktop application installed/accessible","Node.js 16+ for running the MCP server","Mermaid diagram syntax (valid .mmd or inline syntax)","MCP server with Mermaid parsing capability","draw.io editor to display converted XML","CSV file with headers and data rows","MCP server with CSV parsing capability","draw.io editor to display generated table","SVG file (.svg)"],"failure_modes":["Requires draw.io to be accessible (web or desktop app) — no headless rendering","File format conversion may lose advanced draw.io-specific properties when importing from Mermaid or CSV","No real-time sync between LLM edits and draw.io UI — changes in editor are not automatically reflected back to the LLM context","Not all Mermaid diagram types are supported — complex subgraph nesting or advanced styling may not convert perfectly","Conversion is one-way (Mermaid → draw.io) — editing in draw.io and converting back to Mermaid is not supported","Layout algorithms differ between Mermaid and draw.io, so converted diagrams may require manual repositioning for optimal appearance","Large CSV files (>1000 rows) may produce unwieldy diagrams — no built-in pagination or summarization","CSV conversion does not infer data types or relationships — purely structural visualization","Styling options are limited to basic cell formatting — no conditional formatting or data-driven coloring","Complex SVG features (filters, gradients, clipping paths) may not convert perfectly — simplified to basic shapes","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.3,"ecosystem":0.5000000000000001,"match_graph":0.25,"freshness":0.6,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:23.903Z","last_scraped_at":"2026-05-03T14:23:50.700Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=npm-drawiomcp","compare_url":"https://unfragile.ai/compare?artifact=npm-drawiomcp"}},"signature":"lXdpW+EdrL0SVEfmWnqiDXORSBb1Ygkgh/ZFv5mUQWibyddmh1fFTQb9sdh/Bj10tCJOTMP/5I3FedzCE/DxCQ==","signedAt":"2026-06-20T09:36:54.192Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/npm-drawiomcp","artifact":"https://unfragile.ai/npm-drawiomcp","verify":"https://unfragile.ai/api/v1/verify?slug=npm-drawiomcp","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}