Two commands, one handoff

Send a file (one request, up to 512 MB)

curl -F "file=@report.zip" https://upload.83blue.com/api/upload

The JSON response contains the share url, the password and a ready-made download command. Optional fields: expires_days (1-180) and a custom password. Files up to 1 TB use the resumable chunked API.

Receive a file

curl -fL -OJ "https://upload.83blue.com/api/download?token=TOKEN&password=PASSWORD"

That is the whole handoff: agent A uploads and shares the url and password, agent B downloads. Downloads support HTTP Range, so interrupted transfers resume. Fetching this page with a curl or wget user agent returns these instructions as plain text.

Or connect over MCP

claude mcp add --transport http transfer https://upload.83blue.com/mcp

The remote MCP server at https://upload.83blue.com/mcp (Streamable HTTP, no authentication) exposes four tools: share_text, share_file, share_conversation and receive_file. It works with Claude Code, claude.ai custom connectors, Cursor, VS Code and ChatGPT developer mode. Setup for each client. Speaking A2A instead? The agent card lives at /.well-known/agent-card.json and the endpoint at /a2a.

How do I send a file from one AI agent to another?

Upload it here, then pass two strings to the other agent: the url and the password. The receiving agent downloads with one request, whether it lives in another terminal, another cloud, another chat window or another company. No shared filesystem, no SSH keys, no cloud bucket permissions.

Better still, every upload gets a handoff url. Paste that single url into any chat with any model: fetching it returns a markdown briefing, the file manifest and the exact download commands, so the receiving model immediately knows what it has and what to do. The share_conversation MCP tool packages a whole working context (transcript plus files, with HANDOFF.md at the bundle root) behind one such url:

Pick up where I left off. Fetch this url for the full briefing and files:
https://upload.83blue.com/h/TOKEN/KEY

Building on Google's A2A protocol? Its FileWithUri parts deliberately leave file hosting out of scope. A transfer url here works as the uri your FilePart points at.

Frequently asked questions

Why would an AI agent need a file transfer service?

Two agents on different machines, or in different chat sessions, usually have no shared filesystem and no SSH route between them. 83blue transfer is the neutral stepping stone: agent A uploads the files and passes the link and password to agent B, which downloads them with a single request. It replaces fragile direct connections with two plain HTTPS calls.

Do AI agents need an account or API key to use 83blue transfer?

No. There is nothing to register, no API key, and no cookies. A single curl command uploads a file, and automated or bot use is explicitly welcome.

How does an AI agent upload a file?

One request for files up to 512 MB: curl -F "file=@report.zip" https://upload.83blue.com/api/upload returns JSON with the share url and password. Files up to 1 TB use the resumable chunked API, and agents connected over MCP can call the share_text, share_file or share_conversation tools.

How does the receiving agent download the file?

With the link and password: curl -fL -OJ "https://upload.83blue.com/api/download?token=TOKEN&password=PASSWORD" saves the file locally. Over MCP, the receive_file tool fetches metadata, lists zip bundle contents, and returns small text files inline.

Does 83blue transfer have an MCP server?

Yes. A remote MCP server (Streamable HTTP, no authentication) runs at https://upload.83blue.com/mcp with four tools: share_text, share_file, share_conversation and receive_file. In Claude Code: claude mcp add --transport http transfer https://upload.83blue.com/mcp. It also works with claude.ai custom connectors, Cursor, VS Code and ChatGPT developer mode.

Is 83blue transfer secure?

Every transfer travels over HTTPS and gets an unguessable link plus a separate auto-generated password, stored only as a bcrypt hash. Files are deleted automatically when they expire, and there is no tracking and no advertising.

How long are files kept?

By default 6 months for web and HTTP API uploads; MCP tool uploads default to 30 days. The API and MCP tools accept an expires_days value from 1 to 180, so short-lived handoffs can expire in a day.

Can humans use 83blue transfer?

Yes, through the human page at https://upload.83blue.com/human, which has a traditional drag-and-drop uploader. The homepage is deliberately kept lean for machines.

Is 83blue transfer really free?

Yes. Uploads, downloads, the API and the MCP server are free within fair use, for humans and for automated agents alike.

API docs · OpenAPI · llms.txt · llms-full.txt · MCP endpoint · For humans