microsoft/azure-skills · Official

azure-resource-lookup

List, find, and show Azure resources across subscriptions or resource groups. Handles prompts like \"list the websites in my subscription\", \"list my web apps\", \"show my app services\", \"list virtual machines\", \"list my VMs\", \"show storage accounts\", \"find container apps\", and \"what resources do I have\". USE FOR: list websites, list web apps, list app services, show websites in subscription, resource inventory, find resources by tag, tag analysis, orphaned resource discovery (not f…

All-time #55 Trending #180 First seen Feb 18, 2026
8-week activity · all time api

Installation

$ npx skills add microsoft/azure-skills --skill azure-resource-lookup

Summary

  • Fast discovery and inventory of Azure resources across subscriptions using Resource Graph queries.
  • Queries any Azure resource type (VMs, storage accounts, web apps, container apps, Key Vaults, etc.) across subscriptions and resource groups in a single command Supports cross-cutting searches for orphaned resources, missing tags, unhealthy states, and resource inventory counts Routes single-resource-type queries to dedicated MCP tools when available; falls back to Azure Resource Graph for broader or unsupported resource types Uses KQL (Kusto Query Language) for flexible filtering, with built-in error handling for authorization, syntax, and scope issues

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Security audits

Partner security reviews for this skill.

agent-trust-hub SAFE

Analyzed Apr 29, 2026

This Microsoft-authored skill provides a set of tools for querying Azure resources across subscriptions using Azure Resource Graph and official Microsoft CLI tools. It is a legitimate administrative utility focused on metadata discovery and follows standard security practices for cloud management.

snyk LOW

Analyzed Apr 29, 2026

No issues detected.

socket Score 0.9000 · 0 alerts

Analyzed Apr 29, 2026

  • license 1
  • maintenance 1
  • quality 0.9
  • supply chain 1
  • vulnerability 1

0 alerts

Also in this package

Other skills from microsoft/azure-skills · top by installs.

npx skills add microsoft/azure-skills

Browse all from microsoft/azure-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1.5K
License MIT
Default branch main
Open issues 9
Last push Sep 10, 2026
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.2.1
LicenseMIT
More metadata
author
Microsoft
version
1.2.1

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 5,526 B
  • docs SUMMARY.md 772 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 567,800 installs

SKILL.md

Azure Resource Lookup

List, find, and discover Azure resources of any type across subscriptions and resource groups. Use Azure Resource Graph (ARG) for fast, cross-cutting queries when dedicated MCP tools don't cover the resource type.

When to Use This Skill

Use this skill when the user wants to:

  • List resources of any type (VMs, web apps, storage accounts, container apps, databases, etc.)
  • Show resources in a specific subscription or resource group
  • Query resources across multiple subscriptions or resource types
  • Find orphaned resources (unattached disks, unused NICs, idle IPs)
  • Discover resources missing required tags or configurations
  • Get a resource inventory spanning multiple types
  • Find resources in a specific state (unhealthy, failed provisioning, stopped)
  • Answer "what resources do I have?" or "show me my Azure resources"
  • List web apps, websites, or App Services

⚠️ Warning: App Service / Web Apps have no dedicated MCP list command. Prompts like "list websites", "list web apps", or "list app services" must route through this skill to use Azure Resource Graph.

💡 Tip: For single-resource-type queries, first check if a dedicated MCP tool can handle it (see routing table below). If none exists, use Azure Resource Graph.

Quick Reference

Property Value
Query Language KQL (Kusto Query Language subset)
CLI Command az graph query -q "<KQL>" -o table
Extension az extension add --name resource-graph
MCP Tool extensioncligenerate with intent for az graph query
Best For Cross-subscription queries, orphaned resources, tag audits

MCP Tools

Tool Purpose When to Use
extensioncligenerate Generate az graph query commands Primary tool — generate ARG queries from user intent
mcpazuremcpsubscriptionlist List available subscriptions Discover subscription scope before querying
mcpazuremcpgrouplist List resource groups Narrow query scope

Workflow

Step 1: Check for a Dedicated MCP Tool

For single-resource-type queries, check if a dedicated MCP tool can handle it:

Resource Type MCP Tool Coverage
Virtual Machines compute ✅ Full — list, details, sizes
Storage Accounts storage ✅ Full — accounts, blobs, tables
Cosmos DB cosmos ✅ Full — accounts, databases, queries
Key Vault keyvault ⚠️ Partial — secrets/keys only, no vault listing
SQL Databases sql ⚠️ Partial — requires resource group name
Container Registries acr ✅ Full — list registries
Kubernetes (AKS) aks ✅ Full — clusters, node pools
App Service / Web Apps appservice ❌ No list command — use ARG
Container Apps ❌ No MCP tool — use ARG
Event Hubs eventhubs ✅ Full — namespaces, hubs
Service Bus servicebus ✅ Full — queues, topics

If a dedicated tool is available with full coverage, use it. Otherwise proceed to Step 2.

Step 2: Generate the ARG Query

Use extensioncligenerate to build the az graph query command:

mcp_azure_mcp_extension_cli_generate
  intent: "query Azure Resource Graph to <user's request>"
  cli-type: "az"

See [Azure Resource Graph Query Patterns](references/azure-resource-graph.md) for common KQL patterns.

Step 3: Execute and Format Results

Run the generated command. Use --query (JMESPath) to shape output:

az graph query -q "<KQL>" --query "data[].{name:name, type:type, rg:resourceGroup}" -o table

Use --first N to limit results. Use --subscriptions to scope.

Error Handling

Error Cause Fix
resource-graph extension not found Extension not installed az extension add --name resource-graph
AuthorizationFailed No read access to subscription Check RBAC — need Reader role
BadRequest on query Invalid KQL syntax Verify table/column names; use =~ for case-insensitive type matching
Empty results No matching resources or wrong scope Check --subscriptions flag; verify resource type spelling

Constraints

  • Always use =~ for case-insensitive type matching (types are lowercase)
  • Always scope queries with --subscriptions or --first for large tenants
  • Prefer dedicated MCP tools for single-resource-type queries
  • Never use ARG for real-time monitoring (data has slight delay)
  • Never attempt mutations through ARG (read-only)