AWS S3 MCP Server
MCP Server for AWS S3 operations, providing secure access to S3 buckets through pre-signed URLs.
Tools
list_objectsList 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_objectGenerate 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_objectGenerate 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_objectDelete an object from the bucket
Input:
key(string, required): Object key to delete
Returns:
successboolean indicating deletion status
Related MCP server: S3 MCP Server
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:
NPX Command
Build
Docker build:
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.