AWS S3

AWS S3

A sample MCP server for AWS S3 that flexibly fetches objects from S3 such as PDF documents.

69
Stars
17
Forks
0
Releases

Overview

The Sample S3 MCP Server provides a targeted way to fetch and expose AWS S3 bucket data to a Language Model Context Protocol. It exposes S3 data via Resources, which are akin to GET endpoints used to preload information into an LLM's context. The current implementation focuses on PDF documents, pulling from buckets and capping the number of accessible objects at 1,000 to balance performance and cost. The server includes tools that map to common S3 operations: ListBuckets lists all buckets owned by the authenticated user; ListObjectsV2 returns a subset of objects in a bucket (up to 1,000 per request); and GetObject retrieves a specific object by key, supporting both virtual-hosted-style and path-style requests. Configuration instructions describe how to set up AWS credentials with proper read/write permissions, and usage details show how to run the server within Claude Desktop or published server configurations. The development and debugging sections outline how to build, publish to PyPI, and debug using the MCP Inspector. The license is MIT-0.

Details

Owner
aws-samples
Language
Python
License
MIT No Attribution
Updated
2025-12-07

Features

Resources

Expose AWS S3 data through Resources to load information into the LLM's context; currently supports PDF documents and is limited to 1000 objects.

ListBuckets

Returns a list of all buckets owned by the authenticated sender of the request.

ListObjectsV2

Returns some or all (up to 1,000) of the objects in a bucket with each request.

GetObject

Retrieves an object from Amazon S3. In the GetObject request, specify the full key name for the object. Supports both virtual-hosted-style and path-style requests.

Tags

S3AWSPDFMCPResourcesListBucketsListObjectsV2GetObject