# UML-MCP

UML-MCP Server is a UML diagram generation tool based on MCP (Model Context Protocol), which can help users generate various types of UML diagrams through natural language description or directly wri…

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add antoinebou12/uml

# Browse available tools
npx -y @smithery/cli@latest tool list antoinebou12/uml

# Get full schema for a tool
npx -y @smithery/cli@latest tool get antoinebou12/uml generate_uml

# Call a tool
npx -y @smithery/cli@latest tool call antoinebou12/uml generate_uml '{}'
```

## Direct MCP Connection

Endpoint: `https://uml--antoinebou12.run.tools`

**Optional config:**
- `debug` (query) — Enable verbose debug logging
- `theme` (query) — Default PlantUML theme for diagram appearance (e.g. cerulean, sketchy-outline). Optional; only applies to PlantUML diagram types.
- `log_level` (query) — Logging level for the server
- `output_dir` (query) — Directory to save generated diagram files (e.g. ./output)
- `kroki_server` (query) — Kroki server URL for diagram rendering (default: https://kroki.io)
- `output_format` (query) — Default format for generated diagrams
- `plantuml_server` (query) — Optional PlantUML server URL (leave empty to use Kroki)

## Tools (1)

- `generate_uml` — Generate any UML or diagram by type (class, sequence, mermaid, d2, etc.)

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get antoinebou12/uml <tool-name>
```

## Resources

- `uml://types` — Returns available diagram types with backend, description, and supported formats (e.g. class, sequence, mermaid, d2). U…
- `uml://templates` — Returns starter templates (PlantUML, Mermaid, D2, etc.) for each diagram type. Use to get minimal valid code to customi…
- `uml://examples` — Returns example diagrams for each type (class, sequence, activity, etc.). Use as reference for syntax and structure.
- `uml://formats` — Returns supported output formats (svg, png, pdf) per diagram type. Use to choose valid output_format for generate_uml.
- `uml://server-info` — Returns server metadata: name, version, tools, prompts, Kroki URL. Use for discovery and health checks.
- `uml://mermaid-examples` — Returns named Mermaid examples (sequence_api, gantt) for API-call flows and Gantt charts. Reference for mermaid_sequenc…
- `uml://bpmn-guide` — Structured reference for BPMN 2.0.2: start/end events, tasks, gateways, sequence flow, lanes, pools. Use with generate_…
- `uml://workflow` — Recommended workflow: plan first (diagram type, elements, relationships), then call generate_uml with the final code. U…

## Prompts (10)

- `uml_diagram` — Base prompt for UML diagram generation. Guides the model to produce diagram code (PlantUML, Mermaid, D2) for any diagra…
- `uml_diagram_with_thinking` — Generate UML diagram with an explicit plan-then-generate workflow. Plan diagram type, elements, and relationships first…
- `class_diagram` — Generate UML class diagram from a natural language description. Produces PlantUML code with classes, attributes, method…
- `sequence_diagram` — Generate UML sequence diagram from a description. Produces PlantUML code with participants, lifelines, messages, activa…
- `activity_diagram` — Generate UML activity diagram from a description. Produces PlantUML code with start/end, activities, decisions, forks, …
- `usecase_diagram` — Generate UML use case diagram from a description. Produces PlantUML code with actors, use cases, system boundary, inclu…
- `mermaid_sequence_api` — Produce a Mermaid sequence diagram for an API call flow: client, API, optional Auth/DB, request/response, and optional …
- `mermaid_gantt` — Generate a Mermaid Gantt chart with title, dateFormat, sections, and tasks including dependencies (after) and durations.
- `bpmn_process_guide` — Explain how to draw a BPMN process model. Covers start/end events, tasks, gateways (XOR, AND, OR), sequence flow, lanes…
- `convert_class_to_mermaid` — Convert a class diagram (PlantUML code or prose description) into Mermaid classDiagram syntax, mapping visibility, rela…
