npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@deaddrop/mcp

v1.1.0

Published

MCP server for DeadDrop — expose inbox management and OTP/link extraction as native agent tools

Downloads

324

Readme

@deaddrop/mcp

MCP server for DeadDrop — expose inbox management and OTP/link extraction as native agent tools.

Quick Start

npx @deaddrop/mcp

The server communicates over stdio and is compatible with any MCP client (Claude Desktop, Cursor, Windsurf, and others).

Configuration

| Variable | Required | Default | Description | | ------------------ | ----------------------- | --------------------------- | ----------------------------------------------------------------------------------------------------------------- | | DEADDROP_API_KEY | For authenticated tools | — | Your DeadDrop API key. Required for create_inbox, delete_inbox, and listing messages from persistent inboxes. | | DEADDROP_API_URL | No | https://api.deaddrop.zone | API base URL. Override for self-hosted or staging deployments. |

Get an API key from deaddrop.zone/dashboard.

MCP Client Setup

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "deaddrop": {
      "command": "npx",
      "args": ["-y", "@deaddrop/mcp"],
      "env": {
        "DEADDROP_API_KEY": "your-api-key-here"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project root, or ~/.cursor/mcp.json for global config:

{
  "mcpServers": {
    "deaddrop": {
      "command": "npx",
      "args": ["-y", "@deaddrop/mcp"],
      "env": {
        "DEADDROP_API_KEY": "your-api-key-here"
      }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "deaddrop": {
      "command": "npx",
      "args": ["-y", "@deaddrop/mcp"],
      "env": {
        "DEADDROP_API_KEY": "your-api-key-here"
      }
    }
  }
}

Tools

| Tool | Description | Required params | | ------------------------ | ---------------------------------------------------------------------------------------------------------------- | ------------------- | | create_ephemeral_inbox | Create a temporary inbox that expires after 1 hour. No API key required. | — | | create_inbox | Create a persistent inbox. Returns the email address for receiving messages. | API key | | wait_for_message | Wait for a new message to arrive, with optional subject/sender filters. | inbox_id | | list_messages | List messages in an inbox in reverse chronological order with parsed OTPs and links. | inbox_id | | get_latest_otp | Get the highest-confidence OTP code from the most recent message. Optionally waits for arrival. | inbox_id | | get_latest_link | Get the latest link of a specific type (verification, login, password reset, etc.) from the most recent message. | inbox_id | | delete_inbox | Delete a persistent inbox and all its messages. Irreversible. | inbox_id, API key |

Tool parameters

create_ephemeral_inbox — no parameters.

create_inbox

  • slug (optional) — custom slug for the inbox address, e.g. my-agent. Auto-generated if omitted.
  • webhook_url (optional) — URL to receive messages via HTTP POST on arrival.

wait_for_message

  • inbox_id — the inbox ID to watch.
  • timeout_seconds (optional) — max seconds to wait. Default: 30, max: 120.
  • subject_contains (optional) — only match messages whose subject contains this string (case-insensitive).
  • from_contains (optional) — only match messages whose sender address contains this string.
  • after (optional) — only match messages received after this ISO 8601 timestamp.

list_messages

  • inbox_id — the inbox ID.
  • limit (optional) — max messages to return. Default: 10, max: 50.

get_latest_otp

  • inbox_id — the inbox ID.
  • timeout_seconds (optional) — if >0, wait for a message with an OTP (max 120 seconds). Default: 0 (check immediately).
  • min_confidence (optional) — minimum confidence threshold 0–1. Default: 0.5.

get_latest_link

  • inbox_id — the inbox ID.
  • link_type (optional) — one of verification, login, password_reset, action, unsubscribe, other. Returns any link if omitted.
  • timeout_seconds (optional) — if >0, wait for a matching link (max 120 seconds). Default: 0 (check immediately).

delete_inbox

  • inbox_id — the inbox ID to delete.

Authentication

Tools that manage persistent inboxes (create_inbox, delete_inbox, and reading from persistent inboxes) require a DeadDrop API key. Set it via the DEADDROP_API_KEY environment variable.

Ephemeral inboxes (create_ephemeral_inbox) work without an API key but are subject to browser-based verification constraints — they may not be available in all headless environments.

To get an API key: deaddrop.zone/dashboard → API Keys → Create key.

For full API documentation, see deaddrop.zone/docs.

For the complete MCP setup guide, tool reference, and workflow examples, see docs/MCP_GUIDE.md.

License

MIT