Azure 模型上下文协议 (MCP) 服务器公开了许多工具,可以使用现有 客户端 通过自然语言提示与 Azure 服务交互。 例如,可以使用 Azure MCP 服务器从 Visual Studio Code 中的 GitHub Copilot 代理模式或其他 AI 代理与 Azure 资源对话交互,这些命令如下所示:
- “请显示我的所有资源组”
- “列出名为‘documents’的存储容器中的 Blob”
- “我的应用配置中”ConnectionString“密钥的值是多少?
- “查询我的 Log Analytics 工作区,查找过去一小时内的错误”
- “显示我的所有 Cosmos DB 数据库”
可用工具
Azure MCP 服务器为 Azure 服务和 Azure 相关功能提供了以下工具。
Tool | Description |
---|---|
Azure AI 搜索 | 管理 Azure AI 搜索资源,包括搜索服务、索引和查询。 |
Azure Bicep 架构 | 检索用于基础设施即代码模板的 Azure 资源的 Bicep 架构。 |
Azure 应用配置 | 管理集中式应用程序设置和功能标志。 |
Azure 最佳做法 | 获取有关 Azure Functions 开发、部署和 Azure SDK 使用情况的指导。 |
Azure Redis | 管理 Azure Redis 实例、Redis 群集和访问策略。 |
Azure CLI | 在 MCP 服务器中执行 Azure CLI 命令。 |
Azure 容器注册表 | 列出 Azure 容器注册表实例。 |
Azure Cosmos DB | 对 Azure Cosmos DB 帐户、数据库、容器和文档进行操作。 |
Azure 数据资源管理器 | 使用 Azure Data Explorer 群集、数据库、表和查询进行操作。 |
Azure Database for PostgreSQL | 管理 Azure Database for PostgreSQL 服务器、数据库和表。 |
Azure 开发者命令行界面 (CLI) | 执行 Azure 开发人员 CLI 命令进行应用程序开发和部署。 |
Azure Foundry | 使用 Azure AI Foundry 模型、部署和端点。 |
Azure 托管 Grafana | 列出 Azure 托管 Grafana 工作区。 |
Azure Key Vault | 在 Azure Key Vault 中列出和创建密钥、机密、证书。 |
Azure Kubernetes 服务 | 列出 Azure Kubernetes 服务群集。 |
Azure 负载测试 | 创建、运行和查看负载测试。 |
Azure 市场 | 发现 Azure 市场产品和优惠。 |
Azure MCP 工具 | 发现和管理可用的 Azure MCP 服务器工具。 |
Azure Monitor | 查询 Azure Monitor 日志和指标。 |
Azure 原生 ISV | 使用 Azure 原生 ISV 服务,包括用于监控与可观测性的 Datadog 集成。 |
Azure 快速评审 CLI | 为 Azure 资源生成符合性和安全性报告。 |
Azure RBAC | 查看和管理 Azure 基于角色的访问控制分配。 |
Azure 服务总线 | 使用 Azure 服务总线消息传送服务。 |
Azure SQL | 使用 Azure SQL 数据库服务器、数据库、防火墙规则和弹性池。 |
Azure 存储 | 列出 Azure 存储帐户、容器、Blob 和表。 |
Azure 虚拟桌面 | 管理 Azure 虚拟桌面主机池、会话主机和用户会话。 |
资源组 | 列出 Azure 资源组。 |
Subscription | 列出 Azure 订阅。 |
适用于 Azure 的 Terraform 最佳做法 | 获取有关为 Azure 资源实现 Terraform 的指导。 |
工具参数
Azure MCP 服务器工具为完成任务所需的数据定义参数。 例如,这些参数可能包括订阅 ID、帐户名或资源组。
可以在用于调用工具的提示中包含这些参数的数据,或者以前的聊天上下文可能会建立数据。 如果聊天上下文提供数据,Azure MCP 服务器可以使用该信息,而无需在每个提示中重复这些信息。 此上下文可创建更自然的对话体验,同时仍确保所有必需的数据都可用于这些工具。
这些工具参考文章介绍了特定于每个工具的参数。 所有工具还共享以下全局参数。
Parameter | Description |
---|---|
Subscription | Azure 订阅 目标资源的 ID 或名称。 此参数标识包含要管理的资源的 Azure 订阅。 可以使用订阅 GUID 或显示名称。 大多数操作都是必需的。 |
资源组 | Azure 资源组的名称。 这是 Azure 资源的逻辑容器,可帮助一起组织和管理相关资源。 大多数特定于资源的作都是必需的。 |
租户 ID | Azure 租户 身份验证的 ID。 此参数指定要对其进行身份验证的 Microsoft Entra ID 租户。 可以是您的 Entra ID 租户的 GUID 标识或显示名称。 可选 - 如果未指定,则使用默认租户。 |
身份验证方法 | 用于 Azure 操作的身份验证方法。 选项包括 credential (Azure CLI/托管标识)、 key (访问密钥)或 connectionString 。 默认值为 credential 使用 Azure CLI 身份验证或托管标识。 |
最大重试次数 | 在放弃前,失败操作的最大重试次数。 控制系统尝试重试失败请求的次数。 默认值为 3 次重试。 |
重试延迟 | 重试尝试之间的初始延迟(以秒为单位)。 对于指数退避,此值用作每次重试时乘以的基本延迟。 默认值为 2 秒。 |
重试延迟最大值 | 重试之间的最大延迟(以秒为单位),而不考虑重试策略。 此参数限制延迟时间,以防止长时间等待。 默认值为 10 秒。 |
重试模式 | 重试策略在操作失败时使用。
fixed 在重试之间使用一致的延迟,同时 exponential 增加每次尝试之间的延迟。 默认设置为 exponential ,以更好地处理临时问题。 |
重试网络超时 | 网络操作超时时间(以秒为单位)。 如果操作的时间超过此超时时间,这些操作将被取消。如果启用了重试机制,可能会再次尝试。 默认值为 100 秒。 |
示例提示包括:
- 设置订阅:“使用订阅 'my-subscription-id' 进行所有操作”
- 使用租户 ID:“使用租户 ID 'my-tenant-id' 进行身份验证”
- 设置身份验证方法:“对此会话使用'credential'身份验证”
- 配置重试:“将最大重试次数设置为 5,延迟为 3 秒
- 设置重试模式:“使用”固定“重试模式,最大延迟为 5 秒”
- 设置网络超时:“将所有操作的网络超时设置为 120 秒”
- 配置重试参数:“使用最多 4 次重试的指数重试模式,延迟为 2 秒”