MCP.so
Sign In
Servers

Sample S3 Model Context Protocol Server

@aws-samples

Overview

What is Sample S3 Model Context Protocol Server?

An MCP server implementation for retrieving data such as PDFs from AWS S3, intended for use with LLMs to load information into context.

How to use Sample S3 Model Context Protocol Server?

Obtain AWS credentials with appropriate S3 permissions, then configure the server in Claude Desktop's config file using either the development command (uv) or the published server command (uvx). The server provides tools and resources for interacting with S3 buckets and objects.

Key features of Sample S3 Model Context Protocol Server?

  • Exposes AWS S3 data through MCP Resources (PDF documents only, limit 1000 objects)
  • Provides ListBuckets tool to list all buckets owned by the authenticated sender
  • Provides ListObjectsV2 tool to list up to 1000 objects in a bucket
  • Provides GetObject tool to retrieve an object by its full key name
  • Supports virtual-hosted-style and path-style requests for GetObject

Use cases of Sample S3 Model Context Protocol Server?

  • Load PDF documents from S3 into an LLM's context for analysis
  • List all S3 buckets accessible to the authenticated AWS account
  • Retrieve specific objects from S3 by key for downstream processing
  • Enumerate objects in a bucket using the ListObjectsV2 tool

FAQ from Sample S3 Model Context Protocol Server

What file formats are supported?

Only PDF documents are currently supported for resource retrieval.

Is there a limit on the number of objects?

Yes, the server is limited to 1000 objects per request.

How do I authenticate with AWS?

Obtain an AWS access key ID, secret access key, and region from the AWS Management Console, and ensure the credentials have appropriate S3 permissions.

How can I debug the server?

Use the MCP Inspector by running npx @modelcontextprotocol/inspector uv --directory <path> run s3-mcp-server.

Where does the server configuration go?

For Claude Desktop, add the server configuration to claude_desktop_config.json (located in ~/Library/Application Support/Claude/ on macOS or %APPDATA%/Claude/ on Windows).

More from Files & Storage