AWS S3 MCP Server provides Model Context Protocol access to AWS S3 for storage tasks. It can list buckets, browse objects, upload/download content, and generate presigned URLs. Package metadata in the source also identifies it as a TypeScript (strict) project and an MIT-licensed npm module.
🛠️ Key Features
List S3 buckets
Browse S3 objects
Upload to S3
Download from S3
Generate presigned URLs
🚀 Use Cases
Retrieve and inspect objects stored in AWS S3
Move files between local systems and S3
Share temporary access to S3 resources via presigned URLs
⚡ Developer Benefits
Implements MCP with an S3-focused tool surface
Distributed as an npm package (mcp-server-s3)
Built in TypeScript (strict)
⚠️ Limitations
Scope is described as AWS S3 operations only (no non-S3 storage support indicated)
Manage AWS S3 buckets and objects from your AI assistant. Browse files, upload and download content, and generate presigned URLs.
bash
npx mcp-server-s3
Works with Claude Desktop, Cursor, VS Code Copilot, and any MCP client. Uses your existing AWS credentials (~/.aws/credentials or environment variables).
S3 is the most widely used cloud storage service, but managing it from the command line means remembering aws s3 ls, aws s3 cp, presigned URL syntax, and various flags. Google has an official MCP for GCS, Cloudflare has one for R2, but AWS S3 doesn't have a polished standalone MCP server on npm. This one lets you ask your assistant to list buckets, download a config file, upload content, or generate a temporary sharing link. It uses the standard AWS credential chain, so if your CLI already works, this works too.
Tools
Tool
What it does
list_buckets
List all S3 buckets in your AWS account.
list_objects
List objects in a bucket, with optional prefix filter.
IAM roles: when running on EC2, ECS, Lambda, or similar
Set AWS_REGION (defaults to us-east-1) and make sure your credentials have the necessary S3 permissions: s3:ListBuckets, s3:ListBucket, s3:GetObject, s3:PutObject, s3:DeleteObject, s3:HeadBucket.
Agent Plugins
This repo is an Agent Plugins 1.0.0 package: plugin.json, portable mcp.json, and skills/ ship together with the MCP server.
For Cursor, clone the repo and copy or symlink it to ~/.cursor/plugins/local/mcp-server-s3, then reload the window. Skills and MCP show up under Customize > Plugins.
Agent Plugins v1 does not ship OAuth or AWS SSO wiring. Set AWS_REGION and credentials via env or ~/.aws/credentials in the MCP client host. One-click install is not offered because secrets stay in env.
FAQ
What is mcp-server-s3?
An MCP server for S3: list buckets and objects, read/upload text objects, delete keys, presigned URLs, and bucket checks.
How does authentication work?
Standard AWS credential chain: env vars, shared credentials file, or IAM role on the machine running the MCP server.
Which env vars should I set in MCP config?
At minimum AWS_REGION. Often AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY unless you rely on ~/.aws/credentials or a role.
Can I install it as an Agent Plugin in Cursor?
Yes, via ~/.cursor/plugins/local/mcp-server-s3. Ensure the Cursor process can read the same AWS credentials as your CLI.
Why no one-click Cursor button?
AWS keys cannot be embedded in a portable install link. Use the JSON under Quick Start.
Example prompts
"List all my S3 buckets"
"Show me the files in my-bucket/uploads/"
"Download the config.json from my-bucket"
"Upload this content to my-bucket/notes.txt"
"Generate a presigned URL for this file that expires in 1 hour"
Development
bash
npm install
npm run typecheck
npm run build
npm test
npm run format
npm run lint
See also
More MCP servers and developer tools on my portfolio.