AWS S3 MCP Server
Manage AWS S3 operations, providing secure access to S3 buckets through pre-signed URLs.
AWS S3 MCP Server
MCP Server for AWS S3 operations, providing secure access to S3 buckets through pre-signed URLs.
Tools
-
list_objects- List objects in an S3 bucket
- Input:
prefix(string, optional): Prefix filter for object keys
- Returns: Array of objects with keys, sizes, and last modified dates
-
get_object- Generate a pre-signed URL for accessing an object
- Inputs:
key(string, required): Object key to retrieveexpiry(number, optional): URL expiration time in seconds (default: 3600)
- Returns:
object_urlcontaining the pre-signed URL
-
put_object- Generate a pre-signed URL for uploading an object
- Inputs:
key(string, required): Object key to uploadexpiry(number, optional): URL expiration time in seconds (default: 3600)
- Returns:
upload_urlcontaining the pre-signed URL
-
delete_object- Delete an object from the bucket
- Input:
key(string, required): Object key to delete
- Returns:
successboolean indicating deletion status
Setup
Environment Variables
The server requires the following environment variables:
BUCKET_NAME: The name of your S3 bucket (required)REGION: AWS region (default: "ap-southeast-1")
AWS credentials should be configured using standard AWS credential configuration methods (environment variables, IAM roles, or AWS credentials file).
Usage with Claude Desktop
Add the following to your 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>"
}
}
}
}
NPX Command
{
"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>"
}
}
}
}
Build
Docker build:
docker build -t mcp/aws-ow-s3-mcp-server .
Development
The server is built using:
- Node.js
- TypeScript
- @modelcontextprotocol/sdk
- @aws-sdk/client-s3
- @aws-sdk/s3-request-presigner
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Related Servers
MinIO
MCP server and client for MinIO object storage, configured via environment variables.
CData IBM Cloud Object Storage
A read-only MCP server for IBM Cloud Object Storage, powered by CData. Requires a separate CData JDBC Driver license.
Google Photos
Access and manage your Google Photos library with AI assistants.
MCP Google Drive Server
Connect your AI assistant to Google Drive for file management and access.
AWS S3
Manage AWS S3 buckets and objects, including policies, tagging, and configurations.
Box
Interact with the Intelligent Content Management platform through Box AI.
4EVERLAND Hosting
Deploy AI-generated code instantly to decentralized storage networks like Greenfield, IPFS, and Arweave.
Storacha MCP Storage Server
An MCP server for Storacha hot storage, enabling AI applications to store and retrieve files using IPFS and CIDs.
Dropbox MCP Server
An MCP server for interacting with Dropbox, allowing clients to manage files and folders.
AIStor
An MCP server for interacting with AIStor and MinIO object stores.