Design UML models and generate code with AI agents
Astah Pro MCP lets AI agents design, explain, and generate code from UML diagrams inside Astah Professional.
0.3.0Add to Favorites
Why it matters
Enable AI agents to design software systems by creating and manipulating UML diagrams in Astah Professional, then generate source code from those models or reverse-engineer diagrams from existing code.
Outcomes
What it gets done
Create class, sequence, activity, and state machine diagrams from natural language descriptions
Generate source code implementations from UML class and behavioral diagrams
Reverse-engineer UML diagrams from existing source code files
Convert hand-drawn sketches into formal UML diagram representations
Source
Get it from source
Spark does not host a copy of it.
Open sourceReports
Agent outcome reports
No reports yet
Overview
Astah Pro Mcp
Astah Pro MCP is a local MCP server plugin for Astah Professional that lets AI agents design UML models, explain existing models, generate source code from UML (and vice versa), and turn hand-drawn sketches into diagrams. It runs in two modes: a programmatic tool-calling mode on port 8888 (83 tools) and a direct tool-calling mode on port 18888 (398 tools). Use it when an AI coding agent should build or explain UML diagrams locally inside Astah Professional v12.0+; not suited to remote access or confidential projects without opting the agent out.
What it does
Astah Pro MCP is a local MCP server plugin for Astah Professional, a UML modeling tool. It lets AI agents design systems and represent them as UML models, explain existing UML models, generate source code from UML models (and generate UML from source code), and turn hand-drawn sketches into UML diagrams. The plugin experimentally implements a "Programmatic Tool Calling" mode, inspired by the idea described in Anthropic's article on advanced tool use, alongside a more conventional direct tool-calling mode. Programmatic tool calling runs on port 8888 and exposes 83 tools; direct tool calling runs on port 18888 and exposes 398 tools. Supported diagram types are Class, Sequence, Activity, State Machine, Use Case, Mind Map, and Requirement diagrams, plus Composite Structure diagrams (with some limitations) and query-only Communication and ER diagrams.
When to use - and when NOT to
Use it when you want an AI coding agent (tested with Claude Code, Codex CLI, Grok Build, Antigravity CLI, Cursor IDE, Antigravity IDE, or Kiro IDE) to build, explain, or round-trip UML models while you work in Astah Professional v12.0 or later on the same machine - the MCP server only connects to agents running locally alongside Astah, not remotely. Do not use it with confidential Astah projects unless you enable the agent opt-out settings, since project data and logs are shared with the AI agent by design. It also does not implement token-saving measures, so it is better suited to a flat-rate AI agent plan than pay-as-you-go usage. The project is experimental and may introduce breaking changes, and because the MCP server edits model elements and diagrams directly, back up or commit your Astah project to Git before and during use.
Capabilities
Beyond diagram creation and explanation, the plugin returns reference material some tool functions rely on: excerpts from the OMG UML 2.5.1 and OMG SysML 1.7 specifications, from FIPS PUB 184 IDEF1X, and UML diagram consistency rules quoted, with attribution, from two academic papers by Torre et al. Some model or diagram properties cannot be viewed or edited through the provided tool functions and still require the Astah GUI directly. As with AI-assisted source code, the authors note the agent can make mistakes or misinterpret model elements and diagrams, so its output should be reviewed. The project's own source code (excluding those quoted specification/paper excerpts) is released under the MIT-0 license.
How to install
Install Astah Professional (v12.0 or later) first, then download the plugin JAR (astah-pro-mcp-x.x.x.jar) from the GitHub releases page, drop it into Astah, and restart Astah - an "mcp" tab appearing in the Extra View confirms the plugin loaded. Then point your AI agent at the local server; for Claude Code:
claude mcp add --transport http --scope project astah-pro-mcp http://127.0.0.1:8888/mcp
Codex CLI, Grok Build, Antigravity CLI, Antigravity IDE, Cursor IDE, and Kiro IDE each have their own config-file or CLI equivalent pointing at the same http://127.0.0.1:8888/mcp endpoint (Cursor IDE and the Antigravity/Kiro IDEs route through the mcp-remote bridge and require Node.js). Both ports can be overridden via the ASTAH_PRO_MCP_PORT_FOR_PROGRAMMATIC and ASTAH_PRO_MCP_PORT_FOR_DIRECT environment variables. Start Astah Pro before starting the AI agent, then approve the one-time connection request each new agent session prompts for.
Who it's for
Astah Professional users who want an AI agent to help with UML modeling - drafting class, sequence, activity, and state-machine diagrams from a prompt, explaining an existing model, or converting between code and diagrams - while keeping the modeling data local to their own machine and Astah license. Not for teams needing remote or multi-user access, since the server only serves agents running on the same host as Astah.
Source README
Astah Pro MCP: Enabling AI-Powered UML Modeling
A local MCP server plugin for Astah Professional, a UML modeling tool, that enables AI agents to:
- Design systems and represent them as UML models.
- Explain UML models.
- Generate source code from UML models, and vice versa.
- Create UML diagrams from hand-drawn sketches.
This plugin experimentally implements a programmatic tool calling mode, inspired by the "Programmatic Tool Calling" idea described in this Anthropic article.
Demo
Prompts:
I. Design a simple library management system and draw a class diagram in Astah to illustrate its structure.
II. Based on the contents of the Astah model, draw a sequence diagram to illustrate the behavior of borrowing a book.
III. Based on the contents of the Astah model, draw an activity diagram to illustrate the behavior of returning a book.
IV. Based on the contents of the Astah model, draw a state machine diagram to illustrate the state transitions of a book.
Claude Code
Model: Opus 5 / Effort: Medium / Total time: approx. 13 min
| I | II | III | IV |
![]() |
![]() |
![]() |
![]() |
Codex CLI
Model: Astra / Effort: Medium / Total time: approx. 19 min
| I | II | III | IV |
![]() |
![]() |
![]() |
![]() |
Grok Build
Model: Grok 4.6 / Effort: Medium / Total time: approx. 41 min
| I | II | III | IV |
![]() |
![]() |
![]() |
![]() |
Requirements
AI agent
The AI agents below have been tested, but no guarantee is implied. From personal experience, Claude Code works well for UML modeling, followed by Codex CLI.
- Claude Code
- Codex CLI
- Grok Build
- Antigravity CLI
- Cursor IDE
- Antigravity IDE
- Kiro IDE
Astah Pro v12.0 or later
Note: This MCP server only connects to AI agents running on the same machine as Astah Professional.
According to Astah's terms of use, using Astah via an AI agent is permitted only if you hold a valid license and access it exclusively for your own use with your licensed Astah. Allowing a non-licensed third party to operate Astah via such an agent is strictly prohibited.
For details, please refer to the FAQ (English / Japanese) or contact Change Vision (the developer of Astah) directly.
Supported Diagram Types
- Class Diagram
- Sequence Diagram
- Activity Diagram
- State Machine Diagram
- Use Case Diagram
- Mind Map
- Requirement Diagram
- Composite Structure Diagram (with some limitations)
- Communication Diagram (query-only)
- ER Diagram (query-only)
Installation
Install Astah Pro
Download from here and install.
Install the Astah Pro MCP plugin
Download the plugin JAR file (astah-pro-mcp-x.x.x.jar), drop it into Astah, and restart Astah (see here). If the mcp tab appears in the Extra View, the plugin is installed.
AI agent settings
This plugin experimentally implements a programmatic tool calling mode (port 8888), inspired by the "Programmatic Tool Calling" idea described in this Anthropic article. The direct tool calling mode also remains available (port 18888). Unless you have a specific reason to choose otherwise, specify port 8888.
| Mode | Port | Exposed tools |
|---|---|---|
| Programmatic tool calling | 8888 |
83 |
| Direct tool calling | 18888 |
398 |
Claude Code
Run this command for project scope in your project directory:
claude mcp add --transport http --scope project astah-pro-mcp http://127.0.0.1:8888/mcp
Or run this command for user scope:
claude mcp add --transport http --scope user astah-pro-mcp http://127.0.0.1:8888/mcp
Codex CLI
Create .codex/config.toml under your project directory or your user directory with:
[mcp_servers.astah-pro-mcp]
transport = "http"
url = "http://127.0.0.1:8888/mcp"
Grok Build
Run this command for project scope in your project directory:
grok mcp add --scope project --transport http astah-pro-mcp http://127.0.0.1:8888/mcp
Or run this command for user scope:
grok mcp add --scope user --transport http astah-pro-mcp http://127.0.0.1:8888/mcp
Antigravity CLI
Create .agents/mcp_config.json under your project directory (workspace scope) or edit ~/.gemini/config/mcp_config.json (global scope) with:
{
"mcpServers": {
"astah-pro-mcp": {
"serverUrl": "http://127.0.0.1:8888/mcp"
}
}
}
Cursor IDE
{
"mcpServers": {
"astah-pro-mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http://127.0.0.1:8888/mcp",
"--allow-http"
]
}
}
}
Use mcp-remote to bridge the HTTP connection. Node.js must be installed.
Antigravity IDE
{
"mcpServers": {
"astah-pro-mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http://127.0.0.1:8888/mcp",
"--allow-http"
]
}
}
}
Use mcp-remote to bridge the HTTP connection. Node.js must be installed.
Kiro IDE
{
"mcpServers": {
"astah-pro-mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http://127.0.0.1:8888/mcp",
"--allow-http"
]
}
}
}
Use mcp-remote to bridge the HTTP connection. Node.js must be installed.
Changing the Port Numbers
By default, the plugin listens on 8888 (programmatic tool calling mode) and 18888 (direct tool calling mode). Each port can be overridden with an environment variable:
| Mode | Environment variable |
|---|---|
| Programmatic tool calling | ASTAH_PRO_MCP_PORT_FOR_PROGRAMMATIC |
| Direct tool calling | ASTAH_PRO_MCP_PORT_FOR_DIRECT |
Remember to update your AI agent settings to the same port numbers.
How to Use
Start Astah Pro
Some AI agents try to connect to the MCP server on startup, so start Astah Pro first.
Start AI agents
Each time an AI agent establishes a new session with the Astah Pro MCP server, you will be asked to confirm. Review the details and click 'Connect'.
Send prompts to the AI agents
If you want to disable the Astah Pro MCP plugin in Astah, click [Plugin] > [Installed Plugins], select the Astah Pro MCP entry in the plugin list dialog, click Disable, and then restart Astah.
Build & Test
If you want to build and test locally:
Set up your Astah plugin development environment (see here).
Build:
astah-buildRun tests (change
astahPathto your Astah Pro installation path):Run all tests on Windows 11:
astah-mvn test -DastahPath="C:\Program Files\astah-professional"Run specific tests on Windows 11:
astah-mvn test -DastahPath="C:\Program Files\astah-professional" -Dtest="**/editor/*Test"
Considerations
Experimental Status
This project is currently experimental. The design and implementation may undergo breaking changes.
Confidentiality Risk
Astah project data and logs will be shared with the AI agent. For Astah projects that contain confidential information, either refrain from using this MCP server or use it only with appropriate safeguards (e.g., enabling opt-out settings for AI agents).
Backups Recommended
Because this MCP server edits model elements and diagrams, we recommend committing your Astah project to a Git repository or making copies before and during use so you can revert if necessary.
Feature Limitations
Some model or diagram information (e.g., certain properties) cannot be viewed or edited via the provided tool functions. Use the Astah GUI directly for those.
Costs
This MCP server prioritizes providing the information AI agents need and does not implement token-saving measures. We recommend using AI agents on a flat-rate plan rather than pay-as-you-go.
AI Limitations
Just as when working with source code, AI agents can make mistakes or misinterpret model elements and diagrams.
Got a feature request or found a bug?
Please open an issue. Because this project is in an experimental phase and may introduce breaking changes, we aren't accepting pull requests until the design and implementation stabilize. Thank you for your understanding.
Need support?
If you need private support, contact takaaki.teshima.dev [at] gmail.com (replace [at] with @). It could become a paid project; I may still be able to support you/it.
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.











