🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx @anthropic-ai/skills install microsoft/azure-skills/azure-resource-lookup
💡 提示:需要 Node.js 和 NPM
Azure 资源查找
列出、查找和发现跨订阅和资源组的任何类型的 Azure 资源。当专用 MCP 工具无法覆盖资源类型时,使用 Azure Resource Graph (ARG) 进行快速的跨区域查询。
何时使用此技能
当用户希望执行以下操作时,使用此技能:
- 列出任何类型的资源(虚拟机、Web 应用、存储帐户、容器应用、数据库等)
- 显示特定订阅或资源组中的资源
- 跨多个订阅或资源类型查询资源
- 查找孤立资源(未附加的磁盘、未使用的网卡、空闲 IP)
- 发现缺少所需标签或配置的资源
- 获取跨多种类型的资源清单
- 查找处于特定状态的资源(不健康、预配失败、已停止)
- 回答“我有哪些资源?”或“显示我的 Azure 资源”
💡 提示:对于单一资源类型的查询,首先检查是否有专用的 MCP 工具可以处理(参见下面的路由表)。如果没有,则使用 Azure Resource Graph。
快速参考
| 属性 | 值 |
|---|---|
| 查询语言 | KQL (Kusto 查询语言子集) |
| CLI 命令 | az graph query -q "<KQL>" -o table |
| 扩展 | az extension add --name resource-graph |
| MCP 工具 | 意图为 az graph query 的 extension_cli_generate |
| 最适合 | 跨订阅查询、孤立资源、标签审计 |
MCP 工具
| 工具 | 用途 | 何时使用 |
|---|---|---|
extension_cli_generate |
生成 az graph query 命令 |
主要工具 — 根据用户意图生成 ARG 查询 |
mcp_azure_mcp_subscription_list |
列出可用的订阅 | 在查询前发现订阅范围 |
mcp_azure_mcp_group_list |
列出资源组 | 缩小查询范围 |
工作流程
步骤 1:检查是否有专用 MCP 工具
对于单一资源类型的查询,检查是否有专用的 MCP 工具可以处理:
| 资源类型 | MCP 工具 | 覆盖范围 |
|---|---|---|
| 虚拟机 | compute |
✅ 完整 — 列出、详情、大小 |
| 存储帐户 | storage |
✅ 完整 — 帐户、Blob、表 |
| Cosmos DB | cosmos |
✅ 完整 — 帐户、数据库、查询 |
| Key Vault | keyvault |
⚠️ 部分 — 仅限密码/密钥,无法列出保管库 |
| SQL 数据库 | sql |
⚠️ 部分 — 需要资源组名称 |
| 容器注册表 | acr |
✅ 完整 — 列出注册表 |
| Kubernetes (AKS) | aks |
✅ 完整 — 集群、节点池 |
| 应用服务 / Web 应用 | appservice |
❌ 无列出命令 — 使用 ARG |
| 容器应用 | — | ❌ 无 MCP 工具 — 使用 ARG |
| 事件中心 | eventhubs |
✅ 完整 — 命名空间、中心 |
| 服务总线 | servicebus |
✅ 完整 — 队列、主题 |
如果有覆盖范围完整的专用工具可用,请使用它。否则,继续执行步骤 2。
步骤 2:生成 ARG 查询
使用 extension_cli_generate 构建 az graph query 命令:
mcp_azure_mcp_extension_cli_generate
intent: "查询 Azure Resource Graph 以 <用户的请求>"
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 — 需要“读取者”角色 |
BadRequest on query |
KQL 语法无效 | 验证表/列名;对于不区分大小写的类型匹配,使用 =~ |
| 空结果 | 没有匹配的资源或范围错误 | 检查 --subscriptions 标志;验证资源类型拼写 |
限制
- ✅ 始终使用
=~进行不区分大小写的类型匹配(类型为小写) - ✅ 始终使用
--subscriptions或--first限定大型租户的查询范围 - ✅ 优先使用专用 MCP 工具进行单一资源类型的查询
- ❌ 切勿使用 ARG 进行实时监控(数据有轻微延迟)
- ❌ 切勿尝试通过 ARG 进行变更操作(只读)
📄 原始文档
完整文档(英文):
https://skills.sh/microsoft/azure-skills/azure-resource-lookup
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)