Give an AI agent access to S3 without giving it your AWS keys.
Stream Vessel is a hosted MCP server for S3 and S3-compatible storage. Your agent gets a token with a tier and an expiry; your access keys stay with Stream Vessel. Revoke the token and the agent is out, with no key to rotate.
Why not put S3 keys in the MCP config?
A typical S3 MCP server runs locally and reads an access key and secret from its configuration. That key usually can do everything the key's owner can, it never expires, nothing records what the agent did with it, and taking it back means rotating a key other tools depend on.
Stream Vessel puts a revocable, expiring token between the agent and the key. The agent can use your storage, but it never holds the thing that grants the access.
How the request travels
-
1
AI client
Claude Code, Cursor, VS Code or another MCP client. Holds a Stream Vessel token, nothing else.
-
2
MCP
Tool calls over HTTP to https://app.streamvessel.com/mcp, authorised by the token.
-
3
Stream Vessel
Checks the token: not expired, not revoked, tier allows the call. Logs the call.
-
4
Your connection
The storage connection you added, with keys encrypted server-side.
-
5
Your storage
AWS S3 or any S3-compatible provider. Sees an ordinary signed S3 request.
What protects your storage
- Credentials stay with Stream Vessel. Access keys are encrypted with AES-256 on Stream Vessel's servers. They are not in the AI client, its config file, or the conversation.
- Tiered tokens. Each token has a tier, READ, WRITE or FULL. A READ token lets the agent list, search and read, and change nothing.
- Expiry. Pick 30 days, 90 days, a year, a date, or never. An expired token stops working without you doing anything.
- Revocation. Revoke a token from the token list. The storage key underneath does not change, so nothing else breaks.
- Audit log and rate limits. Stream Vessel logs every tool call made with your tokens on the server, and rate-limits them.
- You choose the storage. An agent reaches the connections you added, and connections shared with you at the lower of the token's tier and the share's level. A connection whose key is limited to one bucket keeps the agent in that bucket.
Coming soon Restrict a token to chosen connections, buckets and prefixes, and OAuth-based remote connectors for hosted AI clients.
What can an AI agent do with S3 through Stream Vessel?
List connections and buckets, list and find objects, read and write files, copy and move them, read and set metadata, create upload and download links, and delete objects or whole prefixes, within its tier. 16 tools in all, documented on the MCP server page.
Some things people ask their agent to do:
- "Find every CSV under
exports/2026/and summarise their headers." - "Read
config/app-settings.json, bump the version and write it back." - "Copy last week's reports to the
archive/prefix." - "Give me a download link for the newest backup that expires in an hour."
Which storage can the AI access?
Any connection you add to Stream Vessel Cloud: AWS S3 and S3-compatible storage. The endpoint has to be reachable from the internet, because MCP calls run on Stream Vessel's servers.
S3 MCP server questions
What is an S3 MCP server?
Can Claude access S3 through Stream Vessel?
claude mcp add command and a Stream Vessel token, then works with your buckets through 16 tools. Other MCP clients that support remote HTTP servers with an Authorization header, such as Cursor and VS Code, work the same way.