ZeroDrop

Registre officiel Productivité

Disposable email inboxes for AI agents — OTPs and magic links auto-extracted. No signup to try.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package zerodrop-mcp
Claude Code
claude mcp add zerodrop -e 'ZERODROP_API_KEY=<your zerodrop_api_key>' -e 'ZERODROP_BASE_URL=<ZERODROP_BASE_URL>' -- npx -y zerodrop-mcp@0.3.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "zerodrop": {
            "command": "npx",
            "args": [
                "-y",
                "zerodrop-mcp@0.3.0"
            ],
            "env": {
                "ZERODROP_API_KEY": "<your zerodrop_api_key>",
                "ZERODROP_BASE_URL": "<ZERODROP_BASE_URL>"
            }
        }
    }
}

Variables d'environnement

  • ZERODROP_API_KEY secret Free API key from https://zerodrop.dev/keys. Inbox names then start with your key's prefix, only your key can read them, and mail to them isn't limited. Without it, inboxes are public and one sender can reach 5 different inboxes a day.
  • ZERODROP_BASE_URL Override for self-hosted ZeroDrop instances.

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. zerodrop-mcp
  2. Install
  3. Tools
  4. What agents use this for
  5. How it works
  6. Configuration
  7. Writing tests instead?
  8. Security
  9. License

zerodrop-mcp

Email verification for AI agents — an MCP server that gives Claude, Cursor, Claude Code, and any MCP client disposable email inboxes with auto-extracted OTPs and magic links.

Your agent tests your app's signup. The app sends a verification code. Without an inbox it can read, the agent is stuck. With zerodrop-mcp:

Agent: generate_inbox()
  → swift-x7k29ab@zerodrop-sandbox.online

Agent: [fills the signup form with that address]

Agent: wait_for_email(inbox, require_otp: true)
  → { "otp": "847291", "subject": "Verify your email", ... }

Agent: [enters 847291 — flow complete]

No Docker. No SMTP. No signup to try: without an API key, one sender can reach 5 different inboxes a day. A free key lifts that.

Install

Claude Code
claude mcp add zerodrop -- npx -y zerodrop-mcp
Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "zerodrop": {
      "command": "npx",
      "args": ["-y", "zerodrop-mcp"]
    }
  }
}
Cursor

Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "zerodrop": {
      "command": "npx",
      "args": ["-y", "zerodrop-mcp"]
    }
  }
}

Tools

generate_inbox

Creates a disposable email address. Local and instant — no network request.

ParamTypeDescription
prefixstring, optionalPrefix for the inbox name, e.g. your app name

Returns the inbox address. With a key from zerodrop.dev/keys in ZERODROP_API_KEY, the name starts with your key's prefix (k7x2-myapp-swift-x7k29ab) and only your key can read it. Without one, a prefix whose part before the first hyphen is four letters and digits, at least one of each (app1, app1-web), goes after the adjective instead (swift-app1-web-x7k29ab), so the inbox can't fall under someone's account.

wait_for_email

Blocks until a matching email arrives, then returns it with the OTP and magic link already extracted — the agent never parses HTML or regexes a body.

ParamTypeDescription
inboxstringAddress from generate_inbox
timeout_secondsnumber, optionalDefault 30, max 120
from_containsstring, optionalFilter by sender
subject_containsstring, optionalFilter by subject
require_otpboolean, optionalOnly match emails with an OTP
require_magic_linkboolean, optionalOnly match emails with a magic link

Returns:

{
  "from": "noreply@yourapp.com",
  "subject": "Your verification code",
  "received_at": "2026-07-18T12:34:56Z",
  "otp": "847291",
  "magic_link": null,
  "body_preview": "Your code is: 847291..."
}

Without an API key, one sender can reach 5 different inboxes a day. If ZeroDrop held the email because its sender passed that, wait_for_email returns at once (0.3.0 or later) with an error instead of waiting for the timeout:

{ "error": "held", "message": "ZeroDrop held an email from yourapp.com to this inbox. The email was not stored. …" }
check_inbox

Non-blocking snapshot of the inbox — recent emails with extracted fields, or an empty list. A notice that ZeroDrop held an email appears as { "held": true, "received_at": "…", "message": "…" }.

What agents use this for

  • Testing auth flows end to end — signup → OTP → verified, driven entirely by the agent
  • QA automation — Claude Code writing and running Playwright tests that need real inboxes
  • Development — "sign up for my own app and tell me if the verification email works"

How it works

Emails sent to a generated inbox are caught at Cloudflare's edge by ZeroDrop's open-source worker. OTPs and magic links are extracted at the edge before your agent reads them. On the free tier, an inbox is deleted 30 minutes after its latest email.

Configuration

Environment variables (set in your MCP client config):

VariableDefaultDescription
ZERODROP_API_KEY—Free key from zerodrop.dev/keys. Inbox names then start with your key's prefix, only your key can read them, and mail to them isn't limited. Without it, inboxes are public and one sender can reach 5 different inboxes a day; past that, the inbox gets a notice from notice@zerodrop.dev instead of the email.
ZERODROP_BASE_URLhttps://zerodrop.devSelf-hosted instance URL
{
  "mcpServers": {
    "zerodrop": {
      "command": "npx",
      "args": ["-y", "zerodrop-mcp"],
      "env": { "ZERODROP_API_KEY": "your-key" }
    }
  }
}

Writing tests instead?

If you're generating test code rather than driving flows live, use the SDKs directly:

npm · PyPI · Go · RubyGems · Packagist · JitPack · GitHub Action

AI coding assistant context: docs.zerodrop.dev/ai-coding

Security

  • The server makes requests only to ZERODROP_BASE_URL (zerodrop.dev by default) — nothing else
  • Inbox generation is fully local
  • Two runtime dependencies: the official MCP SDK and zod
  • Report issues: founder@zerodrop.dev

License

MIT — zerodrop.dev

Questions fréquentes

Qu'est-ce que ZeroDrop ?

Disposable email inboxes for AI agents — OTPs and magic links auto-extracted. No signup to try.

Comment installer ZeroDrop ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add zerodrop -e 'ZERODROP_API_KEY=<your zerodrop_api_key>' -e 'ZERODROP_BASE_URL=<ZERODROP_BASE_URL>' -- npx -y zerodrop-mcp@0.3.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour ZeroDrop ?

Oui. Il attend ZERODROP_API_KEY, à renseigner dans sa configuration.

ZeroDrop est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient ZeroDrop ?

Il est publié par zerodrop-dev. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.