Mailsink

io.github.heocoiPublished by GitHub account heocoiv0.1.5Updated Oct 24, 2026

Disposable inboxes for AI agents and CI: catch the verification email, read the OTP or link.

Overview

AI-generated overview

MailSink MCP gives an assistant disposable email inboxes so it can receive signup emails, read OTP codes and magic links, and clean up afterwards.

What you can do
Create and list temporary inboxes, each returning an address, ID and expiry time, and delete an inbox when done with it. Wait for an incoming email, with a timeout of up to 120 seconds. Extract the most recent one-time verification code or magic link from an inbox. List message summaries in an inbox and read the full content of a specific message by ID.
When to use it
Useful when an assistant or test automation needs to complete a signup or login flow that requires email verification, such as capturing an OTP or confirmation link, without setting up webhooks, IMAP credentials or MIME parsing.
Requirements
Runs locally as an npm package (Node.js), installed globally or via npx, and configured in an MCP client such as Claude Code, Claude Desktop, Cursor or Windsurf. Requires a MailSink account and an API key supplied in the MAILSINK_API_KEY environment variable; MAILSINK_API_URL optionally overrides the API base URL. Network access to the MailSink API is needed.
Before you install
The MailSink API key (MAILSINK_API_KEY) is a secret and should be stored in a password manager or environment file, not committed. The free tier allows 50 inboxes per month; paid Pro and Team plans raise limits. Inboxes are created and deleted on the account, and received email content is fetched from MailSink's servers.

Installation

In SourceWeft

  1. Open Mailsink in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@mailsink/mcp

Model Context Protocol server for MailSink — programmatic temporary email inboxes for AI agents and test automation.

Gives your agent eight typed tools for provisioning disposable addresses, waiting on signup emails, extracting OTP codes and magic links, and cleaning up after itself. Works in Claude Code, Claude Desktop, Cursor, Windsurf, and any other MCP-aware client.

Install

bash
npm install -g @mailsink/mcp

Or run via npx without installing:

bash
npx @mailsink/mcp

Get an API key

  1. Sign in at https://mailsink.dev/app with GitHub.

  2. Copy the key from the one-time reveal. Store it in your password manager or .env.

  3. Export it so the MCP server can read it:

    bash
    export MAILSINK_API_KEY="msk_..."

Free tier is 50 inboxes/month and includes MCP. Pro ($15/mo) and Team ($49/mo) lift the inbox cap, raise email size limits, extend TTL, and bump request rates. See pricing.

Configure your client

Claude Code

bash
claude mcp add mailsink -- npx -y @mailsink/mcp

Claude Desktop / Cursor / Windsurf

Add to the mcpServers section of the client's config file:

json
{  "mcpServers": {    "mailsink": {      "command": "npx",      "args": ["-y", "@mailsink/mcp"],      "env": {        "MAILSINK_API_KEY": "msk_..."      }    }  }}

Restart the client. You should see the mailsink server listed with its eight tools.

Tools

ToolPurpose
create_inboxProvision a throwaway address. Returns email, id, expires_at.
list_inboxesList active inboxes on the account.
wait_for_emailBlock up to timeout seconds (max 120) for any email to arrive.
get_verification_codeExtract the most recent OTP from the inbox (polls until found or timeout).
get_verification_linkExtract the most recent magic link.
list_messagesSummaries of all messages in an inbox.
get_messageFull content of a specific message by ID.
delete_inboxBurn an inbox immediately.

Example agent flow

> Sign me up for Figma, capture the verification code, confirm, and> tell me the plan once you're in.
[agent invokes]  create_inbox()                                → [email protected]  [agent fills the Figma signup form with that address]  wait_for_email(inbox_id)                      → blocks 30s…                                                → returns email + OTP  [agent types the OTP into the Figma form]  delete_inbox(inbox_id)                        → cleanup

No webhook plumbing. No IMAP credentials. No parsing MIME.

Environment variables

  • MAILSINK_API_KEY (required) — your account's API key.
  • MAILSINK_API_URL (optional, default https://api.mailsink.dev) — override for self-hosted or dev API.

Source

https://github.com/heocoi/mailsink/tree/main/mcp

License

MIT — see LICENSE.

Source: README.md at commit 1df0da2

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.5LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts