Diagrams MCP Server
Diagrams MCP Server
MCP server for generating infrastructure and architecture diagrams as code using the Python diagrams library.
Features
5 Diagram Tools for infrastructure, architecture, and flowcharts:
Infrastructure Diagrams - 15+ providers (AWS, Azure, GCP, K8s, On-Prem, SaaS)
500+ Node Types - Compute, database, network, storage, security
Custom Icons - Web URLs (HTTPS) and local files
Flowcharts - 24 shapes for process diagrams
Validation - Dry-run before generation
Advanced Capabilities:
Multiple output formats (PNG, PDF, JPG, DOT)
Cluster grouping with unlimited nesting
Edge styling (colours, labels, line styles)
Graphviz attribute customisation
Installation
System Requirements:
Graphviz must be installed:
macOS:
brew install graphvizUbuntu/Debian:
sudo apt-get install graphvizWindows: Download from https://graphviz.org/download/
IDEs
Claude Desktop
Add to your claude_desktop_config.json:
For published package:
{
"mcpServers": {
"diagrams": {
"command": "uvx",
"args": ["diagrams-mcp"]
}
}
}For local development:
{
"mcpServers": {
"diagrams:local": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/diagrams-mcp",
"run",
"diagrams-mcp"
]
}
}
}Claude Code
Quick setup (CLI):
Published package:
claude mcp add --transport stdio math -- uvx diagrams-mcpLocal development:
claude mcp add --transport stdio math -- uvx --from /absolute/path/to/diagrams-mcp diagrams-mcpTeam setup (project-level):
Add .mcp.json to your project root:
{
"mcpServers": {
"diagrams": {
"command": "uvx",
"args": ["diagrams-mcp"]
}
}
}Verify installation:
claude mcp listOr check in IDE: View → MCP Servers, or use /mcp command.
Try It
Once installed, try these prompts:
"Create an AWS 3-tier web application diagram with Route53, ELB, EC2 instances, and RDS"
"Generate a Kubernetes microservices architecture with ingress, services, and pods"
"Build a flowchart for a CI/CD pipeline with decision points"
"Create a diagram using a custom icon from my company logo URL"
"Show me all available AWS compute nodes"
Map to tools: create_diagram, create_diagram_with_custom_icons, create_flowchart, list_available_nodes, validate_diagram_spec
Tool Reference
All tool parameters and descriptions are available in your IDE's autocomplete.
Diagram Generation (3 tools)
Tool | Description |
| Full infrastructure/architecture diagrams with all providers |
| Diagrams with custom node icons from URLs or local files |
| Simplified flowchart creation with 24 process shapes |
Discovery & Validation (2 tools)
Tool | Description |
| Search 500+ available nodes by provider, category, or keyword |
| Dry-run validation before generation |
Custom Icons
Web URL Icons
HTTPS-only (HTTP rejected)
5MB file size limit
5-second download timeout
Image format validation (PNG, JPG)
Automatic caching (~/.diagrams_mcp/icon_cache)
Local File Icons
Path validation (file must exist)
Format validation
Sandboxed execution
Development
Running Tests
# Run all tests
uv run poe testDevelopment Modes
STDIO mode (for Claude Desktop integration):
uv run diagrams-mcpHTTP mode (for containerised deployments):
uv run diagrams-mcp-http --port 8000License
MIT License. See LICENSE file for details.
Contributing
Contributions welcome via PRs! Please ensure:
Tests pass, and new ones are added if applicable
Code is linted & formatted
Type hints are included
Clear, actionable error messages are provided
Support
For issues and questions, please open an issue on GitHub.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/apetta/diagrams-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server