Connect your agent over MCP or give it an API key. It uploads, manages, and shares files. You stay in control.
Trusted by
Sign in with Google to access your personal dashboard.
Generate an API key from your dashboard in one click.
Add Stashy as an MCP server, or pass the key to your agent and point it to your instance.
Your agent uploads files and shares them at a clean URL.
MCP, REST, gRPC, gRPC-Web, and Connect — your agent speaks whatever protocol it prefers.
In-memory for dev, local disk, Google Cloud Storage, Amazon S3, MinIO, or Cloudflare R2.
Keep each file private, share it with your team, or make it public. Change it at any time.
Give a file a readable slug and serve it from your own domain or CDN.
Deploy it yourself — Docker, bare metal, or any cloud. Your data, your rules.
Restrict access to your company's email domain. Keep your storage private to your team.
Same result either way. Use MCP with Claude Code and other MCP clients, or call the REST API from your own agents and scripts.
# 1. Add Stashy once
claude mcp add --transport http stashy http://127.0.0.1:7487/mcp
# 2. Ask for what you need
> Upload ~/Desktop/screenshot.png and make it public
● stashy · upload_file(path: "~/Desktop/screenshot.png", visibility: "public")
Done: https://stashy.example.com/V1StGXR8_Z5jdHi6B-myT/screenshothttp://127.0.0.1:7487/mcpMenu bar app that keeps your keys in the system keychain. No key in your agent config, and your agent can upload and download files on your computer.
{HOSTNAME}/mcpBuilt into every Stashy server. Connect with an API key sent as a Bearer token. Manages files already in Stashy.
With Desktop, file contents go straight between disk and the server, so large files don't use up your agent's context. MCP docs →
# 1. Upload and make it public
curl -H "Authorization: Bearer <api-key>" \
-X POST "https://stashy.example.com/v1/files?name=screenshot.png&slug=screenshot&visibility=public" \
-H "Content-Type: image/png" \
--data-binary @screenshot.png
# → {"id":"V1StGXR8_Z5jdHi6B-myT","url":"https://stashy.example.com/V1StGXR8_Z5jdHi6B-myT/screenshot", ...}# 2. Anyone can open it
curl https://stashy.example.com/V1StGXR8_Z5jdHi6B-myT/screenshotAlso available over gRPC, gRPC-Web, and Connect. API reference →
Docker Compose or bare Go binary. SQLite by default, PostgreSQL when you're ready.
# Quick start
export SESSION_SECRET="your-secret"
export GOOGLE_CLIENT_ID="..."
export GOOGLE_CLIENT_SECRET="..."
stashy serveFull setup guide in the docs.
No infra, no setup. Get notified at launch.
You're on the list. We'll be in touch!
Something went wrong. Please try again.
No spam. Just one email when it launches.
Or reach us at contact@stashy.sh