chuk-mcp-s3-bucket-manager
by chrishayuk
README.md
# CHUK MCP S3 Bucket Manager
## Overview
The CHUK MCP S3 Bucket Manager is a Python-based tool for managing Amazon S3 buckets using the MCP (Model Context Protocol) runtime. This utility provides a simple interface for listing, creating, and deleting S3 buckets.
## Features
- List all S3 buckets
- Create new S3 buckets
- Delete existing S3 buckets
- Optional force deletion of buckets (clearing all objects)
- Supports custom AWS endpoint and region configuration
## Prerequisites
- Python 3.11+
- AWS credentials configured
- Required dependencies (installed automatically via pip)
## Installation
You can install the package directly from the repository:
```bash
pip install git+https://github.com/chrishayuk/chuk-mcp-s3-bucket-manager.git
```
## Configuration
### Environment Variables
- `AWS_ENDPOINT_URL_S3`: Optional custom S3 endpoint URL
- `AWS_REGION`: AWS region (defaults to us-east-1)
### Configuration File
The project uses a `config.yaml` file to configure the MCP server settings:
```yaml
host:
name: "chuk-mcp-s3-bucket-manager"
log_level: "INFO"
server:
type: "stdio"
mcp_servers:
s3_bucket_manager:
enabled: true
location: "."
tools:
enabled: true
module: "chuk_mcp_s3_bucket_manager.tools"
```
## Usage
### Command-Line Interface
```bash
# List buckets
chuk-mcp-s3-bucket-manager list_buckets
# Create a new bucket
chuk-mcp-s3-bucket-manager create_bucket --bucket_name my-new-bucket
# Delete a bucket
chuk-mcp-s3-bucket-manager delete_bucket --bucket_name my-bucket
# Force delete a bucket (remove all objects first)
chuk-mcp-s3-bucket-manager delete_bucket --bucket_name my-bucket --force
```
### Programmatic Usage
```python
from chuk_mcp_s3_bucket_manager import tools
# List buckets
buckets = tools.list_buckets()
# Create a bucket
result = tools.create_bucket("my-new-bucket")
# Delete a bucket
result = tools.delete_bucket("my-bucket", force=False)
```
## Development
### Setup
1. Clone the repository
2. Create a virtual environment
3. Install development dependencies:
```bash
pip install -e .[dev]
```
### Running Tests
```bash
pytest tests/
```
## Dependencies
- boto3
- chuk-mcp-runtime
- pydantic
- PyYAML
## License
[Specify your license here]
## Contributing
Contributions are welcome! Please submit pull requests or open issues on the GitHub repository.
## Support
For issues or questions, please file an issue on the GitHub issue tracker.TDQS
A3.6/5.0
Scored across 3 tools
Disambiguation5/5
The three tools—list, create, delete—are clearly distinct actions on S3 buckets with no overlap. An agent can easily select the right tool based on the desired operation.
Naming Consistency5/5
All tool names follow a consistent verb_noun pattern with underscores (list_buckets, create_bucket, delete_bucket), making the set predictable and easy to navigate.
Tool Count5/5
With only three tools, the set is minimal but perfectly scoped for a basic S3 bucket manager. Each tool covers an essential operation without redundancy.
Completeness3/5
The set covers list, create, and delete, but lacks an update operation and a way to fetch details of a specific bucket. While list_buckets can serve as a read, the absence of update leaves a notable gap for a 'manager'.
Maintenance
ActivityInactive
ResponsivenessNo issues