Add azure-resource-visualizer skill
Pull Request Checklist
- [x] I have read and followed the CONTRIBUTING.md guidelines.
- [x] My contribution adds a new instruction, prompt, or chat mode file in the correct directory.
- [x] The file follows the required naming convention.
- [x] The content is clearly structured and follows the example format.
- [x] I have tested my instructions, prompt, or chat mode with GitHub Copilot.
- [x] I have run
npm startand verified thatREADME.mdis up to date.
Description
This change adds a skill that can analyze the resources within an Azure resource group, determine the relationships between them, and then generate a Markdown file containing the relevant details. The Markdown file includes a Mermaid diagram showing the relationships.
Type of Contribution
- [ ] New instruction file.
- [ ] New prompt file.
- [ ] New chat mode file.
- [ ] New collection file.
- [ ] Update to existing instruction, prompt, chat mode, or collection.
- [x] Other (please specify): New skill.
Additional Notes
Here is an example diagram showing an MCP server hosted in Azure Functions:
graph TB
subgraph "Resource Group: rg-joke-mcp"
subgraph "Compute Layer - East US"
PLAN[App Service Plan<br/>ASP-rgjokemcp-67ea<br/>Tier: FlexConsumption FC1<br/>Max Instances: 100]
FUNC[Function App<br/>func-joke-mcp-9426<br/>Runtime: .NET 8 isolated<br/>Memory: 2048 MB<br/>Public Access: Disabled]
MI[System Assigned<br/>Managed Identity<br/>Principal ID: 85813040...]
end
subgraph "Storage Layer"
ST1[Storage Account<br/>stjokemcp6331<br/>East US<br/>Type: Standard LRS<br/>No Public Blob Access<br/>HTTPS Only]
ST2[Storage Account<br/>stjokemcp2522<br/>West US 2<br/>Type: Standard LRS<br/>No Public Blob Access<br/>HTTPS Only]
BLOB1[Blob Container<br/>app-package-funcjokemcp9426-*<br/>Function deployment package]
end
subgraph "Monitoring & Observability"
AI[Application Insights<br/>func-joke-mcp-9426<br/>Type: LogAnalytics<br/>Retention: 90 days]
LAW[Log Analytics Workspace<br/>DefaultWorkspace-*-EUS<br/>Centralized logs]
ALERT[Smart Detector Alert<br/>Failure Anomalies<br/>AI-powered detection]
end
subgraph "Event-Driven Infrastructure"
EG1[Event Grid System Topic<br/>stjokemcp6331-*<br/>Storage Events]
EG2[Event Grid System Topic<br/>stjokemcp2522-*<br/>Storage Events]
end
end
%% Compute relationships
FUNC -->|"Hosted on"| PLAN
FUNC -->|"Uses identity"| MI
%% Storage relationships
MI -->|"System Assigned Identity<br/>Blob access for deployment"| ST1
MI -->|"Potential access"| ST2
ST1 -->|"Contains"| BLOB1
BLOB1 -->|"Deployment source"| FUNC
%% Monitoring relationships
FUNC -->|"Sends telemetry"| AI
AI -->|"Writes logs to"| LAW
AI -->|"Triggers"| ALERT
FUNC -->|"Function logs"| LAW
%% Event Grid relationships
ST1 -->|"Emits storage events"| EG1
ST2 -->|"Emits storage events"| EG2
EG1 -.->|"Can trigger"| FUNC
EG2 -.->|"Can trigger"| FUNC
%% External access
USERS[External Users/Clients]
USERS -->|"HTTPS requests<br/>*.azurewebsites.net"| FUNC
classDef compute fill:#0078d4,stroke:#004578,color:#fff
classDef storage fill:#50e6ff,stroke:#0078d4,color:#000
classDef monitoring fill:#ff9900,stroke:#cc7a00,color:#000
classDef events fill:#68217a,stroke:#4a1755,color:#fff
classDef identity fill:#00bcf2,stroke:#008db3,color:#000
class PLAN,FUNC compute
class ST1,ST2,BLOB1 storage
class AI,LAW,ALERT monitoring
class EG1,EG2 events
class MI identity
By submitting this pull request, I confirm that my contribution abides by the Code of Conduct and will be licensed under the MIT License.
@digitarald I'm not sure what is needed to make the "Validate README.md" check happy. I've rebased my branch onto the latest main, run npm start locally (this generated no changes), and pushed the branch.