К основному содержанию
скилл

azure-resource-lookup — скилл для Claude Code: инвентаризация

Перечисляет и находит ресурсы Azure по подпискам и группам через Azure Resource Graph. Нужен, когда надо увидеть, что вообще развёрнуто.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add microsoft/skills --skill azure-resource-lookup -a claude-code
Открыть на GitHub

Что делает azure-resource-lookup

Скилл закрывает запросы вида «покажи мои веб-приложения», «список виртуальных машин», «какие ресурсы у меня есть». Работает через Azure Resource Graph — язык запросов KQL, команда az graph query -q "<KQL>" -o table. Сначала скилл проверяет, есть ли для нужного типа ресурса отдельный MCP-инструмент: для виртуальных машин, хранилищ, Cosmos DB, AKS и Service Bus он полный, а вот у App Service и Container Apps команды списка нет, поэтому такие запросы идут напрямую в ARG.

Запросы собираются инструментом extension_cli_generate, вывод можно сузить через --query (JMESPath), --first N и --subscriptions. Отдельно скилл ищет забытые ресурсы: непривязанные диски, неиспользуемые сетевые интерфейсы, ресурсы без обязательных тегов.

Заранее понадобится расширение az extension add --name resource-graph и роль Reader на подписку, иначе запрос упадёт с AuthorizationFailed. ARG только читает: развернуть или изменить что-то через него нельзя, для этого есть azure-deploy. И для мониторинга в реальном времени он не годится — данные приходят с задержкой.

Какие задачи решает

  • собрать инвентаризацию ресурсов по нескольким подпискам
  • найти непривязанные диски и простаивающие IP-адреса
  • вычислить ресурсы без обязательных тегов
  • посчитать ресурсы по типам в одной группе
  • показать веб-приложения и Container Apps, для которых нет отдельной MCP-команды

Примеры запросов агенту

  • покажи все веб-приложения в моей подписке
  • найди непривязанные диски во всех подписках
  • какие ресурсы без тега owner есть в группе rg-prod

Как установить azure-resource-lookup

1Через Skills CLI (Vercel)

npx skills add microsoft/skills --skill azure-resource-lookup -a claude-code

2Вручную: положить файлы

~/.claude/skills/azure-resource-lookup/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/azure-resource-lookup/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о azure-resource-lookup

Как установить azure-resource-lookup в Claude?

Выполните npx skills add microsoft/skills --skill azure-resource-lookup -a claude-code. Скилл встанет в ~/.claude/skills/azure-resource-lookup/SKILL.md.

Что делает azure-resource-lookup?

Перечисляет и ищет ресурсы Azure любого типа по подпискам и группам, в том числе через Azure Resource Graph, когда отдельного MCP-инструмента для типа нет.

Чем этот скилл не занимается?

Он только читает. Развёртывание и изменения ресурсов — задача azure-deploy, оптимизация затрат — cost-optimization из плагина azure-cost.

Исходный текст

SKILL.md · MIT
---
name: azure-resource-lookup
description: "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."
license: MIT
metadata:
  author: Microsoft
  version: "1.2.3"
---

# 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** | `extension_cli_generate` with intent for `az graph query` |
| **Best For** | Cross-subscription queries, orphaned resources, tag audits |

## MCP Tools

| Tool | Purpose | When to Use |
|------|---------|-------------|
| `extension_cli_generate` | Generate `az graph query` commands | Primary tool — generate ARG queries from user intent |
| `mcp_azure_mcp_subscription_list` | List available subscriptions | Discover subscription scope before querying |
| `mcp_azure_mcp_group_list` | 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 `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](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:

```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

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

© Microsoft · MIT · microsoft/skills

Похожие скиллы

Всё по теме «Облака: AWS, Azure, GCP» →
azure-resource-health-diagnose официальный github Скилл проверяет состояние ресурса Azure, ищет причины сбоев по логам и телеметрии и предлагает план исправлений. Пригодится, когда нужно разобраться с конкретным ресурсом. 8 700установок analyzing-azure-activity-logs-for-threats mahipal Гоняет KQL-запросы по журналам Azure Monitor и sign-in logs, чтобы найти подозрительные админские операции и аномальные входы. CX Codex +1 471установок azure-monitor-audit devops-skills Настраивает аудит подписки Azure через Monitor, Log Analytics и журнал действий. Помогает собирать логи для SOC 2, HIPAA, PCI DSS и ISO 27001. CX Codex +1 313установок azure-well-architected MicrosoftDocs Скилл с чек-листами и рекомендациями Azure Well-Architected: помогает проектировать и проверять нагрузки Azure прямо в чате с агентом. CX Codex +1 640установок azure-architecture MicrosoftDocs Скилл с подборкой референсных архитектур, паттернов и руководств по миграции в Azure. Пригодится, когда проектируешь RAG, AKS или переезд с mainframe. CX Codex +1 413установок azure-keyvault devops-skills Скилл для работы с Azure Key Vault: хранит секреты, ключи и сертификаты, настраивает доступ и подключение к сервисам Azure. CX Codex +1 321установок

Из того же набора64

Весь набор →
azure-keyvault-secrets-rust Подсказывает агенту, как читать и записывать секреты в Azure Key Vault из Rust через официальный крейт azure_security_keyvault_secrets. 6установок frontend-ui-dark-ts Скилл для сборки тёмных React-интерфейсов на Tailwind CSS: тема, glassmorphism, анимации Framer Motion. Пригодится для дашбордов и админок. 5установок pydantic-models-py Скилл задаёт структуру моделей Pydantic v2 по шаблону из пяти вариантов: Base, Create, Update, Response и InDB. Пригодится, когда нужны схемы запросов и ответов API. 5установок zustand-store-ts Скилл задаёт шаблон стора Zustand на TypeScript: отдельные типы для состояния и действий, middleware subscribeWithSelector, селекторы. 3установок azure-prepare Готовит проект к деплою через Azure Developer CLI: пишет azure.yaml, инфраструктуру на Bicep или Terraform и Dockerfile. Нужен, когда вы уже выбрали azd. 2установок azure-search-documents-py Подсказывает агенту, как писать код для Azure AI Search на Python: векторный и гибридный поиск, семантический ранжинг, индексы. 2установок azure-eventhub-py Скилл для работы с Azure Event Hubs из Python: отправка событий, чтение партиций, чекпоинты в blob-хранилище. Пригодится, когда агент пишет продюсеров и консьюмеров. 2установок azure-cosmos-py Подсказывает агенту, как работать с Azure Cosmos DB через Python SDK: CRUD документов, запросы, контейнеры, ключи разделов. 2установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой