ZeroDrop — Claude Code MCP server: features and setup
ZeroDrop creates disposable inboxes and pulls OTPs and magic links from incoming mail. Use it to test app signups and authentication with an AI agent.
claude mcp add --env ZERODROP_API_KEY=<ZERODROP_API_KEY> --env ZERODROP_BASE_URL=<ZERODROP_BASE_URL> --transport stdio zerodrop -- npx -y zerodrop-mcpWhat ZeroDrop does
An agent can call generate_inbox to get an address, then use wait_for_email to receive a matching message with its OTP or magic link extracted. Sender, subject, and required message contents can act as filters. check_inbox returns recent messages without waiting.
Address creation happens locally; email is handled by ZeroDrop. Without an API key, inboxes are public, and one sender can deliver mail to five different inboxes per day. Set ZERODROP_API_KEY to use a private key-bound inbox, or configure ZERODROP_BASE_URL for a self-hosted instance. On the free tier, an inbox is removed 30 minutes after its most recent message. That matters if an agent needs to retrieve mail later.
What it helps with
- test signup flows that require email verification
- retrieve an OTP without parsing message HTML
- get a magic link from an incoming message
- inspect recent messages in a test inbox
Example prompts for the agent
- Create a disposable address and test my app signup by retrieving the OTP from the email.
- Wait for my app's message containing a magic link and return the link.
- Show the recent messages in this inbox.
How to install ZeroDrop
Platform CLI
claude mcp add --env ZERODROP_API_KEY=<ZERODROP_API_KEY> --env ZERODROP_BASE_URL=<ZERODROP_BASE_URL> --transport stdio zerodrop -- npx -y zerodrop-mcpReplace <…> with your own values
Platform CLI
codex mcp add zerodrop --env ZERODROP_API_KEY=<ZERODROP_API_KEY> --env ZERODROP_BASE_URL=<ZERODROP_BASE_URL> -- npx -y zerodrop-mcpReplace <…> with your own values
Config file
{
"mcpServers": {
"zerodrop": {
"command": "npx",
"args": [
"-y",
"zerodrop-mcp"
],
"env": {
"ZERODROP_API_KEY": "<ZERODROP_API_KEY>",
"ZERODROP_BASE_URL": "<ZERODROP_BASE_URL>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"zerodrop": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"zerodrop-mcp"
],
"env": {
"ZERODROP_API_KEY": "<ZERODROP_API_KEY>",
"ZERODROP_BASE_URL": "<ZERODROP_BASE_URL>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e ZERODROP_API_KEY=<ZERODROP_API_KEY> -e ZERODROP_BASE_URL=<ZERODROP_BASE_URL> zerodrop npx -y zerodrop-mcpReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about ZeroDrop
How do I install ZeroDrop in Claude Code?
Run claude mcp add zerodrop-mcp -e ZERODROP_API_KEY=<ZERODROP_API_KEY> -- npx -y zerodrop-mcp. This adds the MCP server with an API key.
What does ZeroDrop do?
It creates temporary email addresses, receives messages, and extracts OTPs and magic links. An agent can wait for a message or inspect the inbox without waiting.
Do I need an API key to use ZeroDrop?
You can try the server without one, but inboxes are public and each sender can reach five different inboxes per day. Set ZERODROP_API_KEY to use a key.