Azure Resource Lookup

作者 microsoft354361d83247MIT收錄於 2026年10月8日更新於 2026年10月8日

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 for cost analysis), unattached disks, count resources by type, cross-subscription lookup, and Azure Resource Graph queries. DO NOT USE FOR: deploying/changing resources (use azure-deploy), cost optimization (use cost-optimization from the optional azure-cost plugin), or non-Azure clouds.

精選僅含說明DevOps & Cloud
AI 產生的概覽

使用 Azure Resource Graph 查詢與 MCP 工具,跨訂閱列出和尋找 Azure 資源。

功能
此技能引導代理探索跨訂閱與資源群組的 Azure 資源,例如虛擬機器、Web 應用程式、儲存體帳戶和容器應用程式。對於單一資源類型查詢,它會優先使用專用的 MCP 工具;否則透過 az CLI 產生並執行 Azure Resource Graph 的 KQL 查詢。它也涵蓋標籤稽核、孤立資源探索、資源清冊以及常見查詢錯誤的處理。
適用情境
當使用者要求列出、顯示或尋找 Azure 資源時使用,例如列出網站、Web 應用程式、虛擬機器或儲存體帳戶,或詢問訂閱中有哪些資源。它也適合跨訂閱查詢、標籤分析和孤立資源探索。不適用於部署或變更資源、成本最佳化或非 Azure 雲端。
執行需求
需要 Azure CLI 與 resource-graph 擴充功能、對目標訂閱至少具備 Reader 權限的 Azure 認證,以及用於產生 CLI 命令和列出訂閱或資源群組的 MCP 工具。需要連線至 Azure 的網路存取。此技能不含指令碼,僅提供一份包含 KQL 查詢模式的參考文件。

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:

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

See Azure Resource Graph Query Patterns [blocked] for common KQL patterns.

Step 3: Execute and Format Results

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

bash
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)

來源與署名

來源:microsoft/skills位於.github/plugins/azure-skills/skills/azure-resource-lookup提交354361d

授權條款: MIT

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架