New to Claude Skills? Learn how to install them โ†’

microsoft on GitHub

Azure Resource Lookup

OfficialFree

Quickly find and list Azure resources across subscriptions.

by microsoft1.4k stars on microsoft/azure-skills
1 views
Updated Aug 10, 2026
Get this skill

Free ยท Opens the source repo

What Azure Resource Lookup does

Azure Resource Lookup is a powerful tool designed to help users efficiently list and discover Azure resources across multiple subscriptions and resource groups. It leverages the Azure Resource Graph (ARG) to perform fast, cross-cutting queries, making it particularly useful when dedicated MCP tools are not available for specific resource types. This skill is ideal for developers and IT professionals who need to manage and audit their Azure environments effectively.

With Azure Resource Lookup, users can execute queries to list various resource types, including virtual machines, web apps, storage accounts, and databases. The skill supports complex queries across multiple subscriptions, enabling users to gain insights into their resource inventory and identify orphaned resources that may incur unnecessary costs. It also allows for tag analysis, helping users ensure compliance with organizational tagging policies.

This skill is especially beneficial for those who frequently need to answer questions like "What resources do I have?" or "Show me my Azure resources." By providing a streamlined way to access and visualize resource data, Azure Resource Lookup enhances productivity and resource management in Azure environments. Users can also take advantage of the Kusto Query Language (KQL) to customize their queries for more specific needs.

However, it's important to note that Azure Resource Lookup is not intended for deploying or modifying resources, nor is it suitable for cost analysis. For such tasks, users should utilize dedicated tools like azure-deploy or azure-cost. This skill is specifically focused on resource discovery and inventory management, making it a valuable addition to the toolkit of anyone working with Azure.

When to use it

Use Azure Resource Lookup when you need to inventory resources, find orphaned resources, or perform cross-subscription queries.

When not to use it

Do not use this skill for deploying resources or cost optimization; dedicated tools are better suited for those tasks.

What you can build with it

Inventory Resources Across Subscriptions

Quickly generate a comprehensive list of all Azure resources across multiple subscriptions to understand your cloud footprint.

Identify Orphaned Resources

Use the skill to find unattached disks and unused network interfaces, helping to clean up your Azure environment.

Tag Compliance Checks

Run queries to discover resources missing required tags, ensuring your organization adheres to tagging policies.

How to install Azure Resource Lookup

View source

1. Install with the skills CLI

npx skills add microsoft/azure-skills/azure-resource-lookup --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by microsoft

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

PropertyValue
Query LanguageKQL (Kusto Query Language subset)
CLI Commandaz graph query -q "<KQL>" -o table
Extensionaz extension add --name resource-graph
MCP Toolextension_cli_generate with intent for az graph query
Best ForCross-subscription queries, orphaned resources, tag audits

MCP Tools

ToolPurposeWhen to Use
extension_cli_generateGenerate az graph query commandsPrimary tool โ€” generate ARG queries from user intent
mcp_azure_mcp_subscription_listList available subscriptionsDiscover subscription scope before querying
mcp_azure_mcp_group_listList resource groupsNarrow 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 TypeMCP ToolCoverage
Virtual Machinescomputeโœ… Full โ€” list, details, sizes
Storage Accountsstorageโœ… Full โ€” accounts, blobs, tables
Cosmos DBcosmosโœ… Full โ€” accounts, databases, queries
Key Vaultkeyvaultโš ๏ธ Partial โ€” secrets/keys only, no vault listing
SQL Databasessqlโš ๏ธ Partial โ€” requires resource group name
Container Registriesacrโœ… Full โ€” list registries
Kubernetes (AKS)aksโœ… Full โ€” clusters, node pools
App Service / Web AppsappserviceโŒ No list command โ€” use ARG
Container Appsโ€”โŒ No MCP tool โ€” use ARG
Event Hubseventhubsโœ… Full โ€” namespaces, hubs
Service Busservicebusโœ… 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 extension_cli_generate 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 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

ErrorCauseFix
resource-graph extension not foundExtension not installedaz extension add --name resource-graph
AuthorizationFailedNo read access to subscriptionCheck RBAC โ€” need Reader role
BadRequest on queryInvalid KQL syntaxVerify table/column names; use =~ for case-insensitive type matching
Empty resultsNo matching resources or wrong scopeCheck --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)

Frequently asked questions about Azure Resource Lookup

Similar skills