mcp-server-aistor

Official
by minio
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports running the MCP server in Docker containers, allowing containerized deployment and access to object storage services.

  • Provides support for macOS environments, with specific configuration paths and integration with the macOS file system.

  • Enables interaction with MinIO object storage, allowing users to manage buckets and objects, perform file operations, access metadata, generate presigned URLs, and retrieve administrative information about the storage cluster.

Servidor MCP de AIStor

Este es un servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con los almacenes de objetos AIStor.

Puede encontrar más información sobre MCP en su sitio oficial .

Puede encontrar más información sobre el servidor AIStor MCP en nuestras publicaciones de blog .

Características

Operaciones de lectura

  • Lista de cubos
  • Listar objetos en el depósito
  • Obtener los metadatos y las etiquetas del objeto
  • Crear una URL pre-firmada con vencimiento para un objeto

Operaciones de IA

  • Describe el contenido del objeto utilizando la función ask-object

Operaciones de escritura

Estas operaciones deben habilitarse utilizando el indicador --allow-write en la configuración.

  • Crear un depósito
  • Subir un objeto al bucket
  • Añadir etiquetas al objeto

Operaciones de eliminación

Estas operaciones deben habilitarse utilizando el indicador --allow-delete en la configuración.

  • Eliminar un objeto
  • Eliminar un depósito

Operaciones administrativas

Estas operaciones deben habilitarse utilizando el indicador --allow-admin en la configuración.

  • Obtenga información del clúster (configuración, estado de salud, espacio disponible) en formato legible para humanos

Configuración

Prerrequisitos

  1. Descargue e instale la aplicación Claude para escritorio desde Claude . Este servidor MCP funciona con otros clientes compatibles con MCP, pero comencemos con Claude.
  2. Asegúrese de tener Docker o Podman instalado y listo para usar en su computadora de escritorio o portátil.
  3. Obtén las credenciales del almacén de objetos de AIStor (o MinIO) ( MINIO_ACCESS_KEY y MINIO_SECRET_KEY ) y la ubicación de su punto final. Si no tienes un servidor AIStor o MinIO disponible, puedes usar los valores del servidor MinIO Playground .

Archivo de configuración

Abra el archivo de configuración de Claude for Desktop con su editor de texto preferido. Para encontrarlo en su sistema, siga las instrucciones de inicio rápido del sitio web del Protocolo de Contexto de Modelo. Su ubicación predeterminada es:

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

Agregue las siguientes líneas al archivo de configuración, reemplazando las credenciales, el punto final y YOUR_USERNAME con sus valores reales. Este ejemplo usa Podman, pero si usa Docker, reemplace podman en el campo command: por docker . Si tiene otros servidores MCP configurados, simplemente inserte la configuración de AIStor en la lista.

Tenga cuidado al agregar los indicadores --allow-* . De forma predeterminada, sin indicadores, el servidor se ejecutará en modo de solo lectura. Agregue los indicadores --allow-write y --allow-delete a esta configuración solo cuando los necesite. El indicador --allow-admin habilita las funciones de administración que recopilan información sobre el clúster.

{ "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" ] } } }

De forma predeterminada, el número de objetos o buckets que el servidor lista y envía a LLM está limitado a 1000 objetos. Esto se hace para evitar alcanzar el límite de tokens de la ventana de contexto del modelo. Si su modelo permite una ventana de contexto más amplia, puede aumentar este número añadiendo el parámetro --max-keys al archivo de configuración. Tenga en cuenta que cada registro de objeto contiene varias docenas de tokens.

Uso

A continuación se muestran algunos ejemplos de lo que puedes hacer:

Operaciones básicas

  • "Enumerar todos los depósitos en mi servidor AIStor"
  • "Enumere el contenido de la prueba del cubo"

Operaciones con archivos

  • "Descarga el archivo ejemplo.pdf a mi directorio de Descargas"
  • "Crear un depósito my-bucket"
  • Subir documento.pdf desde Descargas a la carpeta my-bucket

Operaciones de metadatos

  • Obtener metadatos del archivo .pdf en el contenedor my-bucket
  • "Enumerar todas las etiquetas del objeto config.json"

Operaciones administrativas

  • "Mostrar el estado de salud del servidor"
  • Obtener estadísticas de uso del almacenamiento

Cada comando devolverá respuestas legibles por humanos con información relevante.

Herramientas disponibles

Normalmente, el Modelo de Lenguaje Grande (LLM) determinará qué herramienta usar para su solicitud. En ocasiones, puede que desee indicarle explícitamente qué herramienta usar. Para estos casos, y también para informarle sobre las demás posibilidades de este servidor MCP, aquí tiene la lista de herramientas disponibles en esta versión.

Siempre puedes obtener esta lista haciendo clic en el ícono del martillo en tu aplicación Claude for Desktop.

ask-object : realiza preguntas sobre el contenido de un objeto usando IA, admite varios formatos de archivo y devuelve respuestas contextuales

copy-object : Copia un objeto de un depósito a otro conservando los metadatos y, opcionalmente, modificando las propiedades. También puede especificar un ID de versión para copiar una versión específica del objeto.

create-bucket : crea un nuevo bucket con configuraciones específicas y configuraciones de versiones opcionales

delete-bucket : elimina un depósito y, opcionalmente, fuerza la eliminación de todos los objetos contenidos

delete-object : Elimina un objeto o una versión específicos de un bucket, con opción de eliminación temporal. También puede especificar un ID de versión para eliminar una versión específica del objeto.

download-object : Descarga un objeto de un bucket específico al sistema de archivos local, conservando los metadatos. También puede especificar un ID de versión para descargar una versión específica del objeto.

get-admin-info : Obtenga información técnica completa sobre el almacén de objetos AIStor, incluido el estado, las métricas de rendimiento y la configuración

get-bucket-lifecycle : obtiene el ciclo de vida, también conocido como reglas de ciclo de vida, también conocido como configuración ILM de un bucket específico

get-bucket-replication : obtiene la configuración de replicación de un depósito específico

get-bucket-tags : obtener las etiquetas de un bucket específico

get-bucket-versioning : obtiene el estado de control de versiones y la configuración de un bucket específico

get-data-usage-info : obtiene información de uso de datos para el almacén de objetos AIStor, incluidos los datos totales almacenados, la cantidad de objetos y el uso de cada depósito

get-object-metadata : obtiene metadatos detallados de un objeto, incluido el tipo de contenido, el tamaño, los encabezados personalizados y las propiedades del sistema

get-object-presigned-url : Obtiene una URL prefirmada para un objeto en un bucket, con un tiempo de expiración opcional. El valor predeterminado es 7 días.

get-object-tags : obtiene todas las etiquetas asociadas con un objeto específico en un depósito

get-object-versions : Obtener todas las versiones de un objeto en un depósito

list-allowed-directories : enumera todos los directorios que están permitidos para operaciones con el servidor

list-bucket-contents : Lista todos los objetos de un bucket específico, incluyendo sus tamaños y fechas de última modificación. También puede especificar un prefijo para filtrar los objetos y si desea mostrar las versiones.

list-buckets : enumera todos los buckets en el almacén de objetos AIStor con su información básica

list-local-files : enumera todos los archivos y directorios en una ruta de directorio local especificada con sus atributos

move-object : Mueve un objeto entre depósitos copiándolo al destino y eliminándolo del origen. También puedes especificar un ID de versión para mover una versión específica del objeto.

set-bucket-tags : Establece las etiquetas para un depósito específico

set-bucket-versioning : configura los ajustes de control de versiones para un bucket con privilegios administrativos

set-object-tags : Establece o actualiza las etiquetas de un objeto existente en un bucket, con compatibilidad con múltiples pares clave-valor. También puede especificar un ID de versión para establecer etiquetas para una versión específica del objeto.

upload-object : Carga un archivo desde el sistema de archivos local a un depósito específico, con soporte para metadatos y etiquetas

ID: ou30p8kwqr