什么是 Azure MCP 服务器工具?

Azure 模型上下文协议 (MCP) 服务器公开了许多工具,可以使用现有 客户端 通过自然语言提示与 Azure 服务交互。 例如,可以使用 Azure MCP 服务器从 Visual Studio Code 中的 GitHub Copilot 代理模式或其他 AI 代理与 Azure 资源对话交互,这些命令如下所示:

  • “请显示我的所有资源组”
  • “列出名为‘documents’的存储容器中的 Blob”
  • “我的应用配置中”ConnectionString“密钥的值是多少?
  • “查询我的 Log Analytics 工作区,查找过去一小时内的错误”
  • “显示我的所有 Cosmos DB 数据库”

开发人员凭据和安全性

MCP 服务器使用 Azure 用户凭据或托管标识来确保获得授权的访问权限。 通过 Azure 基于角色的访问控制(RBAC)保护访问,为已批准的用户提供细粒度权限。 本地 MCP 服务器专用于组织中的开发人员使用。 请勿将这些工具用于已批准的开发环境外部应用程序或方案。

Azure MCP 服务器启动参数

服务器 azmcp 支持以下用于服务器启动参数的选项:

选项 必需还是可选 Description
调试 可选 启用具有详细日志记录的 stderr调试模式。
启用不安全的传输 可选 启用不安全的传输。
不安全的禁用用户确认 可选 在允许高风险命令运行之前,应禁用用户确认(例如从 KeyVault 返回机密信息(密码))。
模式 可选 服务器模式: namespace (默认值)、consolidatedallsingle
命名空间 可选 在 MCP 服务器上公开的 Azure 服务命名空间(例如,storagekeyvaultcosmos) 。
只读 可选 MCP 服务器是否应为只读。 如果该值为 true,则不允许进行写操作。
工具 可选 按名称公开特定工具(例如 azmcp_storage_account_get)。 它会自动切换到 all 模式。
传输 可选 用于 Azure MCP 服务器的传输机制。

工具参数

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 秒”

Azure MCP 服务器的工具注释

工具批注 是提供有关每个工具特征的其他信息的提示。 下表描述了可与工具关联的可能提示。

Name Description
破坏性的 指示该工具是否可以对其环境进行破坏性更新。 如果为 true,该工具可能会删除或修改现有资源。 如果为 false,该工具只会添加新资源,而无需删除或更改现有资源。
幂等 指定具有相同参数的重复调用是否生成相同的结果,而不会产生副作用。 如果为 true,则具有相同参数的多个执行将生成相同的结果。 如果为 false,重复执行可能会产生其他效果或产生不同的结果。
开放世界 定义该工具是否可能与外部实体的“开放世界”交互。 如果为 true,该工具可能会与不可预知或动态的实体集(例如 Web 搜索)进行交互。 如果为 false,则该工具的交互域被关闭并定义明确(例如内存访问)。
只读 指示该工具是否仅执行读取操作。 如果为 true,则不会更改环境的状态。 如果为 false,该工具可能会对其环境进行修改。
机密 Microsoft专有注释,指示工具的响应是否可能包含需要清理的敏感数据。 如果为 true,响应可能包括在转发到 LLM 或日志记录之前应清理的机密、凭据或密钥。 如果为 false,则响应不包含敏感信息。
本地所需 Microsoft专有注释,以指示该工具是否需要本地执行或资源。 如果为 true,则仅当 Azure MCP 服务器在本地(STDIO)模式下运行时,该工具才可用。 如果为 false,该工具可在本地和远程服务器模式下使用。

用户需确认敏感数据

处理敏感数据的工具(如机密)需要用户同意,然后才能通过称为 “引证”的安全机制执行。 在使用工具访问敏感信息时,MCP 客户端会提示您确认操作以继续。

🛡️ 授权(用户确认)安全功能:

启发性提示会出现,当工具可能会公开敏感信息时,例如:

  • Key Vault 机密
  • 连接字符串和密码
  • 证书私钥
  • 其他机密数据

这些提示可防止未经授权的访问敏感信息。 只能在自动化方案中绕过引证。

可用工具

Azure MCP 服务器为 Azure 服务和 Azure 相关功能提供了以下工具。

最佳做法

产品、工具或服务 Namespace Description
Azure 最佳做法 get_bestpractices 获取有关 Azure Functions 开发、部署和 Azure SDK 使用情况的指导。
适用于 Azure 的 Terraform 最佳做法 azureterraformbestpractices 获取有关为 Azure 资源实现 Terraform 的指导。

AI 和机器学习

产品、工具或服务 Namespace Description
Azure AI Foundry foundry 使用 Azure AI Foundry 模型、部署和端点。
Azure AI 搜索 search 管理 Azure AI 搜索资源,包括搜索服务、索引和查询。
Azure AI 语音 speech 管理 Azure AI 语音资源,例如语音转文本和文本转语音服务。

Analytics

产品、工具或服务 Namespace Description
Azure 应用透镜 applens 使用 Azure App Lens 诊断和分析应用程序性能问题。
Azure 数据资源管理器 kusto 使用 Azure Data Explorer 群集、数据库、表和查询进行操作。
Azure 事件中心 eventhubs 管理 Azure 事件中心命名空间和事件中心。

计算

产品、工具或服务 Namespace Description
Azure 应用程序服务 appservice 管理 Azure 应用服务实例的数据库连接。
Azure Functions functionapp 列出 Azure 函数。
Azure Kubernetes 服务 aks 列出 Azure Kubernetes 服务群集。

容器

产品、工具或服务 Namespace Description
Azure 容器注册表 acr 列出 Azure 容器注册表实例。
Azure Functions functionapp 列出 Azure 函数。
Azure Kubernetes 服务 aks 列出 Azure Kubernetes 服务群集。

Databases

产品、工具或服务 Namespace Description
Azure Cosmos DB cosmos 对 Azure Cosmos DB 帐户、数据库、容器和文档进行操作。
Azure Database for MySQL mysql 管理 Azure Database for MySQL 服务器、数据库和表。
Azure Database for PostgreSQL postgres 管理 Azure Database for PostgreSQL 服务器、数据库和表。
Azure Redis redis 创建和列出 Azure Redis 资源,包括托管 Redis 和 Redis 缓存。
Azure SQL sql 使用 Azure SQL 数据库服务器、数据库、防火墙规则和弹性池。

开发人员工具

产品、工具或服务 Namespace Description
天蓝色 Application Insights applicationinsights 列出 Application Insights 资源。
Azure 应用配置 appconfig 管理集中式应用程序设置和功能标志。
Azure CLI extension 查找 Azure CLI 命令并获取 CLI 工具的安装说明。
Azure 开发者命令行界面 (CLI) extension 获取 Azure 开发人员 CLI (azd)的安装说明,了解部署方案的用法,并在本地安装 azd MCP 工具时访问 azd MCP 工具
Azure 负载测试 loadtesting 创建、运行和查看负载测试。

DevOps

产品、工具或服务 Namespace Description
Azure Bicep 架构 bicepschema 检索用于基础设施即代码模板的 Azure 资源的 Bicep 架构。
Azure 开发者命令行界面 (CLI) extension 获取 Azure 开发人员 CLI (azd)的安装说明,了解部署方案的用法,并在本地安装 azd MCP 工具时访问 azd MCP 工具
Azure 部署 deploy 使用模板和脚本部署和管理 Azure 资源。
Azure 托管 Grafana grafana 列出 Azure 托管 Grafana 工作区。
Azure Monitor monitor 查询 Azure Monitor 日志和指标。
Azure 工作簿 workbooks 创建、管理和更新用于数据可视化和报告的 Azure 工作簿。

混合和多云

产品、工具或服务 Namespace Description
Azure Database for PostgreSQL postgres 管理 Azure Database for PostgreSQL 服务器、数据库和表。
Azure SQL sql 使用 Azure SQL 数据库服务器、数据库、防火墙规则和弹性池。

身份

产品、工具或服务 Namespace Description
Azure RBAC role 查看和管理 Azure 基于角色的访问控制分配。

整合

产品、工具或服务 Namespace Description
Azure 事件网格 eventgrid 管理 Azure 事件网格资源,包括主题和订阅。
Azure 原生 ISV datadog 使用 Azure 原生 ISV 服务,包括用于监控与可观测性的 Datadog 集成。
Azure 服务总线 servicebus 使用 Azure 服务总线消息传送服务。

物联网 (IoT)

产品、工具或服务 Namespace Description
Azure Cosmos DB cosmos 对 Azure Cosmos DB 帐户、数据库、容器和文档进行操作。
Azure 事件网格 eventgrid 管理 Azure 事件网格资源,包括主题和订阅。
Azure Functions functionapp 列出 Azure 函数。

管理和治理

产品、工具或服务 Namespace Description
Azure 云架构师 cloudarchitect 通过引导性问题收集要求并推荐最佳解决方案来设计云系统。
Azure 托管 Grafana grafana 列出 Azure 托管 Grafana 工作区。
Azure Monitor monitor 查询 Azure Monitor 日志和指标。
Azure 快速评审 CLI extension 为 Azure 资源生成符合性和安全性报告。
Azure 配额 quota 管理 Azure 资源配额和限制。
Azure 资源运行状况 resourcehealth 检查 Azure 资源的运行状况。
Azure 工作簿 workbooks 创建、管理和更新用于数据可视化和报告的 Azure 工作簿。
资源组 group 列出 Azure 资源组。
Subscription subscription 列出 Azure 订阅。

Messaging

产品、工具或服务 Namespace Description
Azure 事件网格 eventgrid 管理 Azure 事件网格资源,包括主题和订阅。
Azure 事件中心 eventhubs 管理 Azure 事件中心命名空间和事件中心。
Azure 服务总线 servicebus 使用 Azure 服务总线消息传送服务。

手机

产品、工具或服务 Namespace Description
Azure 应用配置 appconfig 管理集中式应用程序设置和功能标志。
Azure AI Foundry foundry 使用 Azure AI Foundry 模型、部署和端点。
Azure AI 搜索 search 管理 Azure AI 搜索资源,包括搜索服务、索引和查询。
Azure 通信服务 communication 使用 Azure 通信服务发送短信和电子邮件。

安全性

产品、工具或服务 Namespace Description
Azure 应用配置 appconfig 管理集中式应用程序设置和功能标志。
Azure 机密账本 confidentialledger 管理 Azure 机密账本资源,包括账本和事务。
Azure Key Vault keyvault 在 Azure Key Vault 中列出和创建密钥、机密、证书。

存储

产品、工具或服务 Namespace Description
Azure 存储 storage 列出 Azure 存储帐户、容器、Blob 和表。
Azure 机密账本 confidentialledger 管理 Azure 机密账本资源,包括账本和事务。
Azure 托管 Lustre managedlustre 管理 Azure 托管 Lustre 文件系统。

虚拟桌面基础结构 (VDI)

产品、工具或服务 Namespace Description
Azure 虚拟桌面 virtualdesktop 管理 Azure 虚拟桌面主机池、会话主机和用户会话。

Web

产品、工具或服务 Namespace Description
Azure 应用配置 appconfig 管理集中式应用程序设置和功能标志。
Azure 应用程序服务 appservice 管理 Azure 应用服务实例的数据库连接。
Azure AI 搜索 search 管理 Azure AI 搜索资源,包括搜索服务、索引和查询。
Azure 通信服务 communication 使用 Azure 通信服务发送短信和电子邮件。
Azure Functions functionapp 列出 Azure 函数。
Azure SignalR signalr 管理 Azure SignalR 资源和运行时。

Other

产品、工具或服务 Namespace Description
Azure 市场 marketplace 发现 Azure 市场产品和优惠。
Azure MCP 工具 无命名空间 发现和管理可用的 Azure MCP 服务器工具。