Skip to main content
Glama
README.md
# UML Forge MCP Connector

<!-- mcp-name: io.github.dave1362/umlforge -->

**Architecture intelligence, security analysis, and living documentation — inside your coding agent.**

[UML Forge](https://umlforge.dev) gives Claude Code, Cursor, Windsurf, and any
MCP-compatible coding agent a suite of 15 tools (14 diagram tools plus `umlforge_get_result`) for producing
professional UML diagrams from your codebase, schema, or architecture
descriptions.

## Quick start

**Claude Code:**
```json
{
  "mcpServers": {
    "umlforge": {
      "command": "uvx",
      "args": ["umlforge"],
      "env": { "UMLFORGE_API_KEY": "your-api-key" }
    }
  }
}
```

**Cursor / Windsurf** — add the same block to your MCP settings.

Get your API key at [umlforge.dev](https://umlforge.dev).

## Tools included

| Tool | Description |
|------|-------------|
| `umlforge_suggest` | **Start here.** Describe your goal in plain English — returns the right tool and a ready-to-run call |
| `umlforge_reverse_engineer` | Class, sequence, and state diagrams from a codebase or GitHub URL |
| `umlforge_api_sequence` | Sequence diagrams for request flows across services |
| `umlforge_erd_schema` | Entity-relationship diagrams from domain descriptions or SQL schemas |
| `umlforge_state_machine` | State diagrams from entity lifecycles and business rules |
| `umlforge_frontend_components` | Component hierarchy and interaction diagrams for UI features |
| `umlforge_deployment` | Infrastructure and CI/CD pipeline diagrams |
| `umlforge_threat_model` | STRIDE threat model + attack surface diagram |
| `umlforge_event_driven` | Event flow and pub/sub architecture diagrams |
| `umlforge_ai_agent` | Agent topology and tool-call flow diagrams for LLM pipelines |
| `umlforge_stakeholder_arch` | C4 context diagrams for investors, CTOs, and non-technical stakeholders |
| `umlforge_living_docs` | Update existing diagrams to reflect sprint or PR changes |
| `umlforge_onboarding` | Day-one knowledge-transfer package for new team members |
| `umlforge_legacy_migration` | Legacy structure + modern architecture diagrams and 6-phase migration roadmap from COBOL, Fortran, ABAP, RPG, and other legacy languages |
| `umlforge_get_result` | Retrieve a generation that was still running (see *Long-running generations*) |

All diagram tools accept `report_mode=True` to generate a written analysis report
alongside the diagram. Leave `report_mode` unset to follow your account's saved
preference (the dashboard toggle); `report_mode=False` forces diagrams only.

## Long-running generations

A detailed diagram can take a minute or two, and some MCP clients cancel any tool
call after about 60 seconds. UML Forge tools therefore wait up to 45 seconds for the
result. If a diagram is still generating, the tool replies with a job id and
`umlforge_get_result` retrieves it when it is ready (results are kept for one hour).
Clients with longer timeouts can wait longer by setting `UMLFORGE_WAIT_SECONDS`
(5-200) in the `env` block of your MCP configuration.

## Requirements

- Python 3.11+
- An API key from [umlforge.dev](https://umlforge.dev) (free tier available)

## License

MIT — see [LICENSE](LICENSE).

TDQS

A4.7/5.0

Scored across 15 tools

Disambiguation5/5

Each tool targets a distinct diagram/analysis domain, and the descriptions go further than most servers by including explicit 'USE THIS WHEN' and 'NOT FOR' sections that cross-reference sibling tools (e.g. reverse_engineer explicitly redirects to stakeholder_arch, living_docs, erd_schema, api_sequence). Even where diagram types could superficially overlap (reverse_engineer emits sequence/state diagrams vs. api_sequence/state_machine), the boundaries are spelled out, making misselection unlikely.

Naming Consistency5/5

All 15 tools follow an identical umlforge_<snake_case_descriptor> pattern with no camelCase or stylistic drift. The descriptor verbs/nouns vary appropriately by purpose but the naming convention itself is completely predictable.

Tool Count5/5

15 tools maps cleanly onto 15 distinct diagram/analysis domains (C4, sequence, state, ERD, frontend, events, AI agents, deployment, legacy, threat model, onboarding, diffing). The two utility tools (suggest router, get_result poller) earn their place given the async generation model; nothing is redundant.

Completeness4/5

Coverage of diagram generation and analysis is unusually broad and spans the full design-to-modernisation lifecycle. Minor gaps remain, such as no way to list or browse past generation jobs/results (only single-job get_result) and no export/re-render utility, but these are workable around.

Maintenance

ActivityMaintained
ResponsivenessNo issues