S3 Uploader MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@S3 Uploader MCP ServerUpload the file /data/report.pdf to S3"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
S3 Uploader MCP Server
A Model Context Protocol (MCP) server that provides file upload functionality to AWS S3 buckets with automatic MIME type detection.
Features
Upload files to S3 buckets
Automatic MIME type detection based on file extensions
Support for common file types (images, documents, audio, video, archives)
Configurable S3 object keys
Comprehensive error handling
Setup
Prerequisites
Node.js (version 14 or higher)
AWS credentials with S3 access
An S3 bucket
Installation
Clone or download this repository
Install dependencies:
npm install
Configuration
Set the following environment variables:
export AWS_ACCESS_KEY_ID="your-access-key-id"
export AWS_SECRET_ACCESS_KEY="your-secret-access-key"
export AWS_REGION="your-aws-region"
export BUCKET_NAME="your-s3-bucket-name"Usage
As an MCP Server
Start the server:
node index.jsThe server exposes one tool:
upload_file
Upload a file to the configured S3 bucket.
Parameters:
filePath(required): Absolute path to the file to uploadkey(optional): S3 object key. If not provided, uses the filename
Example:
{
"name": "upload_file",
"arguments": {
"filePath": "/path/to/your/file.jpg",
"key": "uploads/my-image.jpg"
}
}Supported MIME Types
The server automatically detects MIME types for the following file extensions:
Images: jpg, jpeg, png, gif, webp, bmp, ico, svg, tiff
Documents: pdf, doc, docx, xls, xlsx, ppt, pptx, rtf
Text: txt, csv, html, css, js, json, xml, md
Audio: mp3, wav, ogg, m4a, flac
Video: mp4, avi, mov, wmv, flv, webm, mkv
Archives: zip, rar, tar, gz, 7z
Other: bin, exe, dmg (treated as binary)
Unknown file types default to application/octet-stream.
Integration with Claude Desktop
To use this MCP server with Claude Desktop, add it to your claude_desktop_config.json:
{
"mcpServers": {
"s3-uploader": {
"command": "node",
"args": ["/path/to/s3-mcp-server/index.js"],
"env": {
"AWS_ACCESS_KEY_ID": "your-access-key-id",
"AWS_SECRET_ACCESS_KEY": "your-secret-access-key",
"AWS_REGION": "your-aws-region",
"BUCKET_NAME": "your-s3-bucket-name"
}
}
}
}Error Handling
The server provides detailed error messages for common issues:
Missing environment variables
File not found
Invalid file paths
AWS/S3 errors
Network connectivity issues
Security Considerations
Store AWS credentials securely (use environment variables, not hardcoded values)
Ensure the S3 bucket has appropriate permissions
Consider using IAM roles instead of access keys in production
Validate file types and sizes before upload if needed
Development
To test the server locally:
# Test tools listing
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}' | node index.js
# Test file upload (replace with actual file path)
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "upload_file", "arguments": {"filePath": "/path/to/test/file.txt"}}}' | node index.jsThis 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.
Latest Blog Posts
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/artemu78/mcp-server-s3-uploader'
If you have feedback or need assistance with the MCP directory API, please join our Discord server