适用于 Azure MCP 服务器的 Azure 存储工具概述

借助 Azure MCP 服务器,可以使用自然语言提示管理 Azure 存储资源,包括存储帐户、容器、表和 Blob。

Azure 存储 是Microsoft新式数据存储方案的云存储解决方案。

注释

工具参数:Azure MCP 服务器工具为完成任务所需的数据定义参数。 其中一些参数特定于每个工具,如下所示。 其他参数是全局参数,由所有工具共享。 有关详细信息,请参阅 工具参数

帐户:创建

创建新的 Azure 存储帐户。

先决条件:会话上下文建立 全局参数 (订阅、资源组)。 调用方必须对目标订阅具有存储帐户参与者角色或等效权限。

示例提示包括:

  • 创建存储帐户:“在位置”eastus“的资源组”my-resource-group“中创建名为”mystorageaccount“的存储帐户。
  • 使用 SKU:“在位置 'eastus' 的资源组 'my-resource-group' 中使用 Standard_GRS 创建存储帐户 'mydata'。”
  • 启用 Data Lake:“在启用了分层命名空间的”westeurope“位置的资源组”my-resource-group“中创建存储帐户”datalakeacct”。
参数 必需还是可选 Description
资源组 必选 Azure 资源组的名称。 资源组是 Azure 资源的逻辑容器。
存储帐户 必选 Azure 存储帐户的全局唯一名称(仅限 3-24 个字符、小写字母和数字)。
位置 必选 Azure 在其中创建存储帐户的 Azure 区域(例如 eastuswestus2)。
SKU 可选 存储帐户 SKU。 有效值:Standard_LRS、、Standard_GRSStandard_RAGRSStandard_ZRSPremium_LRSPremium_ZRSStandard_GZRSStandard_RAGZRS
访问层 可选 Blob 存储的默认访问层。 有效值: HotCool
启用分层命名空间 可选 是否为存储帐户启用分层命名空间(Data Lake Storage Gen2)。

成功验证:该工具返回创建的存储帐户详细信息。

工具批注提示

破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌

帐户:获取详细信息

检索有关 Azure 存储帐户的详细信息,包括帐户名称、位置、SKU、种类、分层命名空间状态、仅限 HTTPS 的设置和 Blob 公共访问配置。 如果未提供特定帐户名称,该工具将返回订阅中所有帐户的详细信息。

先决条件:会话上下文建立 全局参数 (订阅、身份验证)。 调用方必须具有存储帐户读取者角色或等效权限。

示例提示包括:

  • 获取存储帐户详细信息:“显示存储帐户”mystorageaccount“的详细信息。
  • 列出所有帐户:“我的订阅中有哪些存储帐户?”
  • 检查属性:“存储帐户”mydata“的设置是什么?
参数 必需还是可选 Description
存储帐户 可选 Azure 存储帐户(例如“mystorageaccount”)的全局唯一名称。

成功验证:如果未指定名称,则返回包含存储帐户属性的 JSON 或所有帐户的列表。

工具批注提示

破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌

容器:创建容器

创建具有可选 Blob 公共访问的 Blob 容器。

先决条件:会话上下文建立 全局参数 (订阅、身份验证)。 调用方必须在存储帐户上具有存储 Blob 数据参与者角色或等效角色。

示例提示包括:

  • 创建容器:“在存储帐户”mystorageaccount“中创建名为”mycontainer“的专用容器。
  • 使用访问级别:“在存储帐户”mydata“中创建名为”logs“的 Blob 容器,其访问级别为”private”。
参数 必需还是可选 Description
存储帐户 必选 Azure 存储帐户(例如“mystorageaccount”)的全局唯一名称。
容器 必选 在存储帐户中创建的容器的名称。

成功验证:该工具返回创建的容器属性。

工具批注提示

破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌

容器:获取容器详细信息

列出存储帐户中的所有 Blob 容器,或显示特定容器的详细信息。 显示容器属性,包括访问策略、租约状态和元数据。

先决条件:会话上下文建立 全局参数 (订阅、身份验证)。 在存储帐户上,调用者必须具有存储 Blob 数据读取者角色或等效角色。

示例提示包括:

  • 获取容器详细信息:“显示有关存储帐户”mystorageaccount“中”documents“容器的详细信息。
  • 列出容器:“存储帐户”media_files“中的容器是什么?
  • 检查访问策略:“检查存储帐户”prodstore“中容器”user_data“的访问策略。
参数 必需还是可选 Description
存储帐户 必选 Azure 存储帐户的全局唯一名称。
容器 可选 容器的名称。 如果未指定名称,该工具将列出存储帐户中的所有容器。

成功验证:如果未指定名称,则返回包含容器属性的 JSON 或所有容器的列表。

工具批注提示

破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌

Blob:获取 Blob 详细信息

列出容器中的 Blob 或获取特定 Blob 的详细信息。 显示 Blob 属性,包括元数据、大小、上次修改时间和内容属性。

先决条件:会话上下文建立 全局参数 (订阅、身份验证)。 调用方必须在存储帐户上具有存储 Blob 数据读取者角色或等效角色。

示例提示包括:

  • 获取 blob 详细信息:“在存储帐户”mystorageaccount“的容器”documents“中显示”file.txt“的详细信息。
  • 列出 blob:“存储帐户”mediafiles“中的容器”photos“中有哪些 blob?
  • Blob 元数据:“存储帐户”mydata“中容器”备份“中”backup.zip“的元数据是什么?
参数 必需还是可选 Description
存储帐户 必选 Azure 存储帐户(例如“mystorageaccount”)的全局唯一名称。
容器 必选 存储帐户中容器的名称。
Blob 可选 容器中 Blob 的名称,包括完整路径(例如, file.txtfolder/file.txt)。 如果未指定名称,该工具将列出容器中的所有 Blob。

成功验证:如果未指定名称,则返回包含 blob 属性的 JSON 或所有 Blob 的列表。

工具批注提示

破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌

Blob:上传

如果 Blob 不存在,则将本地文件上传到 Azure 存储中的 Blob。

先决条件:会话上下文建立 全局参数 (订阅、身份验证)。 调用方必须在存储帐户上具有存储 Blob 数据参与者角色或等效角色。 本地文件必须存在且可访问。

示例提示包括:

  • 上传文件:“将本地文件 'report.pdf' 上传到存储账户 'mystorageaccount' 的容器 'documents' 中的 blob 'documents/report.pdf'。”
  • 上传并覆盖:“将本地文件data.csv上传至存储账户mydata中容器archive下的blob archive/data.csv,如果已存在则覆盖。”
参数 必需还是可选 Description
存储帐户 必选 Azure 存储帐户的全局唯一名称(例如 mystorageaccount)。
容器 必选 存储帐户中容器的名称。
Blob 必选 容器中 Blob 的名称,包括完整路径(例如, file.txtfolder/file.txt)。
本地文件路径 必选 系统上本地文件的完整路径。

成功验证:该工具返回上传的 Blob 的上次修改时间、ETag 和内容哈希。

工具批注提示

破坏性: ❌ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ✅