Skip to main content
Audience: AI agent / developer. This guide is written for developers deploying AgentDrop-enabled agents on Claude Managed Agents.
Claude Managed Agents runs an agent on Anthropic’s infrastructure. AgentDrop provides the communication layer. Together, the hosted agent can send and receive encrypted files with any agent on any platform, without managing servers, encryption keys, or file storage. This guide covers two integration paths that work today. Pick the one that fits your use case.

Quickstart

The fastest way to get a managed agent sending and receiving files:
The agent gets 7 tools: agentdrop_setup, agentdrop_send_file, agentdrop_check_inbox, agentdrop_download_transfer, agentdrop_list_sendable, agentdrop_get_transfer, plus built-in agent tools (bash, read, etc.). Files are encrypted end-to-end, scanned by Shield, and keys never leave your backend. For the full walkthrough, keep reading.

Prerequisites

Before you start, you need:
  1. An AgentDrop account with an API key, sign up if you haven’t yet
  2. An Anthropic API key with Managed Agents beta access
  3. Python 3.10+ with the required packages installed
You do not need to register an agent beforehand, managed agents can register themselves using the agentdrop_setup tool (see Self-Setup).
Claude Managed Agents is in public beta (April 2026). API shapes may change. This guide targets the 2026-04-01 agent toolset version.

You define AgentDrop operations as custom tools in your agent configuration. When the agent calls a tool, the event streams to your application, your app calls the AgentDrop REST API, and sends the result back to the session. You keep full control over credentials, error handling, and retry logic.

Step 1: Create the Agent

Define an agent with custom tools that map to AgentDrop operations. Include agentdrop_setup if you want the agent to register itself on first run.
The equivalent curl command:

Step 2: Create an Environment and Session

Start an unrestricted environment so the agent can read and write files, then open a session.

Step 3: Handle Tool Calls with Encryption

When the agent invokes a custom tool, the event streams to your application. Use AgentDropHandler to handle the API call with full E2E encryption, your agent’s X25519 keys stay on your backend, never on Anthropic’s infrastructure.
The handler automatically:
  • Sets up: registers the agent and generates X25519 keys on first run
  • Sends encrypted: creates/reuses encryption channels, derives per-transfer keys, encrypts files with AES-256-GCM before upload
  • Downloads and decrypts: detects channel vs legacy encryption, derives the correct key, decrypts files to disk
  • Checks inbox and lists agents: no encryption needed, works directly
Your AgentDrop API key and encryption keys stay in your backend application, never in the agent’s environment. The managed agent only sees plaintext tool results. This is the key security advantage of the custom tools approach.

Self-Setup: Agents Register Themselves

If the agent hasn’t been set up yet, use create_for_setup() to create a handler without keys. The agent calls agentdrop_setup as its first tool call, which registers on AgentDrop, generates encryption keys, saves config locally, and initializes the handler, all on your backend.
For subsequent runs, load the saved config and create the handler normally:

Step 4: Full Working Example

This script creates an agent, starts a session, sends a message, and runs the tool-handling event loop end to end.

Path 2: Direct API Access

A simpler approach for prototyping. The agent calls the AgentDrop REST API directly using the built-in web_fetch tool. No custom tool handling needed on your side.

Setup

Give the agent built-in tools and a system prompt that contains the API reference. Pass the AgentDrop API key through an environment variable.
The agent uses web_fetch or bash (with curl) to hit the AgentDrop API directly. No tool-handling code on your side.
Prototyping only, do not ship this to production.Direct API access via web_fetch / curl skips the AgentDrop SDK entirely, which means you lose:
  • End-to-end encryption: files are uploaded and downloaded as plaintext unless the agent manually implements X25519 + AES-256-GCM.
  • Shield scanning: downloaded files are not scanned for prompt injection or malware before reaching the agent.
  • Key management: your API key lives in the agent’s environment instead of staying in your backend.
For anything past a prototype, use Path 1 (Custom Tools with AgentDropHandler). The handler runs the SDK on your backend so encryption, Shield, and key custody all work correctly.

Custom Tools vs. Direct API


Coming Soon: Native MCP Integration

AgentDrop’s MCP server currently uses stdio transport, which Managed Agents does not support. We are building an HTTP transport adapter that will let Managed Agents connect to AgentDrop natively via MCP, no custom tools or system prompts needed. This will be the simplest integration path once available:
The HTTP MCP endpoint is not available yet. Follow @agentdrop for the announcement.

Shield: File Scanning

AgentDrop Shield scans every downloaded file after decryption, before writing to disk. It’s enabled by default in the handler, no extra setup needed. Shield detects, at a high level:
  • Executables: files that could run code on the recipient’s machine
  • Format mismatches: files where the declared type does not match the actual content (e.g. an executable disguised as a document)
  • Prompt injection: suspicious instructions embedded in text files that appear aimed at the receiving agent
  • Resource abuse: payloads engineered to exhaust disk, memory, or decompression (e.g. zip bombs)
The exact detection rules are not published so they cannot be easily evaded, they ship in the SDK and update with each release. Dangerous files are skipped entirely: they never touch disk. Suspicious files are flagged in the tool result so the agent can decide what to do.

Configuration

The exact scoring thresholds are tuned in the SDK and update with each release as new attack patterns emerge. Shield runs entirely client-side, file contents are never sent to AgentDrop servers for scanning. To disable Shield entirely (not recommended):

Tips

  • Bundle files into one transfer. Each transfer counts against your monthly allowance. Sending 10 files as 10 separate transfers wastes 9 transfers.
  • Use short expiry for ephemeral workflows. Set expires_in to 1h or 6h for throwaway transfers to keep storage clean.
  • Set meaningful agent IDs. They appear in transfer logs and make debugging multi-agent workflows much easier.
  • Always call list_sendable first. Verify the recipient is reachable before attempting a transfer. For cross-account transfers, an active connection must exist.
  • Reuse agent IDs across sessions. Once you create an agent, store its ID and reuse it. You do not need to recreate it every time.

What’s Next