MCP服务器-AIStor

@minio/mcp-server-aistor
0 Stars 421 次浏览 minio 更新于 2026-08-23

AIStor的官方MCP服务器

MCP 服务配置

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

{
  "mcpServers": {
    "aistor": {
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/Users/YOUR_USERNAME/Downloads:/Downloads",
        "-e",
        "MINIO_ENDPOINT=REPLACE_WITH_ENDPOINT",
        "-e",
        "MINIO_ACCESS_KEY=REPLACE_WITH_ACCESS_KEY",
        "-e",
        "MINIO_SECRET_KEY=REPLACE_WITH_SECRET_KEY",
        "-e",
        "MINIO_USE_SSL=true",
        "quay.io/minio/aistor/mcp-server-aistor:latest",
        "--allowed-directories",
        "/Downloads",
        "--allow-write",
        "--allow-delete",
        "--allow-admin"
      ],
      "command": "podman"
    }
  }
}

该服务需要配置环境变量:MINIO_ACCESS_KEY、MINIO_ENDPOINT、MINIO_SECRET_KEY、MINIO_USE_SSL

服务介绍

AIStor MCP 服务器

这是一个用于与 AIStor 对象存储交互的模型上下文协议 (MCP) 服务器。

更多关于 MCP 的信息可以在其 官方网站 上找到。

更多关于 AIStor MCP 服务器的信息可以在我们的 博客文章 中找到。

功能

读取操作

  • 列出存储桶
  • 列出存储桶中的对象
  • 获取对象的元数据和标签
  • 为对象创建一个带有过期时间的预签名 URL

AI 操作

  • 使用 ask-object 函数描述对象的内容

写入操作

这些操作应该通过在配置中使用 --allow-write 标志来启用。

  • 创建一个存储桶
  • 将对象上传到存储桶
  • 为对象添加标签

删除操作

这些操作应该通过在配置中使用 --allow-delete 标志来启用。

  • 删除一个对象
  • 删除一个存储桶

管理操作

这些操作应该通过在配置中使用 --allow-admin 标志来启用。

  • 以人类可读的形式获取集群信息(配置、健康状态、可用空间)

配置

前提条件

  1. Claude 下载并安装 Claude for Desktop 应用程序。
    该 MCP 服务器可以与其他支持 MCP 的客户端一起工作,但让我们先从 Claude 开始。

  2. 确保您已经在桌面/笔记本电脑上安装并准备好使用 Docker 或 Podman。

  3. 获取您的 AIStor(或 MinIO)对象存储凭证 (MINIO_ACCESS_KEYMINIO_SECRET_KEY) 及其端点位置。
    如果您没有可用的 AIStor 或 MinIO 服务器,您可以自由使用 MinIO Playground 服务器 的值。

配置文件

使用您喜欢的文本编辑器打开 Claude for Desktop 配置文件。
要找到系统中的配置文件,请按照模型上下文协议网站上的 快速入门说明 进行操作。
其默认位置是:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

将以下行添加到配置文件中,并用实际值替换凭证、端点和 YOUR_USERNAME
此示例使用了 Podman,但如果您使用 Docker,请在 command: 字段中将 podman 替换为 docker
如果您已经配置了其他 MCP 服务器,只需将 AIStor 配置插入列表中即可。

在添加 --allow-* 标志时请小心。默认情况下,如果没有任何标志,服务器将以只读模式运行。
仅在需要时向此配置中添加 --allow-write--allow-delete 标志。
--allow-admin 标志启用了收集集群信息的管理功能。

{
  "mcpServers": {
    "aistor": {
      "command": "podman",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/Users/YOUR_USERNAME/Downloads:/Downloads",
        "-e",
        "MINIO_ENDPOINT=REPLACE_WITH_ENDPOINT",
        "-e",
        "MINIO_ACCESS_KEY=REPLACE_WITH_ACCESS_KEY",
        "-e",
        "MINIO_SECRET_KEY=REPLACE_WITH_SECRET_KEY",
        "-e",
        "MINIO_USE_SSL=true",
        "quay.io/minio/aistor/mcp-server-aistor:latest",
        "--allowed-directories",
        "/Downloads",
        "--allow-write",
        "--allow-delete",
        "--allow-admin"
      ]
    }
  }
}

默认情况下,服务器列出并发送给LLM的对象或存储桶数量限制为1000个对象。
这样做是为了避免超出模型上下文窗口中的令牌限制。
如果您的模型允许更宽的上下文窗口,您可以通过在配置文件中添加--max-keys参数来增加这个数字。
请记住,每个对象记录包含几十个令牌。

使用方法

以下是一些您可以执行的操作示例:

基本操作

  • “列出我的AIStor服务器上的所有存储桶”
  • “列出存储桶test的内容”

文件操作

  • “将文件example.pdf下载到我的Downloads目录”
  • “创建一个存储桶my-bucket”
  • “从Downloads上传document.pdf到存储桶my-bucket”

元数据操作

  • “获取存储桶my-bucket中file.pdf的元数据”
  • “列出对象config.json的所有标签”

管理员操作

  • “显示服务器健康状态”
  • “获取存储使用统计信息”

每个命令都会返回包含相关信息的人类可读响应。

可用工具

通常,大型语言模型(LLM)能够根据您的请求自行判断使用哪个工具。
有时,您可能希望明确告诉模型使用哪个工具。
为此情况以及让您了解此MCP服务器还能做些什么,以下是此版本可用工具列表。

您始终可以通过点击Claude for Desktop应用程序中的锤子图标来获取此列表。

ask-object
: 使用AI询问有关对象内容的问题,支持多种文件格式,并返回上下文相关的答案

copy-object
: 将对象从一个存储桶复制到另一个存储桶,同时保留元数据,并可选择性地修改属性。您还可以指定版本ID以复制特定版本的对象。

create-bucket
: 创建具有指定配置的新存储桶,并可选设置版本控制

delete-bucket
: 删除存储桶,并可选强制移除其中包含的所有对象

delete-object
: 从存储桶中删除特定对象或版本,支持软删除选项。您还可以指定版本ID以删除特定版本的对象。

download-object
: 将指定存储桶中的对象下载到本地文件系统,同时保留元数据。您还可以指定版本ID以下载特定版本的对象。

get-admin-info
: 获取关于AIStor对象存储的全面技术信息,包括状态、性能指标和配置

get-bucket-lifecycle
: 获取指定存储桶的生命周期规则(也称为ILM配置)

get-bucket-replication
: 获取指定存储桶的复制配置

get-bucket-tags
: 获取指定存储桶的标签

get-bucket-versioning
: 获取指定存储桶的版本控制状态和配置

get-data-usage-info
: 获取AIStor对象存储的数据使用信息,包括总存储数据量、对象数量及每个存储桶的使用情况

`get-object-metadata`
: 获取对象的详细元数据,包括内容类型、大小、自定义头和系统属性

`get-object-presigned-url`
: 为存储桶中的对象获取一个预签名URL,可选设置过期时间。默认为7天。

`get-object-tags`
: 获取存储桶中特定对象的所有标签

`get-object-versions`
: 获取存储桶中对象的所有版本

`list-allowed-directories`
: 列出所有允许与服务器进行操作的目录

`list-bucket-contents`
: 列出指定存储桶中的所有对象,包括它们的大小和最后修改日期。您还可以指定前缀来过滤对象,并选择是否列出版本。

`list-buckets`
: 列出AIStor对象存储中的所有存储桶及其基本信息

`list-local-files`
: 列出指定本地目录路径下的所有文件和目录及其属性

`move-object`
: 通过复制到目标位置并从源位置删除来移动存储桶之间的对象。您还可以指定版本ID以移动特定版本的对象。

`set-bucket-tags`
: 设置指定存储桶的标签

`set-bucket-versioning`
: 使用管理权限配置存储桶的版本控制设置

`set-object-tags`
: 为存储桶中的现有对象设置或更新标签,支持多个键值对。您还可以指定版本ID为特定版本的对象设置标签。

`upload-object`
: 从本地文件系统上传文件到指定存储桶,支持元数据和标签

相关 MCP 服务