s3-tools
This server provides tools for interacting with AWS S3 buckets via the Model Context Protocol.
List all S3 buckets in your AWS account using the
list-s3-bucketstoolOptionally specify the AWS region for listing buckets
Integrates with Claude Desktop for managing S3 bucket operations
Provides tools for interacting with AWS S3 buckets, allowing users to list all S3 buckets in their AWS account with optional region specification.
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-toolslist all my S3 buckets in the us-east-1 region"
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-tools MCP Server
An MCP server that provides tools for interacting with AWS S3 buckets. This server enables direct access to S3 bucket operations through the Model Context Protocol.
Features
Tools
The server currently implements the following tools:
list-s3-buckets: Lists all S3 buckets in your AWS account
Optional
regionparameter to specify AWS regionReturns a formatted list of bucket names
Related MCP server: AWS S3 Control MCP Server
Prerequisites
Python 3.13 or higher
AWS credentials configured (see AWS Credentials Setup)
uv package manager
Installation
From PyPI
uvx install s3-toolsFrom Source
Clone the repository
Install using uv:
uv pip install .AWS Credentials Setup
This server requires AWS credentials to access your S3 buckets. You can configure credentials in several ways:
AWS CLI configuration (Recommended)
aws configureThis will create/update credentials in
~/.aws/credentialsEnvironment Variables
export AWS_ACCESS_KEY_ID="your_access_key" export AWS_SECRET_ACCESS_KEY="your_secret_key" export AWS_DEFAULT_REGION="your_preferred_region" # optionalIAM Role (if running on AWS infrastructure)
For more information about AWS credentials, see the AWS documentation.
Configuration
Claude Desktop
Add the server configuration to your Claude Desktop config file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"s3-tools": {
"command": "uvx",
"args": ["s3-tools"]
}
}
}Development Configuration
For development/testing, you can run the server directly from source:
{
"mcpServers": {
"s3-tools": {
"command": "uv",
"args": [
"--directory",
"/path/to/s3-tools",
"run",
"s3-tools"
]
}
}
}Development
Building
Sync dependencies:
uv syncBuild package:
uv buildPublishing
To publish to PyPI:
uv publishNote: You'll need PyPI credentials configured via:
Token:
--tokenorUV_PUBLISH_TOKENOr username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector for development:
npx @modelcontextprotocol/inspector uv run s3-toolsLicense
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Available Tools
1 toollist-s3-bucketsC
List all S3 buckets in your AWS account
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | AWS region (optional, defaults to configured region) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'all S3 buckets' which implies completeness, but doesn't address permissions needed, rate limits, pagination, error conditions, or what the output looks like. For a tool with zero annotation coverage, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a simple list operation and front-loads the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations, no output schema, and minimal behavioral disclosure, the description is incomplete. It should address authentication requirements, output format, and potential limitations given this is an AWS operation that could have permission constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single optional 'region' parameter. The description doesn't add any parameter-specific information beyond what's in the schema. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('all S3 buckets in your AWS account'), providing a specific verb+resource combination. It doesn't need to distinguish from siblings since none exist, so it earns a 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, prerequisites, or contextual constraints. It simply states what the tool does without any usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
With only one tool, there is no possibility for ambiguity or overlap between tools, as there are no other tools to compare it to. The tool's purpose is clearly defined and distinct by default.
Since there is only one tool, naming consistency is inherently perfect with no deviations or mixed conventions to evaluate. The tool name 'list-s3-buckets' follows a clear verb_noun pattern.
A single tool for an S3 server is too few for the apparent scope, as S3 involves operations like uploading, downloading, deleting objects, and managing buckets beyond listing. This minimal set will likely cause agent failures due to significant functional gaps.
The tool surface is severely incomplete for an S3 domain, covering only bucket listing. There are obvious gaps for core operations such as creating/deleting buckets, managing objects (upload, get, delete), and other essential S3 functionalities, making it inadequate for typical use cases.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Tigris MCP Server seamlessly connects AI agents to Tigris bucket and object management.
The AWS Knowledge MCP server is a fully managed remote Model Context Protocol server that provides real-time access to official AWS content in an LLM-compatible format. It offers structured access to AWS documentation, code samples, blog posts, What's New announcements, Well-Architected best practices, and regional availability information for AWS APIs and CloudFormation resources. Key capabilities include searching and reading documentation in markdown format, getting content recommendations, listing AWS regions, and checking regional availability for services and features.
MCP server for Product Management
Related MCP Servers
- AlicenseAqualityFmaintenanceAn Amazon S3 Model Context Protocol server that allows Large Language Models like Claude to interact with AWS S3 storage, providing tools for listing buckets, listing objects, and retrieving object contents.392830MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP (Multi-Agent Conversation Protocol) Server that enables interaction with AWS S3 Control API through natural language, auto-generated using AG2's MCP builder.
- AlicenseAqualityDmaintenanceA Model Context Protocol (MCP) server for AWS S3 integration using FastMCP and boto3. This server provides access to S3 functionality through MCP-compatible tools.101MIT
- AlicenseAqualityDmaintenanceMCP server for AWS S3 — list buckets, browse objects, upload/download files, and generate presigned URLs.7904MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sofianhamiti/mcp-server-s3'
If you have feedback or need assistance with the MCP directory API, please join our Discord server