S3

Provides programmatic access to manage S3 buckets, objects, policies, tagging, lifecycle rules, and CORS via MCP.
  • other

2

GitHub Stars

other

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "rccyx-s3-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "AWS_SECRET_ACCESS_KEY=your_access_key",
        "-e",
        "AWS_ACCESS_KEY_ID=your_access_key",
        "-e",
        "AWS_REGION=your_region",
        "ashgw/s3-mcp:latest"
      ],
      "env": {
        "AWS_REGION": "your_region",
        "AWS_ACCESS_KEY_ID": "your_access_key",
        "AWS_SECRET_ACCESS_KEY": "your_access_key"
      }
    }
  }
}

This MCP server lets you manage S3 buckets and objects, including lifecycle rules, policies, tagging, and CORS settings, all through a unified programmable interface. It automates common storage tasks, making it easier to integrate S3 operations into your apps, workflows, or testing pipelines.

How to use

You interact with the S3 MCP server through a client that communicates via MCP. You can list buckets, create and configure buckets, upload and download objects, manage policies and lifecycle rules, set and read tags, and configure access controls like CORS. Use the MCP client to call the available functions described under Tools to perform these operations in your scripts or automation flows.

How to install

Prerequisites: you need Docker installed on your machine and access keys for your S3-compatible service (or AWS). You will also need an MCP client to invoke the server’s endpoints.

Cursor (recommended) configuration to run the S3 MCP server via MCP routing. Add this to your Cursor MCP setup to start the server through MCP orchestration.

{
  "mcpServers": {
    "s3-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "AWS_SECRET_ACCESS_KEY=your_access_key",
        "-e",
        "AWS_ACCESS_KEY_ID=your_access_key",
        "-e",
        "AWS_REGION=your_region",
        "ashgw/s3-mcp:latest"
      ]
    }
  }
}

Additional install methods

If you prefer running directly with Docker, you can start the server manually using the pre-built image. This method requires you to supply your credentials and region as environment variables.

docker run --rm -it \
  -e AWS_ACCESS_KEY_ID=your_access_key \
  -e AWS_SECRET_ACCESS_KEY=your_secret_key \
  -e AWS_REGION=your_region \
  ashgw/s3-mcp

Environment variables

Set the AWS credentials and region used by the server.

export AWS_ACCESS_KEY_ID=your_access_key
export AWS_SECRET_ACCESS_KEY=your_secret_key
export AWS_REGION=your_region

Available tools

list_buckets

List all S3 buckets accessible with the provided credentials.

create_bucket

Create a new S3 bucket with optional configurations such as versioning, encryption, and access controls.

list_objects

List objects within a specified bucket, with support for prefixes and pagination.

get_object

Retrieve the contents of a specified object from a bucket.

put_object

Upload an object to a bucket, with options for metadata and tags.

delete_object

Delete a specific object from a bucket.

generate_presigned_url

Create a presigned URL for temporary access to an object for upload or download.

set_bucket_policy

Apply or update a bucket policy to control access.

get_bucket_policy

Retrieve the current policy for a bucket.

delete_bucket_policy

Remove the policy from a bucket.

lifecycle_configuration

Manage lifecycle rules to automate transitions and expirations of objects.

object_tagging

Set and read tags on individual objects.

cors_configuration

Get and set Cross-Origin Resource Sharing rules for a bucket.

copy_object

Copy an object from one location to another within S3.

download_file_to_local

Download a file from a bucket to a local path.

upload_local_file

Upload a local file to a bucket with a target key.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational