Staruml Mcp

io.github.ezrabrilliantPublished by GitHub account ezrabrilliantv0.2.0Updated Oct 24, 2026

MCP server for StarUML — generate UML diagrams from AI agents via stdio or HTTP.

VerifiedSTDIODesktop onlyDeveloper ToolsMedia & Design

Overview

AI-generated overview

A local MCP server that lets an AI assistant drive StarUML: generate UML diagrams from Mermaid, inspect and export diagrams, and manage project elements.

What you can do
Generate UML diagrams from Mermaid code and list or inspect the diagrams in the current project, including the focused one and its metadata, and export a diagram as a PNG by ID. With the companion StarUML extension installed, list and execute StarUML's built-in commands, and create, open, save and save-as projects. Query model elements by ID or search, and create, update or delete elements. Create typed native diagrams, switch between diagrams and close them.
When to use it
Useful when you want an assistant to build or edit UML models in StarUML directly, for example turning a description into an ER or sequence diagram, exporting diagrams as images, or scripting StarUML project and element changes.
Requirements
Runs locally as an npm package via npx, so Node.js 20+ is needed on the machine running the assistant. StarUML v7.0.0+ must be running with its API server enabled in settings.json on port 58321. The full 19 tools require installing the staruml-mcp-extension plugin inside StarUML. Defaults to stdio; an HTTP mode listens on port 58323.
Before you install
Tools that create, update or delete elements and save, save-as, open or create projects change StarUML project files, so review actions before approving them. The extension is installed inside StarUML from an external repository. The server talks to StarUML over local HTTP ports, so those ports must be reachable.

Installation

In SourceWeft

  1. Open Staruml Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

staruml-mcp

[npm version] [npm downloads] [CI] [license] [MCP]

Model Context Protocol (MCP) server for StarUML. Lets AI agents (Claude Code, Cursor, VS Code Copilot, Codex) drive StarUML programmatically — generate UML diagrams from Mermaid, execute any built-in command, CRUD elements, save projects, and more.

How it fits together

  AI Agent  ──MCP──►  staruml-mcp (this package)  ──HTTP──►  StarUML                                                  :58321 (built-in, 4 tools)                                                  :58322 (extension, 15 tools)
PackageWhat it isWhere it runs
staruml-mcp (this repo)MCP server for AI agentsyour machine via npx -y staruml-mcp
staruml-mcp-extensionStarUML plugin adding 15 HTTP endpointsinside StarUML (install once via Extension Manager)
  • Using only Mermaid-based diagram tools? Install staruml-mcp only. The 4 built-in tools work.
  • Want the full 19 tools (project save/open, element CRUD, execute any StarUML command)? Install both.

Prerequisites

  • StarUML v7.0.0+ with API Server enabled (see below)
  • Node.js 20+ on the machine running the AI agent
  • (Optional) staruml-mcp-extension installed in StarUML — required for 15 of the 19 tools

Enable StarUML API Server

Edit settings.json at:

  • Windows: %APPDATA%\StarUML\settings.json
  • macOS: ~/Library/Application Support/StarUML/settings.json
  • Linux: ~/.config/StarUML/settings.json

Add or update:

json
{  "apiServer": true,  "apiServerPort": 58321}

Restart StarUML.

Verify:

bash
curl http://localhost:58321/# → "Hello from StarUML API Server!"

Install & Use

Claude Code (recommended — HTTP transport)

Start the server in a terminal:

bash
npx -y staruml-mcp --transport http# listens on http://localhost:58323/mcp by default

Register with Claude Code:

bash
claude mcp add --transport http staruml http://localhost:58323/mcp

Port 58323 is the canonical HTTP port, chosen to sit alongside StarUML's built-in API (58321) and staruml-mcp-extension (58322). Override with --port <n> if needed.

Restart Claude Code. Ask:

"What StarUML tools do you have?"

Claude Desktop (stdio transport)

Edit %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

json
{  "mcpServers": {    "staruml": {      "command": "npx",      "args": ["-y", "staruml-mcp"]    }  }}

Restart Claude Desktop.

Cursor / VS Code Copilot / Codex CLI

Point your MCP client at npx -y staruml-mcp (stdio) or http://localhost:58323/mcp (HTTP).

CLI

staruml-mcp [options]
  -t, --transport <type>   stdio | http              (default: stdio)  -p, --port <number>      HTTP listen port          (default: 58323)      --api-port <number>  StarUML built-in API port (default: 58321)      --ext-port <number>  staruml-mcp-extension port(default: 58322)      --api-host <url>     StarUML API host prefix   (default: http://localhost)  -V, --version            Print version  -h, --help               Show help

Tools Exposed

Built-in (always available, port 58321)

ToolDescription
generate_diagramGenerate a UML diagram from Mermaid code.
get_all_diagrams_infoList all diagrams in the current project (id, name, type).
get_current_diagram_infoGet metadata of the currently focused diagram.
get_diagram_image_by_idExport a diagram as PNG by its ID.

Extension tools (require staruml-mcp-extension, port 58322)

ToolDescription
get_all_commandsList all 138+ built-in StarUML command IDs.
execute_commandExecute any built-in command (e.g. project:save, view:fit-to-window).
get_project_infoCurrent project's filename + top-level elements.
save_project / save_project_as / new_project / open_projectProject file lifecycle.
get_element_by_id / find_elementsQuery model elements.
create_element / update_element / delete_elementElement CRUD.
create_diagram (typed native) / switch_diagram / close_diagramDiagram management.

To enable extension tools: install staruml-mcp-extension in StarUML (Tools → Extension Manager → Install From URL → https://github.com/ezrabrilliant/staruml-mcp-extension).

Example Prompts

  • "Create an ER diagram in StarUML for a POS database: users, menus, transactions with relationships."
  • "Generate a sequence diagram for JWT login: frontend → /api/auth/login → AuthService → DB → JWT response."
  • "Show me the current diagram in StarUML."
  • "Export diagram with ID xyz123 as an image."

Development

bash
git clone https://github.com/ezrabrilliant/staruml-mcp.gitcd staruml-mcpnpm installnpm run dev          # tsx watch on src/npm run build        # bundle to dist/npm test             # vitestnpm run typecheck    # tsc --noEmit

Architecture

AI Agent (Claude Code / Cursor / VS Code / …)        │        │  MCP (stdio or Streamable HTTP)        ▼  staruml-mcp  (this package)        │        │  HTTP JSON-RPC        ▼StarUML API Server (port 58321)        │        ▼  StarUML Application (v7+)

Acknowledgments

Inspired by staruml/staruml-mcp-server (official stdio-only server by Minkyu Lee, StarUML creator). This project reimplements it with multi-transport support and strict TypeScript.

License

MIT © Ezra Brilliant Konterliem

Source: README.md at commit 3a58d81

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.2.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts