PlantUML

PlantUML is a self-hosted diagram server that creates diagrams from a simple text format.

  • Productivity
  • Tools & Utilities
PlantUML is a self-hosted diagram server that creates diagrams from a simple text format. It renders Unified Modeling Language (UML), sequence, flowchart, network, and architecture diagrams through a web interface. It is for developers, sysadmins, and homelab users who want diagram-as-code with local control.

Platform availability

Available on 2 of 9 platforms

  • Unraid
  • TrueNAS (not listed)
  • Umbrel (not listed)
  • ZimaOS (not listed)
  • Proxmox (not listed)
  • Helm
  • Mac (not listed)
  • Windows (not listed)
  • Linux (not listed)

Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.

82/100 Excellent

Maintained
100last commit 13 days ago
Popular
8313,344 GitHub stars
Easy to install
452 install platforms, install notes, Docker image
Light to run
No data

Based on 3 of 4 factors.

Availability: platform listings confirmed today, links checked 15 days ago

GitHub stars
13,344
Open issues
583
Last commit
2026-09-29
Latest release
v1.2026.8
License
LGPL-3.0
Activity
steady

Checked 13 days ago - source: GitHub (plantuml/plantuml)

Resources & Compatibility

ARM (e.g. Raspberry Pi) is supported.

Checked 14 days ago - source: Docker Hub image tags and published docs

First-install notes

  • Add PlantUML to your MCP client In your MCP client settings, add a server named plantuml-js with command npx and args -y @plantuml/mcp-js. This tells the client how to launch PlantUML, so it can generate diagrams instead of failing because the server is missing. source
  • Test the server in a terminal Run npx -y @plantuml/mcp-js in a terminal to see if it starts. This confirms the package can run on your machine; if it errors, the MCP client will not be able to use PlantUML. source
  • Check for the startup message A successful start prints plantuml-mcp-js server started (stdio). Seeing that message means the server is ready to talk through stdio, the simple pipe MCP clients use; without it, the server likely did not start correctly. source

Fetched 14 days ago - each note links to its source

Alternatives

No alternatives collected yet.

Common questions

How can I verify that a PlantUML MCP JS server has started?

In your MCP client, start the server with npx and -y @plantuml/mcp-js. A successful start prints plantuml-mcp-js server started (stdio), which means it is ready to communicate over stdio.

Can PlantUML diagrams be rendered directly in GitHub without a self-hosted server?

Yes, an official browser extension renders PlantUML diagrams directly inside GitHub. It does not require a server, tokens, or tracking.

What Emacs/org mode setup issue has been reported for PlantUML?

One Reddit post reports trouble setting up PlantUML in Emacs, especially getting a preview from a plantuml org source block.

Which image formats can PlantUML export?

PlantUML can export images as PNG, LaTeX, EPS, and SVG.

Does PlantUML prevent inconsistent UML relationships?

No, PlantUML does not prevent you from drawing inconsistent diagrams.

Answers sourced from github.com, github.com, plantuml.com, the-lum.github.io, www.reddit.com

Community

Collected 8 days ago - public community threads