s3-mcp
s3-mcp
Un servidor MCP genérico de protocolo S3 (stdio) que funciona con cualquier endpoint compatible con S3 — RustFS, MinIO, Cloudflare R2, Backblaze B2, AWS S3 — no solo AWS.
Un único paquete de Python, un cliente boto3 creado al inicio, configuración únicamente mediante variables de entorno. Construido sobre el SDK oficial mcp (API de servidor de alto nivel) y boto3.
Configuración (variables de entorno)
Variable | ¿Requerida? | Por defecto | Descripción |
| no | (sin definir) | Endpoint compatible con S3; omítelo para apuntar a AWS real |
| no |
| Región para firma y creación de buckets |
| sí | — | Clave de acceso |
| sí | — | Clave secreta |
| no |
| Direccionamiento estilo ruta ( |
| no |
|
|
Los booleanos aceptan true/false/1/0/yes/no (sin distinción de mayúsculas). La falta de credenciales o booleanos inválidos abortan el inicio con un error claro.
Related MCP server: S3 MCP Server
Herramientas
Herramienta | ¿Solo lectura? |
| sí |
| sí |
| sí |
| sí |
| sí |
| no |
| no |
| no |
| no |
| no |
| no |
Los errores de las herramientas se lanzan como mensajes cortos de RuntimeError y MCP los muestra como resultados de error. Las URL prefirmadas tienen un límite de 7 días (604800 s), según SigV4.
Ejemplos de configuración
RustFS con un certificado autofirmado
{
"mcpServers": {
"s3-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "S3_ENDPOINT_URL=https://rustfs.local:9000",
"-e", "S3_TLS_INSECURE=true",
"-e", "AWS_REGION=us-east-1",
"-e", "AWS_ACCESS_KEY_ID",
"-e", "AWS_SECRET_ACCESS_KEY",
"ghcr.io/jakeperalta7/s3-mcp:latest"
]
}
}
}-e VAR sin valor pasa la variable desde tu shell, por lo que las credenciales nunca aparecen en el archivo de configuración.
MinIO
{
"mcpServers": {
"s3-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "S3_ENDPOINT_URL=http://localhost:9000",
"-e", "AWS_REGION=us-east-1",
"-e", "AWS_ACCESS_KEY_ID",
"-e", "AWS_SECRET_ACCESS_KEY",
"ghcr.io/jakeperalta7/s3-mcp:latest"
]
}
}
}AWS S3
Omite S3_ENDPOINT_URL; se aplica la resolución estándar de credenciales/región de AWS:
{
"mcpServers": {
"s3-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "AWS_REGION",
"-e", "AWS_ACCESS_KEY_ID",
"-e", "AWS_SECRET_ACCESS_KEY",
"ghcr.io/jakeperalta7/s3-mcp:latest"
]
}
}
}Sin Docker (uv)
uvx --from git+https://github.com/JakePeralta7/s3-mcp s3-mcp{
"mcpServers": {
"s3-mcp": {
"command": "uvx",
"args": ["--from", "git+https://github.com/JakePeralta7/s3-mcp", "s3-mcp"],
"env": {
"S3_ENDPOINT_URL": "http://localhost:9000",
"AWS_ACCESS_KEY_ID": "...",
"AWS_SECRET_ACCESS_KEY": "..."
}
}
}
}Desarrollo
uv sync --group dev # install deps into .venv
uv run pytest -q # unit tests (boto3 mocked, no network)
docker build -t s3-mcp:dev .Punto de entrada: python -m s3_mcp (solo transporte stdio).
Publicación
Cada push a main ejecuta las pruebas y luego publica ghcr.io/<owner>/<repo>:<version> + :latest, donde <version> se lee de version en pyproject.toml. Para publicar, incrementa la versión y fusiona a main. No se utilizan etiquetas Git.
Licencia
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables interaction with S3-compatible storage services like AWS S3 and Cloudflare R2, supporting bucket management, object listing, reading, uploading, and deletion operations.5295ISC
- AlicenseNot gradedqualityFmaintenanceEnables interaction with AWS S3 through MCP, supporting bucket and object management, lifecycle configurations, tagging, policies, CORS settings, presigned URLs, and file uploads/downloads.3MIT
- FlicenseAqualityDmaintenanceProvides tools for interacting with MinIO and S3-compatible object storage through MCP clients like Claude. It enables comprehensive bucket and object management, including listing, creating, uploading, and generating presigned URLs.132
- AlicenseAqualityCmaintenanceEnables MCP clients to connect to AWS S3 buckets, list, upload, and read objects in various formats, supporting public and private buckets with multiple transport modes.4MIT
Related MCP Connectors
Manage SRG+ hubs, channels, content, assets, users, and workspaces from any MCP-aware AI agent.
34 production API tools over one hosted MCP endpoint.
Official Sevalla MCP — full PaaS API access through just 2 tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JakePeralta7/s3-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server