AWS S3

OpenWorkspace-o1 S3 Model Context Protocol Server.
  • typescript

2

GitHub Stars

typescript

Language

6 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": {
    "openworkspace-o1-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": {
        "REGION": "<AWS_REGION>",
        "BUCKET_NAME": "<YOUR_BUCKET_NAME>",
        "AWS_ACCESS_KEY_ID": "<YOUR_ACCESS_KEY>",
        "AWS_SECRET_ACCESS_KEY": "<YOUR_SECRET_KEY>"
      }
    }
  }
}

This MCP server gives you secure access to your AWS S3 buckets by generating and validating pre-signed URLs for common operations. You can list objects, retrieve individual objects via a time-limited URL, upload new objects through a pre-signed URL, and delete objects, all without exposing your credentials.

How to use

You interact with the AWS S3 MCP server to perform the following actions: list_objects, get_object, put_object, and delete_object. Each operation leverages pre-signed URLs to grant time-limited access to your S3 resources. The pre-signed URLs for retrieval and upload expire after a configurable number of seconds (default 3600 seconds). Ensure your bucket name and AWS region are correctly configured.

Prerequisites for using the MCP server include providing your bucket name and AWS region, along with AWS credentials. You can supply credentials through environment variables, IAM roles, or the standard AWS credentials file. The following environment variables are required by the server configuration you will run:

  • BUCKET_NAME — name of your S3 bucket (required)
  • REGION — AWS region (default: ap-southeast-1)
  • AWS_ACCESS_KEY_ID — your AWS access key id
  • AWS_SECRET_ACCESS_KEY — your AWS secret access key

Run options

You can run the MCP server using Docker or via NPX. When running with Docker, the server container is started with a set of environment variables that you provide. When using NPX, you pass the package name and include the same environment variables.

Docker run example (command and arguments are shown as a complete command). This starts the MCP server in a container and passes the required environment variables.

Basic workflow

  1. Ensure you have set BUCKET_NAME and REGION, and provide AWS credentials in your environment.

  2. Start the MCP server using one of the supported run methods (Docker or NPX). You will then be able to request pre-signed URLs for get_object and put_object, list objects with list_objects, and delete objects with delete_object.

Generated URLs and usage

  • get_object returns object_url which is a pre-signed URL to access a specific object. The URL expires after the configured expiry duration (default 3600 seconds).

  • put_object returns upload_url which is a pre-signed URL to upload a specific object. The URL expires after the configured expiry duration (default 3600 seconds).

  • list_objects returns an array of objects with keys, sizes, and last-modified dates, filtered by an optional prefix.

Security considerations

Treat pre-signed URLs as sensitive tokens. Only share them with trusted clients and keep your AWS credentials secure. Use the minimum necessary permissions for the bucket and objects, and rotate keys regularly.

Available tools

list_objects

List objects in an S3 bucket with an optional prefix filter. Returns an array of objects with keys, sizes, and last modified dates.

get_object

Generate a pre-signed URL to retrieve an object by key. Supports an expiry time in seconds (default 3600) and returns object_url.

put_object

Generate a pre-signed URL to upload an object by key. Supports an expiry time in seconds (default 3600) and returns upload_url.

delete_object

Delete an object from the bucket by key and return a success status.

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