Claude Agent Skill · by Microsoft

Azure Resource Visualizer

Takes your Azure resource group and turns it into a proper Mermaid architecture diagram showing how everything connects. Crawls through all resources, maps thei

Install
Terminal · npx
$npx skills add https://github.com/vercel-labs/agent-skills --skill vercel-react-best-practices
Works with Paperclip

How Azure Resource Visualizer fits into a Paperclip company.

Azure Resource Visualizer drops into any Paperclip agent that handles this kind of work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.

S
SaaS FactoryPaired

Pre-configured AI company — 18 agents, 18 skills, one-time purchase.

$27$59
Explore pack
Source file
SKILL.md181 lines
Expand
---name: azure-resource-visualizerdescription: "Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. WHEN: create architecture diagram, visualize Azure resources, show resource relationships, generate Mermaid diagram, analyze resource group, diagram my resources, architecture visualization, resource topology, map Azure infrastructure."license: MITmetadata:  author: Microsoft  version: "1.0.1"--- # Azure Resource Visualizer - Architecture Diagram Generator A user may ask for help understanding how individual resources fit together, or to create a diagram showing their relationships. Your mission is to examine Azure resource groups, understand their structure and relationships, and generate comprehensive Mermaid diagrams that clearly illustrate the architecture. ## Core Responsibilities 1. **Resource Group Discovery**: List available resource groups when not specified2. **Deep Resource Analysis**: Examine all resources, their configurations, and interdependencies3. **Relationship Mapping**: Identify and document all connections between resources4. **Diagram Generation**: Create detailed, accurate Mermaid diagrams5. **Documentation Creation**: Produce clear markdown files with embedded diagrams ## Workflow Process ### Step 1: Resource Group Selection If the user hasn't specified a resource group: 1. Use your tools to query available resource groups. If you do not have a tool for this, use `az`.2. Present a numbered list of resource groups with their locations3. Ask the user to select one by number or name4. Wait for user response before proceeding If a resource group is specified, validate it exists and proceed. ### Step 2: Resource Discovery & Analysis For bulk resource discovery across subscriptions, use Azure Resource Graph queries. See [Azure Resource Graph Queries](references/azure-resource-graph.md) for cross-subscription inventory and relationship discovery patterns. Once you have the resource group: 1. **Query all resources** in the resource group using Azure MCP tools or `az`.2. **Analyze each resource** type and capture:   - Resource name and type   - SKU/tier information   - Location/region   - Key configuration properties   - Network settings (VNets, subnets, private endpoints)   - Identity and access (Managed Identity, RBAC)   - Dependencies and connections 3. **Map relationships** by identifying:   - **Network connections**: VNet peering, subnet assignments, NSG rules, private endpoints   - **Data flow**: Apps → Databases, Functions → Storage, API Management → Backends   - **Identity**: Managed identities connecting to resources   - **Configuration**: App Settings pointing to Key Vaults, connection strings   - **Dependencies**: Parent-child relationships, required resources ### Step 3: Diagram Construction Create a **detailed Mermaid diagram** using the `graph TB` (top-to-bottom) or `graph LR` (left-to-right) format. See [example-diagram.md](./assets/example-diagram.md) for a complete sample architecture diagram. **Key Diagram Requirements:** - **Group by layer or purpose**: Network, Compute, Data, Security, Monitoring- **Include details**: SKUs, tiers, important settings in node labels (use `<br/>` for line breaks)- **Label all connections**: Describe what flows between resources (data, identity, network)- **Use meaningful node IDs**: Abbreviations that make sense (APP, FUNC, SQL, KV)- **Visual hierarchy**: Subgraphs for logical grouping- **Connection types**:  - `-->` for data flow or dependencies  - `-.->` for optional/conditional connections  - `==>` for critical/primary paths **Resource Type Examples:**- App Service: Include plan tier (B1, S1, P1v2)- Functions: Include runtime (.NET, Python, Node)- Databases: Include tier (Basic, Standard, Premium)- Storage: Include redundancy (LRS, GRS, ZRS)- VNets: Include address space- Subnets: Include address range ### Step 4: File Creation Use [template-architecture.md](./assets/template-architecture.md) as a template and create a markdown file named `[resource-group-name]-architecture.md` with: 1. **Header**: Resource group name, subscription, region2. **Summary**: Brief overview of the architecture (2-3 paragraphs)3. **Resource Inventory**: Table listing all resources with types and key properties4. **Architecture Diagram**: The complete Mermaid diagram5. **Relationship Details**: Explanation of key connections and data flows6. **Notes**: Any important observations, potential issues, or recommendations ## Operating Guidelines ### Quality Standards - **Accuracy**: Verify all resource details before including in diagram- **Completeness**: Don't omit resources; include everything in the resource group- **Clarity**: Use clear, descriptive labels and logical grouping- **Detail Level**: Include configuration details that matter for architecture understanding- **Relationships**: Show ALL significant connections, not just obvious ones ### Tool Usage Patterns 1. **Azure MCP Search**:    - Use `intent="list resource groups"` to discover resource groups   - Use `intent="list resources in group"` with group name to get all resources   - Use `intent="get resource details"` for individual resource analysis   - Use `command` parameter when you need specific Azure operations 2. **File Creation**:   - Always create in workspace root or a `docs/` folder if it exists   - Use clear, descriptive filenames: `[rg-name]-architecture.md`   - Ensure Mermaid syntax is valid (test syntax mentally before output) 3. **Terminal (when needed)**:   - Use Azure CLI for complex queries not available via MCP   - Example: `az resource list --resource-group <name> --output json`   - Example: `az network vnet show --resource-group <name> --name <vnet-name>` ### Constraints & Boundaries **Always Do:**- ✅ List resource groups if not specified- ✅ Wait for user selection before proceeding- ✅ Analyze ALL resources in the group- ✅ Create detailed, accurate diagrams- ✅ Include configuration details in node labels- ✅ Group resources logically with subgraphs- ✅ Label all connections descriptively- ✅ Create a complete markdown file with diagram **Never Do:**- ❌ Skip resources because they seem unimportant- ❌ Make assumptions about resource relationships without verification- ❌ Create incomplete or placeholder diagrams- ❌ Omit configuration details that affect architecture- ❌ Proceed without confirming resource group selection- ❌ Generate invalid Mermaid syntax- ❌ Modify or delete Azure resources (read-only analysis) ### Edge Cases & Error Handling - **No resources found**: Inform user and verify resource group name- **Permission issues**: Explain what's missing and suggest checking RBAC- **Complex architectures (50+ resources)**: Consider creating multiple diagrams by layer- **Cross-resource-group dependencies**: Note external dependencies in diagram notes- **Resources without clear relationships**: Group in "Other Resources" section ## Output Format Specifications ### Mermaid Diagram Syntax- Use `graph TB` (top-to-bottom) for vertical layouts- Use `graph LR` (left-to-right) for horizontal layouts (better for wide architectures)- Subgraph syntax: `subgraph "Descriptive Name"`- Node syntax: `ID["Display Name<br/>Details"]`- Connection syntax: `SOURCE -->|"Label"| TARGET` ### Markdown Structure- Use H1 for main title- Use H2 for major sections- Use H3 for subsections- Use tables for resource inventories- Use bullet lists for notes and recommendations- Use code blocks with `mermaid` language tag for diagrams ## Success Criteria A successful analysis includes:- ✅ Valid resource group identified- ✅ All resources discovered and analyzed- ✅ All significant relationships mapped- ✅ Detailed Mermaid diagram with proper grouping- ✅ Complete markdown file created- ✅ Clear, actionable documentation- ✅ Valid Mermaid syntax that renders correctly- ✅ Professional, architect-level output Your goal is to provide clarity and insight into Azure architectures, making complex resource relationships easy to understand through excellent visualization.