list_objectsLABSCO SUMMARY
Bucket access without the bytes going through the conversation.
Because the read and write tools hand back pre-signed URLs, a large object never has to be pulled into the model's context to be moved — and the whole surface stays pinned to the one bucket configured at launch.
What it is
An S3 client fixed to a single bucket named at startup. Reads and writes are handled with pre-signed URLs — get_object and put_object return a URL rather than the bytes, so large files move directly between the client and S3.
What you get
- Objects listed with keys, sizes and last-modified dates, filtered by prefix
- A pre-signed download URL for an object, expiring after a default lifetime
- A pre-signed upload URL for a key, with the same default expiry
- Objects deleted, with the outcome returned
Requirements
The bucket name as BUCKET_NAME and a REGION, which defaults to ap-southeast-1. AWS credentials come from the standard sources — environment variables, an IAM role or the credentials file. It runs from a Docker image you build from the clone.
Setup effort
Run a container — build the image from the repository, then point your client at it
USE CASES
Finding an object you only half remember
List by prefix and read the keys, sizes and dates back to identify the right one.
Handing someone a file
Generate a download URL that expires, instead of copying the object somewhere it does not belong.
Taking delivery of a file
Issue an upload URL for the key you want it stored under and let the client upload straight to S3.
Clearing out what you no longer keep
List what sits under a prefix and delete the objects that should not be there.
4 tools
Listed in project docs. Your client may show a different list.
get_objectput_objectdelete_objectBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation.
Requires
- docker on PATH
- BUCKET_NAME — the one S3 bucket the server works on
- AWS_ACCESS_KEY_ID in your environment
- AWS_SECRET_ACCESS_KEY in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Build the image from the repository, then point your client at it.
Server setup
git clone https://github.com/OpenWorkspace-o1/aws-ow-s3-mcp.git
cd aws-ow-s3-mcp
docker build -t mcp/aws-ow-s3-mcp-server .Add the configuration under MCP Clients to Claude Desktop, with your bucket name, region and AWS keys
MCP Clients
Claude Desktop
{
"mcpServers": {
"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-server"
],
"env": {
"BUCKET_NAME": "<YOUR_BUCKET_NAME>",
"REGION": "<YOUR_REGION>",
"AWS_ACCESS_KEY_ID": "<YOUR_ACCESS_KEY>",
"AWS_SECRET_ACCESS_KEY": "<YOUR_SECRET_KEY>"
}
}
}
}The image name is the tag the build step gives it, mcp/aws-ow-s3-mcp-server — the README's own block says mcp/aws-ow-s3-mcp, which nothing builds. <YOUR_REGION> defaults to ap-southeast-1.