AWS S3

Recupera archivos como PDFs de un bucket de AWS S3. Requiere credenciales de AWS para acceder.

Documentación

Servidor de Protocolo de Contexto de Modelo (MCP) de Ejemplo para S3

Una implementación de servidor MCP para recuperar datos como archivos PDF desde S3.

Características

Recursos

Expone datos de AWS S3 a través de Recursos. (Piense en ellos como una especie de endpoints GET; se utilizan para cargar información en el contexto del LLM). Actualmente solo se admiten documentos PDF y está limitado a 1000 objetos.

Herramientas

  • ListBuckets
    • Devuelve una lista de todos los buckets propiedad del remitente autenticado de la solicitud
  • ListObjectsV2
    • Devuelve algunos o todos (hasta 1,000) los objetos en un bucket con cada solicitud
  • GetObject
    • Recupera un objeto de Amazon S3. En la solicitud GetObject, especifique el nombre de clave completo del objeto. Buckets de propósito general: se admiten tanto las solicitudes de estilo virtual-hosted como las de estilo path

Configuración

Configuración de credenciales de AWS

  1. Obtenga el ID de clave de acceso de AWS, la clave de acceso secreta y la región desde la Consola de administración de AWS.
  2. Asegúrese de que estas credenciales tengan los permisos adecuados para AWS S3.

Uso con Claude Desktop

Claude Desktop

En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json En Windows: %APPDATA%/Claude/claude_desktop_config.json

Configuración de servidores no publicados en desarrollo
{
  "mcpServers": {
    "s3-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/user/generative_ai/model_context_protocol/s3-mcp-server",
        "run",
        "s3-mcp-server"
      ]
    }
  }
}
Configuración de servidores publicados
{
  "mcpServers": {
    "s3-mcp-server": {
      "command": "uvx",
      "args": [
        "s3-mcp-server"
      ]
    }
  }
}

Desarrollo

Compilación y publicación

Para preparar el paquete para su distribución:

  1. Sincronice las dependencias y actualice el archivo de bloqueo:
uv sync
  1. Compile las distribuciones del paquete:
uv build

Esto creará distribuciones de código fuente y wheel en el directorio dist/.

  1. Publique en PyPI:
uv publish

Nota: Deberá configurar las credenciales de PyPI mediante variables de entorno o banderas de comando:

  • Token: --token o UV_PUBLISH_TOKEN
  • O nombre de usuario/contraseña: --username/UV_PUBLISH_USERNAME y --password/UV_PUBLISH_PASSWORD

Depuración

Dado que los servidores MCP se ejecutan a través de stdio, la depuración puede ser un desafío. Para una mejor experiencia de depuración, recomendamos encarecidamente usar el Inspector MCP.

Puede iniciar el Inspector MCP a través de npm con este comando:

npx @modelcontextprotocol/inspector uv --directory /Users/user/generative_ai/model_context_protocol/s3-mcp-server run s3-mcp-server

Al iniciarlo, el Inspector mostrará una URL a la que puede acceder en su navegador para comenzar a depurar.

Seguridad

Consulte CONTRIBUTING para obtener más información.

Licencia

Esta biblioteca está licenciada bajo la Licencia MIT-0. Consulte el archivo LICENSE.