Skip to content
catchotp
In public beta

Programmable email inboxes for testing OTPs, signup flows, and AI agents.

Catch one-time codes from any service in real-time. Skip the disposable-inbox hassle. Start free, scale to teams.

  • No credit card required
  • Free forever tier
  • Available via API, CLI, MCP

Catch a real OTP — no signup

We'll spin up a disposable inbox and send it a verification code. Watch it land live.

Get occasional product updates and email-infra deep dives. Opt in only.

Built for developers

The primitives you actually need.

We boiled email-testing down to three things: create, wait, parse. Everything else is in your way.

Programmable

REST API, CLI, and Node/Python/Go SDKs. Create inboxes in milliseconds; receive structured JSON when mail arrives.

Real-time waiters

Block your test until the OTP arrives. No polling loops, no flaky waits. p95 latency under 1s end-to-end.

OTP auto-extracted

We parse the code from the email body for you. Works with 95%+ of major services out of the box.

Quickstart

Catch your first OTP in 60 seconds.

One API key. Three lines of code. Same shape across Node, Python, and curl.

import { CatchOTP } from '@catchotp/sdk';
const client = new CatchOTP({ apiKey: process.env.CATCHOTP_KEY });

const inbox = await client.inboxes.create({ mode: 'ephemeral', ttlMinutes: 10 });
// → use inbox.address as the email when signing up to the service under test

const otp = await client.inboxes.waitForOtp(inbox.id, { timeoutSeconds: 30 });
console.log(otp); // → "123456"
Tip: pair with @catchotp/cypress or @catchotp/playwright for zero-boilerplate tests.

Use cases

From CI pipelines to autonomous agents.

Frequently asked questions

What is catchotp?
catchotp is a programmable email inbox API built for developers, QA teams, and AI agents who need to receive verification emails, magic links, and OTP codes during testing or automated workflows. Each inbox lives at a real internet-facing domain (inbox.catchotp.com) with proper MX records and DKIM signing — so it is not on the disposable-email blocklists. The product exposes three primitives: create an inbox, wait for a message (long-poll), parse the OTP. Available as a REST API, CLI, Node/Python/Go SDKs, and an MCP server for AI agents.
How is catchotp different from disposable email services like Mailinator or Temp-Mail?
catchotp is API-first; Mailinator and Temp-Mail are browser-only. Every catchotp action — create inbox, list messages, wait for OTP, parse links — is a single SDK call or HTTP request, so you can wire it into CI pipelines, test runners, and AI agents. The catchotp domain is not pre-blocked the way generic temp-mail domains are, because we run a real abuse-handling pipeline (RBL monitoring, per-tenant rate limits, audit logs) instead of being a wildcard MX on a throwaway TLD. Disposable inbox sites are great for one-off human signups; catchotp is built for automation.
Can I use catchotp in CI?
Yes — CI is the primary use case. The SDK uses outbound HTTPS to api.catchotp.com:443 only, with no inbound ports or SMTP egress required, so it works behind corporate proxies and locked-down CI runners (GitHub Actions, CircleCI, GitLab CI, self-hosted GitLab Runner). Each test gets its own ephemeral inbox via the SDK, runs in parallel without cross-test contamination, and tears itself down via TTL. The Free tier handles roughly 30-50 OTP tests per day; Pro at $29/mo covers serious CI suites running thousands of email tests per month.
Does catchotp work with AI agents?
Yes — catchotp ships a first-class MCP (Model Context Protocol) server at npx @catchotp/mcp that exposes inbox creation, message reading, and the OTP waiter as agent-callable tools. Drop the config block into Claude Desktop, Cursor, Claude Code, or any MCP-aware host and the agent can sign up for services, verify accounts, and handle email-based flows without any glue code. The waiter is long-poll, so the agent yields rather than burning tokens on a polling loop. Works with Anthropic, OpenAI, and any framework that speaks JSON tool calls.
Is there a free tier?
Yes — the Free tier is forever-free, no credit card required. It includes 5 concurrent inboxes, 1,000 messages per month, 24-hour message retention, and 2 concurrent waiters. That is enough to power the email tests of a small CI pipeline, an indie project, or a personal AI agent. You sign up at app.catchotp.com with an email address, get an API key inside a minute, and start creating inboxes immediately — no upgrade prompts, no upsell wall, no time limit.

Start receiving emails in 60 seconds.

No credit card. Free forever tier. Upgrade when you outgrow it.