进阶 📋 6 个步骤 第 536 / 538 篇

用 Azure MCP Server 3.0 把智能体接进你的云资源

Azure MCP Server 3.0 稳定版(2026-10-12 发布,历经 50 个 beta 迭代)让 Claude Code、Copilot、Cursor 等任意 MCP 客户端用自然语言管理你的 Azure 资源。本教程带你一行命令接入,用对话完成备份巡检、韧性评估、SRE 调查与 Terraform 改造建议,并补齐最小权限与只读护栏。

2026.10.16· 约 15 分钟阅读· 约 1825 字· ☁️ Azure MCP Server / 🤖 Claude Code

你有没有想过:不用记 az 命令、不用翻门户控制台,直接跟 AI 说"帮我看看生产订阅里哪些备份没开软删除",它就去查了?Azure MCP Server 干的就是这个——它是微软官方的 MCP Server,把 45+ 类 Azure 资源能力暴露成工具,你的编码智能体(Claude Code / Copilot / Cursor)连上后就能用自然语言操作云。3.0 版本新增了备份巡检、韧性管理、SRE Agent、Terraform 改造等工具集。本教程一步步带你接上并安全用好。

💡 适用人群:用 Azure 的开发者、运维、云原生团队;想给自家编码智能体接上云操作能力、又不想自己写一堆 az 封装的人。你只需一个 Azure 账号和能跑 Node.js 的本地环境。

Step 1:先搞懂它做什么、权限从哪来

1

Azure MCP Server 本身不存任何凭证。它用 DefaultAzureCredential,直接继承你本机 az login 的登录身份。换句话说:智能体能做什么,完全等于你当前 Azure 账号的 RBAC 权限。这一点决定了后面的所有安全考量。

它覆盖的能力(3.0 新版重点在打 * 的项):
· 资源组 / VM / Web App / 容器等基础资源查看与启停
· Azure Monitor:用 KQL 查日志分析工作区(杀手锏级能力)
· Key Vault、Cosmos DB、PostgreSQL、SQL 等数据面
· * Azure Backup:巡检保管库、策略、可保护项、恢复点
· * Azure Resilience:韧性目标、故障转移演练、就绪检查
· * Azure SRE Agent:列智能体、跑调查、管连接器、查知识
· * Terraform 工具:拉文档、导出已有资源为 IaC、校验计划
· * Advisor:按影响排成本建议、对比 VM 选项、给优化方案

权限即风险:如果你以订阅 Owner 登录,连上的智能体就拥有整订阅的写/删权。3.0 的"新工具"大多带写操作(改配置、触发故障转移、应用改造)。务必用最小权限身份登录,详见 Step 6。

Step 2:准备环境(Node + Azure CLI + 登录)

2

三条前置,缺一不可。Node 用 LTS 版即可;Azure CLI 用来拿身份;最后用 az login 登录你要操作的那个租户/订阅。

# 1) 确认 Node(LTS 即可,建议 20+)
node -v

# 2) 安装并登录 Azure CLI(已装可跳过)
#    macOS / Linux:
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
#    Windows(PowerShell):
winget install -e --id Microsoft.AzureCLI

# 3) 登录,并锁定要操作的订阅
az login
az account set --subscription <你的订阅ID>

# 多个租户时,可指定租户后再登录:
az login --tenant <租户ID>
🔑 身份是继承的:装好 Server 后,你不需要再填任何密钥。它读的就是你 az login 之后的凭据。操作完记得用不带 --tenant 的 az login 回到默认凭据上下文。

Step 3:一行接入 Claude Code(其他客户端同理)

3

最常用的是 Claude Code,一条命令就能注册。它会自动把 Server 加进配置并立即生效。

# Claude Code(推荐,一行注册)
claude mcp add azure -- npx -y @azure/mcp@latest server start

# 验证是否已注册
claude mcp list
# 应看到名为 azure 的条目,transport 为 stdio

如果你用的是 Cursor / VS Code / Windsurf / 其他 MCP 客户端,把下面这段合并进对应配置文件后重启即可:

{
  "mcpServers": {
    "azure": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start"]
    }
  }
}

@latest 每次拉最新版:npx 会 aggressively 缓存,升级有时不即时生效。想强制刷新时清缓存:rm -rf ~/.npm/_npx(路径以你的 npm 缓存为准)后再启动。server start 子命令是 3.0 推荐写法,旧文档里的无子命令写法在部分版本已弃用。

Step 4:验证连接真的打通了

4

别急着干活,先确认工具集加载成功。在客户端里用最轻量的只读问句试探:

# 在 Claude Code / Copilot 会话里直接说:
"列出我当前订阅下的所有资源组"
"列出订阅 <ID> 里的 SRE 智能体"

# 期望:返回资源组 / 智能体名称、位置、状态
# 若看到 azure_* 或 sreagent_* 前缀的工具被调用并返回结果 = 连接正常
🚦 验证优先级:先问"列资源组"这类纯只读问题。能列出 = 身份与网络通了;报权限错 = 你的账号在该订阅没有 Reader。报"找不到工具" = Server 没注册成功,回到 Step 3 重查 claude mcp list。

Step 5:上手 3.0 新工具集(用对话干活)

5

连接正常后,下面这些 3.0 新能力直接用自然语言触发。每条都是"说人话 → 智能体调对应工具"。

# 备份巡检:哪些保管库没开软删除 / 不可变?
"检查订阅里所有 Recovery Services 保管库的备份保护情况,
 列出未启用软删除的项"

# 韧性评估:故障转移演练就绪吗?
"对资源组 prod-rg 做就绪检查,告诉我故障转移演练是否就绪"

# SRE 调查:生产 API 延迟为什么高?
"在 SRE Agent 上创建一个线程,调查生产 API 延迟升高的原因"

# Terraform 改造:把现有资源导出为 IaC 再评估变更
"把资源组 legacy-rg 的资源用 aztfexport 导出,
 再用 conftest 校验计划是否合规"

# 成本优化:哪台 VM 该缩配?
"按年度节省额给这个订阅的 VM  resize 建议排个序"

写操作要人审:故障转移、应用 IaC 改造、删软删除项这些都是不可逆或高风险动作。Advisor 的"apply"类工具返回的是改造建议规则而非直接改线上资源——不要把建议当成已执行。真正要改生产,请走你既有的审批流程。

Step 6:最小权限 + 只读护栏(安全收尾)

6

这是最重要的一步。默认情况下 Server 拥有你登录身份的全部权限,必须收窄。

# 1) 不要以 Owner 登录。新建一个最小权限身份(示例:仅 Reader + 备份读取)
az role assignment create --assignee <你的对象ID> \
  --role "Reader" --scope /subscriptions/<ID>

# 2) 关闭遥测(默认开启,会收集使用数据)
export AZURE_MCP_COLLECT_TELEMETRY=false

# 3) 把暴露范围收窄到只读命名空间
#    (具体字段名随版本演进,以官方 README 为准:
#     常见做法是启用 readOnly 模式、用 enabledServices 限定命名空间)
#    示例思路(字段以官方文档当前形态为准):
#    npx -y @azure/mcp@latest server start --read-only
🛡️ 三条护栏口诀:① 用专用最小权限账号登录,绝不 Owner;② 不需要写能力时开只读模式;③ 关掉遥测。SRE Agent 还需单独赋 SRE Agent Administrator 数据面角色——只在确实需要时才给,且尽量缩到单个智能体资源范围。

常见问题

现象处理
客户端报"找不到 azure 工具"Server 没注册成功。跑 claude mcp list 看是否出现;没有就重跑 Step 3 的注册命令。
提示权限不足 / 列不出资源当前登录身份在该订阅没有 Reader。换最小权限账号登录,或确认 az account set 的订阅 ID 正确。
新版本工具用不上 / 行为不对npx 缓存了旧版。清 ~/.npm/_npx 缓存后重启客户端再试。
智能体动了我不该让它动的资源说明登录身份权限过大。立刻改用最小权限账号,并开启只读模式(见 Step 6)。
← 返回教程中心