carlosmgv02/diagram-ai-generator
If you are the rightful owner of diagram-ai-generator and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
Diagram AI Generator is a professional AI-powered architecture diagram generator with multi-cloud support and MCP server integration.
Diagram AI Generator π
Professional AI-powered architecture diagram generator with multi-cloud support and MCP (Model Context Protocol) server integration. Generate beautiful, accurate diagrams with provider-specific icons for AWS, Azure, GCP, Kubernetes, and more.
β¨ Features
- π― Professional Diagrams: Generate diagrams with real provider icons (AWS Lambda, Azure Functions, GCP Storage, etc.)
- π Multi-Cloud Support: Mix AWS, Azure, GCP, and other providers in a single diagram
- π§ Smart Node Suggestions: Automatic suggestions when component names don't match exactly
- π§ MCP Server Integration: Works seamlessly with Claude Desktop and other MCP clients
- π³ Docker Ready: One-command deployment with Docker Compose
- π¦ PyPI Package: Install easily with pip
- ποΈ Modular Architecture: Clean, scalable, and maintainable codebase
πΈ Example Output
Here's a real diagram generated with a simple text prompt:
Prompt: "aplicaciΓ³n web en AWS con ALB, EC2 en mΓΊltiples zonas de disponibilidad, RDS con rΓ©plica de lectura, ElastiCache para cachΓ© y CloudFront para CDN y muchas mas cosas con layout horizontal para que se vea completo y bien"
Generated in seconds with professional AWS icons, proper layout, and accurate cloud architecture patterns! π
β‘ How It Works
Simply describe your architecture in plain text:
- β "Create a microservices architecture with load balancer, containers, and Redis cache"
- β "Design a data pipeline with S3, Lambda, and Kinesis"
- β "Build a multi-region setup with CloudFront, ALB, and RDS"
The AI understands your requirements and generates production-ready diagrams with the correct cloud provider icons and relationships.
π Quick Start
Step 1: Install the package
pip install diagram-ai-generator
Note: Use your system Python (the one Claude Desktop uses):
# macOS
/usr/local/bin/python3 -m pip install diagram-ai-generator
# Or force install from PyPI
pip install diagram-ai-generator
Step 2: Configure Claude Desktop
That's it! Now configure it in Claude Desktop (see next section).
π Claude Desktop Configuration
Edit your claude_desktop_config.json
:
Location:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
Basic Configuration:
{
"mcpServers": {
"diagram-ai-generator": {
"command": "python3",
"args": ["-m", "src.application.mcp.server_modular"]
}
}
}
With Custom Output Directory (Optional):
{
"mcpServers": {
"diagram-ai-generator": {
"command": "python3",
"args": ["-m", "src.application.mcp.server_modular"],
"env": {
"DIAGRAM_OUTPUT_DIR": "/Users/yourname/diagrams"
}
}
}
}
The output directory will be created automatically if it doesn't exist. If not specified, diagrams are saved to ./generated_diagrams/
in your current directory.
After configuration:
- Restart Claude Desktop
- Start using it! Ask Claude to create architecture diagrams
π οΈ Usage
MCP Server Integration
The MCP server provides 5 professional tools for creating diagrams:
step1_list_providers
- List all available providers (AWS, Azure, GCP, etc.)step2_get_categories
- Get categories for a specific providerstep3_get_nodes
- Get exact node names for a categorycreate_diagram_from_json
- Generate diagrams from JSON specificationsmulticloud_helper
- Guide for multi-cloud diagrams
Recommended Workflow
1. step1_list_providers()
β
2. step2_get_categories("aws")
β
3. step3_get_nodes("aws", "compute")
β
4. create_diagram_from_json(spec)
π‘ Real-World Examples
Example 1: AWS Serverless E-commerce
Simple prompt: "Create a serverless e-commerce backend on AWS with API Gateway, Lambda functions, DynamoDB, and S3 for product images"
What you get:
- Professional AWS architecture diagram
- Correct service icons and relationships
- Production-ready layout
Example 2: Multi-Cloud Disaster Recovery
Simple prompt: "Multi-cloud setup with primary services in AWS and failover in Azure"
What you get:
- Clear separation between cloud providers
- Cross-cloud connections
- Both AWS and Azure specific icons
Example 3: Kubernetes Microservices
Simple prompt: "Kubernetes cluster with microservices, ingress controller, and persistent storage"
What you get:
- Kubernetes-specific resources
- Proper namespace organization
- Service mesh visualization
Example: Single-Cloud Diagram
{
"title": "AWS Serverless Architecture",
"provider": "aws",
"layout": "horizontal",
"components": [
{
"id": "api_gateway",
"type": "APIGateway",
"category": "network",
"label": "API Gateway"
},
{
"id": "lambda",
"type": "Lambda",
"category": "compute",
"label": "Lambda Function"
},
{
"id": "dynamodb",
"type": "Dynamodb",
"category": "database",
"label": "DynamoDB"
}
],
"connections": [
{
"from": "api_gateway",
"to": "lambda",
"color": "darkgreen",
"style": "bold",
"label": "HTTP"
}
]
}
Example: Multi-Cloud Diagram with Specific Icons
{
"title": "Multi-Cloud Architecture",
"provider": "generic",
"layout": "horizontal",
"components": [
{
"id": "aws_lambda",
"type": "Lambda",
"category": "compute",
"component_provider": "aws",
"label": "AWS Lambda"
},
{
"id": "azure_func",
"type": "FunctionApps",
"category": "compute",
"component_provider": "azure",
"label": "Azure Functions"
},
{
"id": "gcp_func",
"type": "Functions",
"category": "compute",
"component_provider": "gcp",
"label": "GCP Functions"
}
],
"clusters": [
{
"name": "AWS Cloud",
"components": ["aws_lambda"]
},
{
"name": "Azure Cloud",
"components": ["azure_func"]
},
{
"name": "GCP Cloud",
"components": ["gcp_func"]
}
]
}
π Multi-Cloud Support
Key Features:
- β Real Provider Icons: Each component uses its actual provider icon
- β Mixed Architectures: Combine AWS, Azure, GCP in one diagram
- β Smart Clustering: Automatic grouping by cloud provider
- β Cross-Cloud Connections: Show inter-cloud communication
Important Notes:
- Use
"provider": "generic"
for multi-cloud diagrams - Add
"component_provider": "aws"
to each component - Use exact node names from
step3_get_nodes()
βοΈ Configuration Options
Output Directory
By default, diagrams are saved to ./generated_diagrams/
. You can customize this:
{
"mcpServers": {
"diagram-ai-generator": {
"command": "python3",
"args": ["-m", "src.application.mcp.server_modular"],
"env": {
"DIAGRAM_OUTPUT_DIR": "/path/to/your/diagrams"
}
}
}
}
The directory will be created automatically if it doesn't exist.
π§ Smart Features
Automatic Node Suggestions
When you use incorrect node names, the system suggests alternatives:
β οΈ NODO NO ENCONTRADO: 'DynamoDB' en aws/database
π‘ SUGERENCIAS: Dynamodb, DocumentdbMongodbCompatibility
β
USANDO SUGERENCIA: 'Dynamodb' en lugar de 'DynamoDB'
Common Name Corrections
- β
DynamoDB
β βDynamodb
- β
EventBridge
β βEventbridge
- β
S3
β βSimpleStorageServiceS3
- β
PubSub
β βPubsub
π Supported Providers
- AWS - 400+ services across 30+ categories
- Azure - 300+ services across 25+ categories
- GCP - 200+ services across 15+ categories
- Kubernetes - 50+ resources across 10+ categories
- OnPrem - 200+ tools and services
- And 14 more providers...
π Troubleshooting
Common Issues
1. Module not found error Make sure you have Python 3.10+ and installed in the correct Python:
# Check Python version
python3 --version # Should be 3.10 or higher
# Install
/usr/local/bin/python3 -m pip install diagram-ai-generator
2. Graphviz not found
# macOS
brew install graphviz
# Ubuntu/Debian
sudo apt-get install graphviz
3. Custom output directory not working
- Make sure the path exists or the directory is writable
- Use absolute paths in the configuration
- Check Claude Desktop logs for errors
π§ Development
Contributing
- Fork the repository
- Create a feature branch from
develop
- Make your changes
- Open a PR to
develop
Release Process
Automated with GitHub Actions:
-
PR to master: Triggers checks
- Tests and build validation
- Analyzes changes (code vs docs only)
- Comments on PR if release will be created
-
Merge to master: Auto-deploys if version changed
- Builds package
- Publishes to PyPI
- Creates GitHub release
- Updates CHANGELOG
Versioning
Follow Conventional Commits:
feat:
- New feature (bumps MINOR version)fix:
- Bug fix (bumps PATCH version)BREAKING CHANGE:
- Breaking change (bumps MAJOR version)docs:
- Documentation only (no release)
π License
MIT License - see file for details.
π Support
- π Issues: GitHub Issues
- π Changelog: