UML Forge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UMLFORGE_API_KEY | Yes | Your API key for UML Forge, obtained from https://umlforge.dev |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| umlforge_reverse_engineerA | Analyse an existing codebase and produce UML class, sequence, and state diagrams. USE THIS WHEN:
NOT FOR:
Produces:
Provide EITHER github_url OR codebase — not both. Args: github_url: Public GitHub URL. Accepted formats: github.com/owner/repo github.com/owner/repo/tree/branch/path/to/dir github.com/owner/repo/blob/branch/path/to/file.py codebase: Paste code directly when you have files in context or the repo is private. max_nodes: Max classes/components per diagram (default 20, range 5–50). github_token: GitHub personal access token (repo scope) — only needed for private repositories. Never stored or logged. report_mode: True → also produce an Architectural Intelligence Report. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_stakeholder_archA | Generate a C4 architecture diagram for a mixed technical/non-technical audience. USE THIS WHEN:
NOT FOR:
Produces:
Args: system_description: What the system does, who uses it, its major components. audience_description: Who will read this (e.g. "CTO and non-technical board", "backend engineers new to the system"). report_mode: True → also produce Architecture Communication Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_api_sequenceA | Diagram how services call each other for a specific user action or API flow. USE THIS WHEN:
NOT FOR:
Produces:
Args: services: All participants, e.g. "API Gateway, Auth Service, Order Service, Payment Provider, User DB". user_journey: The action to diagram in plain English, e.g. "User places an order through checkout". report_mode: True → also produce a Design Score report. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_state_machineA | Design a state machine for a domain entity that has a lifecycle. USE THIS WHEN:
NOT FOR:
Produces:
Args: entity: The domain entity (e.g. "Order", "Subscription", "JobApplication"). states: Known lifecycle states (e.g. "pending, active, suspended, cancelled"). events: Triggers that cause transitions (e.g. "payment_received, user_cancels"). business_rules: Constraints on transitions (optional). report_mode: True → also produce State Machine Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_living_docsA | Update diagrams you already have to reflect what changed in a sprint or PR. USE THIS WHEN:
NOT FOR:
IMPORTANT: current_diagrams is REQUIRED — paste your existing Mermaid diagrams (including the ```mermaid fences). This tool cannot generate from scratch. Produces:
Args: current_diagrams: Your existing Mermaid diagram(s) — paste the full content including ```mermaid fences. REQUIRED. sprint_changes: What changed this sprint: new components, removed flows, renamed services, modified behaviour. affected_files: Files or modules touched in this sprint/PR (optional). report_mode: True → also produce Documentation Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_erd_schemaA | Design a database schema with ERD, integrity rules, and index recommendations. USE THIS WHEN:
NOT FOR:
Produces:
Args: domain_description: What the database stores (e.g. "E-commerce: users, products, orders, payments"). entities: Known entities and key attributes (e.g. "User(id, email, tier), Order(id, user_id, status, total)"). access_patterns: Most frequent read/write queries (optional — used for index recommendations). db_technology: Database technology (default: PostgreSQL). report_mode: True → also produce a Design Score report. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_threat_modelA | Generate a full STRIDE security threat model for a system. USE THIS WHEN:
NOT FOR:
Produces:
Args: system_description: What the system does, how users access it, main components. auth_mechanism: Auth in use (e.g. "JWT Bearer token", "API Key", "OAuth2 + PKCE"). trust_boundaries: Boundary crossings (e.g. ["public internet → API", "API → database"]) (optional). sensitive_data: Sensitive data types (e.g. ["user emails", "payment tokens"]) (optional). compliance_framework: Compliance scope (e.g. "GDPR", "NDPA 2023", "PCI-DSS") (optional). report_mode: True → also produce a Security Assessment Report. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_frontend_componentsA | Design a frontend component tree and interaction flow for a UI feature. USE THIS WHEN:
NOT FOR:
Produces:
Args: feature_description: The UI feature or page to diagram. framework: Frontend framework (default: React). Supported: React, Vue, Angular, Svelte, Next.js. state_management: State approach — Redux, Zustand, Context API, Pinia (optional). interactions: Key user interactions and data flows (e.g. "user submits form, table sorts on header click") (optional). report_mode: True → also produce Component Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_event_drivenA | Design an event-driven or async messaging architecture (Kafka, SQS, RabbitMQ, etc.). USE THIS WHEN:
NOT FOR:
Produces:
Args: system_context: What this event-driven system does and why it uses messaging. producers: Services that emit events (e.g. "Order Service emits order.placed"). consumers: Services that consume events (e.g. "Notification, Inventory, Analytics"). broker: Message broker (e.g. "Kafka", "RabbitMQ", "AWS SQS/SNS") (optional). events: Named domain events (e.g. "order.placed, payment.failed") (optional). report_mode: True → also produce Event System Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_onboardingA | Create a day-one knowledge-transfer package for a developer joining a team. USE THIS WHEN:
NOT FOR:
Produces:
Args: system_description: High-level description of the system. tech_stack: Technologies in the stack (e.g. "FastAPI, PostgreSQL, React, Railway"). key_workflows: 2–3 flows a new developer must understand first. pain_points: Known gotchas, non-obvious decisions (optional). report_mode: True → also produce Onboarding Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_ai_agentA | Design an AI agent pipeline or multi-agent orchestration system. USE THIS WHEN:
NOT FOR:
Produces:
Args: pipeline_purpose: What the agent system does (e.g. "Research pipeline that queries the web and drafts a report"). agents: Agents and their roles (e.g. "Planner [claude-opus-4], Researcher [claude-sonnet-4]"). tools_available: Tools agents can call (e.g. "web_search, execute_code") (optional). orchestration_approach: Coordination strategy — sequential, DAG, hierarchical, parallel fan-out (optional). memory_strategy: Memory approach — shared context, vector memory, Redis, none (optional). report_mode: True → also produce Agent Pipeline Analysis Notes. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_deploymentA | Generate a deployment topology and CI/CD pipeline diagram. USE THIS WHEN:
NOT FOR:
Produces:
Args: system_name: Name of the system (e.g. "UML Forge API"). cloud_provider: Cloud provider(s) (e.g. "AWS", "Railway + Vercel", "GCP"). environments: Deployment environments (e.g. "development, staging, production"). services: Services and infrastructure (e.g. "FastAPI API, Next.js, PostgreSQL, Redis"). cicd_tool: CI/CD tool (e.g. "GitHub Actions", "GitLab CI") (optional). report_mode: True → also produce an Infrastructure Health Report. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_legacy_migrationA | Visualise a legacy codebase and produce a migration roadmap to a modern language. USE THIS WHEN:
NOT FOR:
Produces:
Provide EITHER github_url OR legacy_code — not both. Args: legacy_code: Paste the legacy source code directly. github_url: Public GitHub URL containing legacy source files. Accepted formats: github.com/owner/repo, github.com/owner/repo/tree/branch/path, github.com/owner/repo/blob/branch/file.cbl source_language: Language of the legacy code (default: COBOL). Supported: COBOL, Fortran, ABAP, RPG, PL/I, Pascal, BASIC, Assembly, Ada, ALGOL. target_language: Modern language to migrate toward (default: Python). Supported: Python, Go, Rust, Java, TypeScript, C#, Kotlin. system_purpose: Brief description of what the program does in production (e.g. "monthly payroll batch", "order entry OLTP"). Optional but improves diagram labels and migration advice. github_token: GitHub personal access token (repo scope) — only needed for private repositories. Never stored or logged. report_mode: True → also produce a Legacy Migration Assessment with complexity scores and tooling recommendations. Pro/Team/Enterprise only. Omit to use your saved account preference (dashboard toggle); False forces diagrams only. |
| umlforge_suggestA | *** START HERE if you are unsure which tool to use. *** Describe what you want to achieve in plain English. This tool will:
USE THIS WHEN:
Example inputs:
The response will include the exact tool name, all parameters pre-filled with values derived from your description, and a one-line explanation. Args: task_description: Plain-English description of what you want to achieve. Include any relevant details: URLs, entity names, service names, tech stack — the more context, the better the pre-filled parameters. |
| umlforge_get_resultA | Retrieve the result of a UML Forge generation that was still running. USE THIS WHEN:
NOT FOR:
Waits up to about 45 seconds for the job. If it is still running, it replies "still generating" again with the same job id: call this tool again. Args: job_id: The job id from the "still generating" reply. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
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.
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.
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.
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.