azure-resource-lookup

bởi Azure

Liệt kê, tìm kiếm và hiển thị tài nguyên Azure. Trả lời các truy vấn như "liệt kê máy ảo của tôi", "hiển thị tài khoản lưu trữ của tôi", "tìm ứng dụng container" và các truy vấn tương tự cho bất kỳ loại tài nguyên Azure nào.

npx skills add https://github.com/microsoft/github-copilot-for-azure --skill azure-resource-lookup

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)

Thêm skills từ Azure

azure-cost-optimization
Azure
Xác định và định lượng các khoản tiết kiệm chi phí trên các đăng ký Azure bằng cách phân tích chi phí thực tế, số liệu sử dụng và đưa ra các khuyến nghị tối ưu hóa có thể thực hiện được.
azure-hosted-copilot-sdk
Azure
Xây dựng và triển khai các ứng dụng GitHub Copilot SDK lên Azure.
azure-observability
Azure
Các dịch vụ quan sát Azure bao gồm Azure Monitor, Application Insights, Log Analytics, Alerts và Workbooks. Cung cấp số liệu, APM, theo dõi phân tán, truy vấn KQL và báo cáo tương tác.
azure-rbac
Azure
Giúp người dùng tìm vai trò Azure RBAC phù hợp cho một định danh với quyền truy cập tối thiểu, sau đó tạo lệnh CLI và mã Bicep để gán vai trò đó.
azure-messaging
Azure
Khắc phục sự cố và giải quyết các vấn đề với Azure Messaging SDKs cho Event Hubs và Service Bus. Bao gồm lỗi kết nối, lỗi xác thực, vấn đề xử lý tin nhắn và vấn đề cấu hình SDK.
azure-resource-visualizer
Azure
Phân tích các nhóm tài nguyên Azure và tạo sơ đồ kiến trúc Mermaid chi tiết hiển thị mối quan hệ giữa các tài nguyên riêng lẻ.
azure-ai
Azure
Sử dụng cho Azure AI: Tìm kiếm, Giọng nói, OpenAI, Trí tuệ Tài liệu. Hỗ trợ tìm kiếm, tìm kiếm vector/kết hợp, chuyển giọng nói thành văn bản, chuyển văn bản thành giọng nói, phiên âm, OCR.
azure-kusto
Azure
Truy vấn và phân tích dữ liệu trong Azure Data Explorer (Kusto/ADX) bằng KQL cho phân tích nhật ký, đo từ xa và phân tích chuỗi thời gian.