A

Azure CLI MCP服务器(Azure CLI MCP服务器允许LLM操作资源、修复错误和安全问题)

@jdubois/azure-cli-mcp
0 Stars 337 次浏览 jdubois 更新于 2026-08-23

一个包装了Azure CLI的MCP服务器。 由于大型语言模型(LLMs)非常擅长生成Azure CLI命令,这个服务器允许你的大型语言模型列出资源、更新/创建/删除资源、通过查看日志修复错误、解决安全问题等。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "azure-cli": {
      "args": [
        "-jar",
        "~/Downloads/azure-cli-mcp.jar"
      ],
      "command": "java"
    }
  }
}

服务介绍

Azure CLI MCP 服务器

这是一个 MCP 服务器,它封装了 Azure CLI,添加了一个漂亮的提示符以改进其工作方式,并将其暴露出来。

smithery 徽章

演示

使用 Claude Desktop 的简短 2 分钟演示

简短演示

使用 VS Code 的完整 18 分钟演示

完整演示

它能做什么?

它可以访问完整的 Azure CLI,因此它可以做 Azure CLI 能做的任何事情。以下是一些场景:

  • 列出您的资源并检查其配置。例如,您可以获取部署到 Azure OpenAI 的模型的速率限制。
  • 修复某些配置或安全问题。例如,您可以要求它保护一个 Blob 存储帐户。
  • 创建资源。例如,您可以要求它创建一个 Azure 容器应用实例、一个 Azure 容器注册表,并使用托管身份将它们连接起来。

使用它是否安全?

由于 MCP 服务器是由 LLM 驱动的,我们建议您小心并验证它生成的命令。然后,如果您使用的是像 Claude 3.7 或 GPT-4o 这样的优秀 LLM,它们在 Azure 方面有很好的训练数据,我们的经验非常好。

请阅读我们的 许可证,其中声明“软件按‘原样’提供,不附带任何形式的保证”,因此您使用此 MCP 服务器的风险自负。

它是否安全,我应该在远程服务器上运行它吗?

简短回答:

这个 MCP 服务器为您运行 az 命令,并可能被攻击者利用来运行其他任何命令。当前的实现,与大多数 MCP 服务器一样,目前仅支持 stio 传输:
它应该在您的本地机器上运行,使用您的 Azure CLI 凭据,就像您自己操作时一样。

未来,完全有可能让这个 MCP 服务器支持 http 传输和 Azure 令牌认证,这样不同的人就可以远程使用它。这是第二步,将在 MCP 规范和 SDK 更加稳定后完成。

我如何安装它?

该服务器可以在 Docker 容器中运行,也可以作为 Java 可执行 JAR 文件运行。

对于这两种选项,目前只有 stio 传输可用。http 传输将在以后提供。

使用 Docker 安装和配置服务器

创建一个 Azure 服务主体并设置 AZURE_CREDENTIALS 环境变量。您可以通过在终端中运行以下命令来完成此操作:

az ad sp create-for-rbac --name "azure-cli-mcp" --role contributor --scopes /subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group> --json-auth

这将使用指定的名称和角色创建一个新的服务主体,并以 JSON 格式输出凭据。

然后,您可以使用 Docker 运行服务器,使用以下命令。为了进行身份验证,请将 AZURE_CREDENTIALS 设置为前一个命令的输出。

docker run --rm -p 6273:6273 -e AZURE_CREDENTIALS="{"clientId":"....","clientSecret":"....",...}" -i ghcr.io/jdubois/azure-cli-mcp:latest

使用 VS Code

要从 VS Code 使用服务器:

  • 安装 GitHub Copilot
  • 使用命令面板安装此 MCP 服务器:MCP: Add Server...
    • 配置使用 stio 传输连接到服务器
    • 运行的命令是 docker run -i --rm -e AZURE_CREDENTIALS ghcr.io/jdubois/azure-cli-mcp:latest。你需要设置 AZURE_CREDENTIALS 环境变量为从服务主体创建中输出的 JSON,其中引号需要转义:请参见下面的完整且安全示例。
  • 通过点击聊天窗口底部的箭头,将 GitHub Copilot 配置为以 Agent 模式运行
  • 在聊天窗口顶部,你应该能看到已配置为工具的 azure-cli-mcp 服务器

你可以使用文档中描述的方法来保护 AZURE_CREDENTIALS 环境变量的安全性 在文档中,这里是一个完整的示例:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "azure-credentials",
      "description": "Azure Credentials",
      "password": true
    }
  ],
  "servers": {
    "azure-cli": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "AZURE_CREDENTIALS",
        "ghcr.io/jdubois/azure-cli-mcp:latest"
      ],
      "env": {
        "AZURE_CREDENTIALS": "${input:azure-credentials}"
      }
    }
  }
}

使用 Claude Desktop

要从 Claude Desktop 使用该服务器,请将其添加到你的 claude_desktop_config.json 文件中。
AZURE_CREDENTIALS 环境变量应设置为从服务主体创建中输出的 JSON,并且引号需要转义。

{
  "mcpServers": {
    "azure-cli": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "AZURE_CREDENTIALS",
        "ghcr.io/jdubois/azure-cli-mcp:latest"
      ],
      "env": {
        "AZURE_CREDENTIALS": "{\"clientId\":\"...\",\"clientSecret\":\"...\",..."
      }
    }
  }
}

通过 Smithery.ai 安装

你可以通过 Smithery.ai 安装 MCP 服务器:

smithery 徽章

这类似于上面提到的 Docker 容器安装,但运行在 Smithery.ai 的服务器上。虽然这种安装方式最初是最简单的,请注意以下几点:

  • 你需要一个 AZURE_CREDENTIALS 密钥,如 Docker 安装部分所述,这个密钥将会发送给 Smithery.ai。
  • Smithery.ai 是第三方服务,你需要信任他们为你构建这个 MCP 服务器(它使用与我们的 Docker 镜像相同的 Dockerfile,但不是我们构建的)。
  • 这仍然是一个早期预览服务,因此我们无法保证它的演变情况。

使用 Java 安装和配置服务器

此配置是在本地运行服务器。它比使用 Docker 设置更容易,但由于直接使用通过 Azure CLI 在你的机器上配置的凭证,因此安全性较低。

  • 安装 Azure CLI:你可以按照这里的说明进行操作 此处
  • 登录到你的 Azure 账户。你可以在终端中运行 az login 来完成此操作。
  • 确保你安装了 Java 17 或更高版本。你可以在终端中运行 java -version 来检查。

二进制文件可在 GitHub 发布页面 上获取,你可以使用 GitHub CLI 下载最新版本的方式如下:

  • 下载最新发布版:gh release download --repo jdubois/azure-cli-mcp --pattern='azure-cli-mcp.jar'

使用 VS Code

  • 安装 GitHub Copilot
  • 使用命令面板安装此 MCP 服务器:MCP: Add Server...
    • 配置使用 stio 传输连接到服务器
    • 运行的命令是 java -jar ~/Downloads/azure-cli-mcp.jar(你需要指向你下载 azure-cli-mcp.jar 文件的位置)
  • 通过点击聊天窗口底部的箭头,将 GitHub Copilot 配置为以 Agent 模式运行
  • 在聊天窗口顶部,你应该能看到已配置为工具的 azure-cli-mcp 服务器

使用 Claude Desktop

要从 Claude Desktop 使用该服务器,请将其添加到你的 claude_desktop_config.json 文件中。请注意,你需要指向你下载 azure-cli-mcp.jar 文件的位置。

{
    "mcpServers": {
        "azure-cli": {
            "command": "java",
            "args": [
                "-jar",
              "~/Downloads/azure-cli-mcp.jar"
            ]
        }
    }
}

相关 MCP 服务