UML-MCP-Server logo

UML-MCP-Server

by Swayingleaves

UML-MCP Server is a UML diagram generation tool based on MCP (Model Context Protocol). It helps users generate various types of UML diagrams through natural language description or directly writing PlantUML code.

View on GitHub

Last updated: N/A

What is UML-MCP-Server?

UML-MCP-Server is a server that generates UML diagrams from natural language descriptions or PlantUML code, leveraging the Model Context Protocol (MCP) for integration with clients like Claude and Cursor.

How to use UML-MCP-Server?

The server can be installed via Smithery or manually. It can be used as a Python library or configured as an MCP server in compatible IDEs like Cursor. Users can input natural language descriptions or PlantUML code to generate UML diagrams.

Key features of UML-MCP-Server

  • Supports multiple UML diagram types

  • Generates UML diagrams from natural language

  • Supports direct PlantUML code input

  • Returns PlantUML code and accessible URL links

  • Saves generated UML diagrams locally

  • Supports custom save paths

  • Integrates with MCP-compatible clients

  • Comprehensive logging system

Use cases of UML-MCP-Server

  • Generating class diagrams from natural language descriptions

  • Creating sequence diagrams for system processes

  • Visualizing activity flows with activity diagrams

  • Designing use case diagrams for user interactions

FAQ from UML-MCP-Server

How do I install UML-MCP-Server?

You can install it via Smithery or manually by cloning the repository and installing the dependencies.

How do I configure UML-MCP-Server in Cursor?

You need to modify the Cursor's config.json file to add the UML-MCP-Server as an MCP server, specifying the command, arguments, and output directory.

What kind of outputs does it generate?

It generates PlantUML code, a PlantUML URL for online viewing, and a local file path to the generated image.

What if I encounter problems while using UML-MCP-Server?

Check the log files, verify dependency installation, check network connection to PlantUML server, and check output directory permissions.

How can I contribute to the project?

You can contribute code, report issues, or provide improvement suggestions through GitHub Issues or Pull Requests.