mcpField
A
azure-resource-lookup

azure-resource-lookup

公式
github.com/microsoftクラウド・DevOps1.6k569.1k 回インストール今日更新
リポジトリ

azure-resource-lookup について

azure-resource-lookup は、サブスクリプションとリソースグループをまたいで Azure リソースを一覧表示、検索、探索するエージェントスキルです。専用の MCP ツールで対象の種類を扱えない場合は、Azure Resource Graph でクエリを実行します。

主な機能

  1. 01サブスクリプションとリソースグループをまたぐリソースインベントリの照会
  2. 02Azure Resource Graph 向け KQL クエリの生成
  3. 03対応する専用 MCP ツールへのルーティング
  4. 04孤立リソースやタグ未設定のリソースの検出
  5. 05クエリのスコープ指定と出力の整形

活用シーン

  1. 01サブスクリプション内の Web アプリやコンテナーアプリなどの一覧表示
  2. 02未接続のディスクや未使用の NIC などの孤立リソースの検出
  3. 03リソースのタグ監査や状態による絞り込み

MCP 対応

このスキルは extension_cli_generate などの Azure MCP ツールで az graph query コマンドを生成し、サブスクリプションとリソースグループの一覧ツールで検索範囲を絞り込みます。

インストール

コマンドをコピーしてターミナルで実行します。

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

インストール後、Claude Code で/azure-resource-lookupを入力して読み込まれたか確認します。

同梱ファイルreferences/azure-resource-graph.md

詳細

Azure Resource Lookup

サブスクリプションとリソースグループをまたいで、あらゆる種類の Azure リソースを一覧表示、検索、検出します。専用の MCP ツールでは対応できないリソースの種類について、高速で横断的なクエリには Azure Resource Graph(ARG)を使用します。

このスキルを使用する場面

ユーザーが次のことを求めている場合に、このスキルを使用します。

  • あらゆる種類のリソース(VM、Web アプリ、ストレージアカウント、コンテナーアプリ、データベースなど)を一覧表示する
  • 特定のサブスクリプションまたはリソースグループ内のリソースを表示する
  • 複数のサブスクリプションまたはリソースの種類をまたいでクエリする
  • 孤立したリソース(未接続のディスク、未使用の NIC、アイドル状態の IP)を検索する
  • 必須タグや構成が不足しているリソースを検出する
  • 複数の種類にまたがるリソースインベントリを取得する
  • 特定の状態(異常、プロビジョニング失敗、停止中)にあるリソースを検索する
  • 「自分が持っているリソースは何ですか?」または「Azure リソースを表示してください」という質問に回答する
  • Web アプリ、Web サイト、App Service を一覧表示する

⚠️ 警告: App Service / Web Apps には、専用の MCP list コマンドがありません。「Web サイトを一覧表示して」「Web アプリを一覧表示して」「App Service を一覧表示して」などのプロンプトは、Azure Resource Graph を使用するため、必ずこのスキルに振り分けてください。

💡 ヒント: 単一のリソースの種類に関するクエリでは、まず専用の MCP ツールで対応できるか確認してください(下記のルーティング表を参照)。該当するツールがない場合は、Azure Resource Graph を使用します。

クイックリファレンス

プロパティ値
クエリ言語KQL(Kusto Query Language のサブセット)
CLI コマンドaz graph query -q "<KQL>" -o table
拡張機能az extension add --name resource-graph
MCP ツールaz graph query の意図を指定した extension_cli_generate
最適な用途サブスクリプションをまたぐクエリ、孤立したリソース、タグの監査

MCP ツール

ツール目的使用する場面
extension_cli_generateaz graph query コマンドを生成する主なツール — ユーザーの意図から ARG クエリを生成する
mcp_azure_mcp_subscription_list利用可能なサブスクリプションを一覧表示するクエリの前にサブスクリプションの範囲を確認する
mcp_azure_mcp_group_listリソースグループを一覧表示するクエリの範囲を絞り込む

ワークフロー

ステップ 1:専用の MCP ツールを確認する

単一のリソースの種類に関するクエリでは、専用の MCP ツールで対応できるか確認します。

リソースの種類MCP ツール対応範囲
仮想マシンcompute✅ 全面的 — 一覧表示、詳細、サイズ
ストレージアカウントstorage✅ 全面的 — アカウント、BLOB、テーブル
Cosmos DBcosmos✅ 全面的 — アカウント、データベース、クエリ
Key Vaultkeyvault⚠️ 部分的 — シークレット/キーのみ。Vault の一覧表示には非対応
SQL データベースsql⚠️ 部分的 — リソースグループ名が必要
コンテナーレジストリacr✅ 全面的 — レジストリの一覧表示
Kubernetes(AKS)aks✅ 全面的 — クラスター、ノードプール
App Service / Web Appsappservice❌ 一覧表示コマンドなし — ARG を使用
Container Apps—❌ MCP ツールなし — ARG を使用
Event Hubseventhubs✅ 全面的 — 名前空間、ハブ
Service Busservicebus✅ 全面的 — キュー、トピック

専用ツールが利用可能で、十分な範囲に対応している場合は、それを使用します。それ以外の場合は、ステップ 2 に進みます。

ステップ 2:ARG クエリを生成する

extension_cli_generate を使用して、az graph query コマンドを作成します。

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

一般的な KQL パターンについては、Azure Resource Graph クエリパターンを参照してください。

ステップ 3:結果を実行して整形する

生成したコマンドを実行します。--query(JMESPath)を使用して出力を整形します。

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

結果数を制限するには --first N を使用します。範囲を指定するには --subscriptions を使用します。

エラー処理

エラー原因対処方法
resource-graph extension not found拡張機能がインストールされていませんaz extension add --name resource-graph
AuthorizationFailedサブスクリプションへの読み取りアクセス権がありませんRBAC を確認してください。Reader ロールが必要です
クエリで BadRequest が発生するKQL 構文が無効ですテーブル名と列名を確認してください。大文字と小文字を区別せずに型を照合するには =~ を使用してください
結果が空です一致するリソースがないか、スコープが誤っています--subscriptions フラグを確認し、リソースの種類の表記を確認してください

制約

  • ✅ 必ず 大文字と小文字を区別せずに型を照合するには =~ を使用してください(型は小文字です)
  • ✅ 必ず 大規模なテナントでは、--subscriptions または --first を指定してクエリのスコープを設定してください
  • ✅ 優先して 単一のリソース種類を対象にするクエリには、専用の MCP ツールを使用してください
  • ❌ 決して リアルタイム監視に ARG を使用しないでください(データには多少の遅延があります)
  • ❌ 決して ARG を通じて変更を試みないでください(読み取り専用です)

コメント