.skill/skills/uml-mcp-diagrams/SKILL.md
Creates diagrams via the uml-mcp MCP server (generate_uml, validate_uml, list_diagram_types, generate_uml_batch) and returns shareable Kroki URLs plus optional playground links. Use when the user wants a diagram, asks for PlantUML/Mermaid/D2/UML, wants a URL instead of a saved file, or mentions uml-mcp, Kroki, or diagram_type.
npx skillsauth add antoinebou12/uml-mcp uml-mcp-diagramsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Turn the user’s intent into valid diagram_type + source code, call generate_uml, and surface the url (and playground when present). Prefer URL-only output unless the user explicitly asks to save a file.
diagram_type is unknown or ambiguous, read the uml://types resource (or uml://capabilities) to list valid types and supported backends.uml://templates or uml://examples; for Mermaid specifics, uml://mermaid-examples when relevant.validate_uml with the same diagram_type, code, and planned output_format to catch local errors before render. Use strict: true for stricter Mermaid/D2 checks when needed.uml://types, call list_diagram_types for the same metadata.| Input | Guidance |
|-------|----------|
| diagram_type | Required. Must match a key from uml://types (e.g. class, sequence, mermaid, d2). |
| code | Required. Source in the language that matches diagram_type. |
| output_dir | Omit or null for URL / base64 only (no write to disk). Set only if the user wants a saved image. |
| output_format | Default svg is usually best for URLs; use png/pdf/jpeg/txt only if valid for that type (see uml://formats). |
| theme | PlantUML types only; omit otherwise. |
| scale | SVG only; optional size multiplier. |
error, fix code or diagram_type / output_format and retry (or run validate_uml again).url — primary Kroki link to the rendered diagram.playground — if present, link for interactive editing.local_path — only when output_dir was set.code in the reply so the user can edit and regenerate.| User intent | Typical diagram_type |
|-------------|------------------------|
| Classes, associations, packages | class (PlantUML) or mermaid with classDiagram |
| Messages over time, lifelines | sequence or Mermaid sequence |
| Flows, swimlanes, BPMN | activity, bpmn, or Mermaid flowchart |
| Components, deployment | component, deployment, or C4-style types if listed in uml://types |
| Quick graphs, Gantt, pie | mermaid |
| Declarative layout / modern DSL | d2 |
When several types fit, pick the one the user named; otherwise prefer the type with the clearest template in uml://templates.
generate_uml, validate_uml, list_diagram_types, generate_uml_batchuml://types, uml://formats, uml://templates, uml://examples, uml://capabilities, uml://server-info, uml://mermaid-examples, uml://bpmn-guide, uml://workflowPrompts (when the client exposes them): uml_diagram, uml_diagram_with_thinking, and type-specific prompts (class_diagram, sequence_diagram, activity_diagram, usecase_diagram, mermaid_sequence_api, mermaid_gantt, bpmn_process_guide, c4_model, wireviz_harness, bpmn_executable_process, convert_class_to_mermaid) help structure code before generate_uml.
Always use the MCP tool/resource APIs exposed in the environment; do not guess unsupported diagram_type or output_format values when unsure—confirm with uml://types / uml://formats.
tools
Create and validate diagrams with the uml-mcp MCP server (generate_uml, validate_uml, list_diagram_types, generate_uml_batch). Use for UML, Mermaid, D2, Graphviz, Kroki URLs, or diagram_type questions.
tools
Produces Mermaid or PlantUML diagram code from user specifications for UML, architecture, and flow diagrams. Use when the user asks for a diagram (sequence, class, activity, use case, component, state, deployment), diagram code, or when generating diagram script for documentation, design, or the generate_uml MCP tool. Supports Kroki-renderable output.
tools
Modern Python tooling and best practices using uv, ruff, ty, and pytest. Covers project setup with pyproject.toml (PEP 735), src layout, linting/formatting with ruff, type checking with ty, testing with pytest and coverage, pre-commit with prek, and security (pip-audit, detect-secrets, actionlint). Use when setting up or working on Python projects, replacing pip/virtualenv with uv, replacing flake8/black/mypy with ruff/ty, adding pre-commit or security scanning, or when the user mentions uv, ruff, ty, pytest, or cookiecutter-python patterns.
tools
Create and extend MCP (Model Context Protocol) servers in Python using FastMCP and the official SDK. Covers tools, resources, prompts, STDIO vs HTTP transports, logging rules for STDIO, and production best practices. Use when building or modifying MCP servers in Python, adding tools/resources/prompts, debugging MCP servers, or choosing transport and client config.