Azure MCP服务器使用说明

项目简介

Azure MCP (Model Context Protocol) 服务器是一个后端应用,它实现了 Model Context Protocol,专门为 Claude Desktop 这类语言模型客户端提供与 Azure 云服务交互的能力。通过这个服务器,用户可以使用自然语言指示 Claude Desktop 查询和管理 Azure 资源,例如获取订阅信息、列出资源组、操作虚拟机等。

主要功能点

  • Azure 资源管理: 允许 Claude Desktop 通过自然语言界面访问和管理 Azure 资源。
  • 订阅和租户管理: 支持列出和选择 Azure 订阅及租户,方便用户在多账户环境下操作。
  • 自动身份验证: 利用 Azure 的 DefaultAzureCredential 机制,自动尝试多种身份验证方式,简化配置过程。
  • 工具化操作: 提供 "run-azure-code"、"list-tenants"、"select-tenant" 等工具,供 Claude Desktop 调用执行 Azure 相关操作。
  • 完善的错误处理: 具备重试机制和详细的错误报告,增强服务器的稳定性和可用性。
  • 兼容 Claude Desktop: 响应格式经过优化,确保与 Claude Desktop 客户端的良好兼容性。

安装步骤

  1. 克隆仓库
    git clone https://github.com/Streen9/azure-mcp.git
    cd azure-mcp
  2. 安装依赖
    npm install

服务器配置

要将 Azure MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),您需要编辑客户端的配置文件(通常是 'claude_desktop_config.json'),添加如下服务器配置信息。这里的 'command' 和 'args' 描述了如何启动 Azure MCP 服务器进程。

{
  "mcpServers": {
    "azure": {
      "command": "tsx",
      "args": [
        "C:/Users/[YourUsername]/path/to/azure-mcp/src/launcher.ts"
      ]
    }
  }
}

配置参数说明:

  • server name: 'azure' (服务器名称,客户端用此名称引用该服务器,可以自定义)
  • command: 'tsx' (启动服务器的命令,这里假设您已全局安装 'tsx',如果使用 'node' 运行 'launcher.ts',请将 'tsx' 替换为 'node')
  • args: 启动命令的参数,指向 'launcher.ts' 文件路径,请务必将 'C:/Users/[YourUsername]/path/to/azure-mcp' 替换为您实际的仓库路径

注意:

  • 请确保您的系统已安装 Node.js (v18 或更高版本)。
  • 您需要根据实际情况修改 'args' 中的路径,指向您本地 'azure-mcp' 仓库中 'src/launcher.ts' 文件的绝对路径。
  • Claude Desktop 启动时会读取此配置,并根据配置信息尝试连接 Azure MCP 服务器。

基本使用方法

  1. 启动 Claude Desktop 客户端 (如果已运行,请先关闭再重新启动,确保配置生效)。

  2. 在 Claude Desktop 的聊天界面中,您可以使用自然语言提出关于 Azure 的问题,例如:

    • "Can you get all the available Azure accounts and subscriptions?" (你能获取所有可用的 Azure 账户和订阅吗?)
    • "List all resource groups in my subscription" (列出我订阅中的所有资源组)
    • "Show me all virtual machines in a specific resource group" (展示特定资源组中的所有虚拟机)

    Claude Desktop 会将这些问题通过 MCP 协议发送给 Azure MCP 服务器处理,服务器会调用 Azure SDK 获取信息,并将结果返回给 Claude Desktop 展示。

身份验证:

Azure MCP 服务器使用 'DefaultAzureCredential' 进行身份验证,它会自动尝试以下方式进行 Azure 身份验证:

  • 环境变量
  • 托管身份
  • Azure CLI
  • Visual Studio Code
  • 交互式浏览器

通常情况下,如果您的 Azure CLI 已经登录,或者在 Azure VM 中运行,则可以自动完成身份验证,无需额外配置。如果遇到身份验证问题,请参考仓库的 Troubleshooting 部分或 Azure 官方文档进行排查。

信息

分类

开发者工具