azure-diagram
MCP server that turns natural-language prompts into Microsoft Azure architecture diagrams (PNG) using Python Diagrams + Graphviz.
claude mcp add --transport stdio dminkovski-azure-diagram-mcp python -m azure_diagram_mcp_server.server
How to use
This MCP server renders Microsoft Azure diagrams from natural language prompts using the Python diagrams package. It accepts a short description and generates a diagram (PNG) saved in the diagrams/ folder of the repository. The server leverages the diagrams library with Azure icons to produce Azure architecture diagrams, along with support for sequence diagrams, flow charts, class diagrams, and more, depending on the Python code generated from your prompt.
To use it, configure the MCP client to point at the Azure Diagram MCP Server (the Python module azure_diagram_mcp_server.server). Once running, you can trigger Generate Diagram actions via your MCP-capable editor (e.g., VS Code Copilot workflow) by providing a natural-language prompt such as: “Generate an Azure Architecture Diagram with an Azure Function connected to a SQL Database through a Load Balancer.” The server will execute the underlying diagrams code and output a PNG image into the diagrams/ folder for you to review and export.
How to install
Prerequisites:
- Python 3.10+ installed on your system
- GraphViz installed (required by the diagrams package for rendering)
- Git to clone the repository
Setup steps:
-
Install Python 3.10+ (if not already installed)
- Windows: use the official Python installer from python.org or winget
- macOS/Linux: ensure python3 and pip3 are available
-
Install GraphViz
- Windows: download and install from graphviz.org
- macOS: brew install graphviz
- Linux: apt/yum install graphviz
-
Clone the MCP server repository (or download the ZIP) and open in your editor:
git clone <repository-url> cd <repo-directory>
-
Install Python dependencies
-
In the project directory, install requirements:
pip install -r requirements.txt
-
-
Run the MCP server via the MCP client configuration (see mcp_config in this document) or use the docker option if you prefer containerized execution.
Optional: set up the MCP client configuration as described in the repository README to integrate with VS Code Copilot workflows.
Additional notes
Tips and known considerations:
- Ensure GraphViz executables are in your system PATH so that diagrams can be rendered.
- The server saves generated diagrams to the diagrams/ folder within the repo; keep an eye on disk space if generating many diagrams.
- If Copilot prompts do not produce a diagram, verify permissions and that the MCP server module (azure_diagram_mcp_server.server) is importable from the Python environment used by the MCP client.
- If you prefer to run in Docker, build the image with: docker build -t azure-diagram-mcp-server . and run as shown in the README example.
- The project relies on the diagrams library and Azure icons; ensure network access is allowed for package imports and any download steps during first run.
Related MCP Servers
mcp -odoo
A Model Context Protocol (MCP) server that enables AI assistants to securely interact with Odoo ERP systems through standardized resources and tools for data retrieval and manipulation.
mcp-pinecone
Model Context Protocol server to allow for reading and writing from Pinecone. Rudimentary RAG
Gitingest
mcp server for gitingest
microsoft_fabric_mcp
MCP server wrapping around the Fabric Rest API
mcp -memos-py
A Python package enabling LLM models to interact with the Memos server via the MCP interface for searching, creating, retrieving, and managing memos.
mcp -python-template
This template provides a streamlined foundation for building Model Context Protocol (MCP) servers in Python. It's designed to make AI-assisted development of MCP tools easier and more efficient.