mws-s3-mcp-ai-cli
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MWS_S3_POOL | No | Signing pool | ru-central1 |
| MWS_S3_ALLOW | No | Independent write,delete,admin levels; read only by default | |
| MWS_S3_ENDPOINT | No | Optional endpoint override | |
| MWS_S3_FILE_ROOT | No | Optional confined local file root | |
| MWS_S3_AUDIT_FILE | No | Optional private append-only audit output | |
| MWS_S3_ACCESS_KEY_ID | No | S3 access key ID | |
| MWS_S3_ALLOW_INSECURE | No | Set 1 only for explicit HTTP test endpoints | |
| MWS_S3_ALLOWED_BUCKETS | No | Comma-separated bucket scope | |
| MWS_S3_ALLOWED_PREFIXES | No | Comma-separated bucket/prefix/ scope | |
| MWS_S3_SECRET_ACCESS_KEY | No | S3 secret access key | |
| MWS_S3_DESTRUCTIVE_POLICY | No | MWS_S3_DESTRUCTIVE_POLICY | confirm |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| s3_get_bucket_configB | Read location, versioning, CORS, policy and Object Lock; report absent/unsupported configuration. |
| s3_get_objectA | Read at most 262144 bytes inline as text/base64; use presign for larger objects. |
| s3_get_object_taggingC | Get object tags. |
| s3_head_objectC | Read object metadata. |
| s3_largest_objectsC | Bounded largest objects scan, default max_scan 10000; partial results carry continuation token. |
| s3_list_bucketsB | List visible buckets with pagination. |
| s3_list_multipart_uploadsC | List unfinished uploads; pass both returned markers. |
| s3_list_object_versionsC | List versions and delete markers with both pagination markers. |
| s3_list_objectsC | List a scoped prefix, at most 1000 objects per page. |
| s3_list_partsD | List multipart parts. |
| s3_prefix_usageC | Bounded usage by first-level prefixes; paginate aggregate rows with next_result_offset. |
| s3_presign_getC | Create signed GET URL; default 3600 seconds, provider maximum is unverified. |
| s3_preview_objectC | Preview first at most 65536 bytes, detected type and CSV header. |
| s3_unfinished_uploadsC | Find uploads older than N hours (default 24), bounded by max_scan. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| capabilities | |
| config | |
| pools |
TDQS
Scored across 14 tools
Most tools target a distinct S3 resource or aggregation (buckets, objects, versions, parts, tags, config, presign, largest, prefix usage). However, s3_list_multipart_uploads and s3_unfinished_uploads overlap heavily, and s3_get_object vs s3_preview_object could be confused by an agent choosing between full bounded read and preview.
Every tool uses the same s3_ prefix followed by a clear verb_noun pattern (get_object, list_buckets, list_object_versions, head_object, presign_get). No mixed casing or inconsistent verb styles.
14 tools is well within the ideal 3-15 range for an S3 inspection server. Each tool covers a distinct read or aggregation operation, and none feels redundant or trivially unnecessary.
The surface covers many read/diagnostic operations (list, get, head, tag, config, presign, multipart inspection), but it lacks any write, delete, copy, or abort-multipart-upload operations. Finding unfinished uploads without being able to abort them is a notable dead end for an S3 management surface.