AWS S3 MCP Server

Gestiona operaciones de AWS S3, proporcionando acceso seguro a los buckets de S3 mediante URLs pre-firmadas.

Documentación

Servidor MCP de AWS S3

Servidor MCP para operaciones de AWS S3, que proporciona acceso seguro a los buckets de S3 mediante URL pre-firmadas.

Herramientas

  1. list_objects

    • Lista objetos en un bucket de S3
    • Entrada:
      • prefix (cadena, opcional): Filtro de prefijo para las claves de objetos
    • Devuelve: Matriz de objetos con claves, tamaños y fechas de última modificación
  2. get_object

    • Genera una URL pre-firmada para acceder a un objeto
    • Entradas:
      • key (cadena, obligatorio): Clave del objeto a recuperar
      • expiry (número, opcional): Tiempo de expiración de la URL en segundos (predeterminado: 3600)
    • Devuelve: object_url que contiene la URL pre-firmada
  3. put_object

    • Genera una URL pre-firmada para subir un objeto
    • Entradas:
      • key (cadena, obligatorio): Clave del objeto a subir
      • expiry (número, opcional): Tiempo de expiración de la URL en segundos (predeterminado: 3600)
    • Devuelve: upload_url que contiene la URL pre-firmada
  4. delete_object

    • Elimina un objeto del bucket
    • Entrada:
      • key (cadena, obligatorio): Clave del objeto a eliminar
    • Devuelve: success booleano que indica el estado de la eliminación

Configuración

Variables de Entorno

El servidor requiere las siguientes variables de entorno:

  • BUCKET_NAME: El nombre de tu bucket de S3 (obligatorio)
  • REGION: Región de AWS (predeterminado: "ap-southeast-1")

Las credenciales de AWS deben configurarse utilizando los métodos estándar de configuración de credenciales de AWS (variables de entorno, roles de IAM o archivo de credenciales de AWS).

Uso con Claude Desktop

Agrega lo siguiente a tu claude_desktop_config.json:

{
  "mcpServers": {
    "aws-ow-s3-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "BUCKET_NAME",
        "-e",
        "REGION",
        "-e",
        "AWS_ACCESS_KEY_ID",
        "-e",
        "AWS_SECRET_ACCESS_KEY",
        "mcp/aws-ow-s3-mcp"
      ],
      "env": {
        "BUCKET_NAME": "<YOUR_BUCKET_NAME>",
        "REGION": "<AWS_REGION>",
        "AWS_ACCESS_KEY_ID": "<YOUR_ACCESS_KEY>",
        "AWS_SECRET_ACCESS_KEY": "<YOUR_SECRET_KEY>"
      }
    }
  }
}

Comando NPX

{
  "mcpServers": {
    "aws-ow-s3-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-aws-ow-s3-mcp"
      ],
      "env": {
        "BUCKET_NAME": "<YOUR_BUCKET_NAME>",
        "REGION": "<AWS_REGION>",
        "AWS_ACCESS_KEY_ID": "<YOUR_ACCESS_KEY>",
        "AWS_SECRET_ACCESS_KEY": "<YOUR_SECRET_KEY>"
      }
    }
  }
}

Compilación

Compilación de Docker:

docker build -t mcp/aws-ow-s3-mcp-server .

Desarrollo

El servidor está construido utilizando:

  • Node.js
  • TypeScript
  • @modelcontextprotocol/sdk
  • @aws-sdk/client-s3
  • @aws-sdk/s3-request-presigner

Licencia

Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.