Skip to main content
New: MCP server for AI agents · Free tier

Give your agent
an email address.

Programmatic inboxes for AI agents and test suites. Create an inbox in milliseconds, wait for the verification email, extract the code as structured data — via REST API or MCP. Custom domains included.

Get Started
Free tier includes: ✓ Unlimited sandboxes ✓ Unlimited webhooks ✓ Unlimited forwarders ✓ 1 custom domain ✓ No credit card required
Sub-second Latency
Cloud Native
agent-signup.ts — VS Code
// your agent signs up for a service, unaided
const inbox = await devinbox.createInbox();
await browser.fill('#email', inbox.address);

// block until the verification email arrives
const otp = await devinbox.waitForEmail(inbox.key, { template: 'otp' });
await browser.fill('#code', otp.values.code); // "482913"
MCP-native

Built for AI agents.

Agents need email addresses to act on the web — signing up for services, receiving verification codes, reacting to incoming mail. DevInbox gives your agent a real, persistent inbox: created in milliseconds, readable as structured data, on your own domain.

Agent session mcp.devinbox.io
acme-saas.com/signup
Create your account
Acme SaaS
No human in the loop — the agent creates the inbox, waits for the code, and extracts it via MCP.

Inboxes as tools

Connect the hosted MCP server and your agent gets create_inbox, wait_for_email and ten more tools. No SDK, no glue code — works with Claude, LangGraph, CrewAI, or any MCP client.

Wait for the OTP

wait_for_email blocks until the verification email arrives, and template extraction returns { "code": "482913" } instead of raw HTML. One call, no polling loops.

Self-serve parsing

Agents define their own {{code}} extraction templates at runtime and validate them against a live message before saving. New sender? The agent teaches the parser itself.

.mcp.json
{
  "mcpServers": {
    "devinbox": {
      "url": "https://mcp.devinbox.io",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Prefer local? Run the MCP server over stdio — see the Agents & MCP guide.

Complete observability.

Every email your agents and test suites receive, in one place. Automate via API or MCP, or just check messages in the dashboard — no code required. Perfect for agent fleets, CI/CD pipelines, and manual QA.

Dashboard / Inboxes
System Operational

Active Inboxes

Inbox ID / Email
Created
Messages
8f92-ka20-auth-flow 8f92-ka20@devinbox.io
2 mins ago
14
e2e-staging-billing billing-test@devinbox.io
1 hour ago
3
qa-manual-testing qa-manual@customdomain.com
2 days ago
152

Simple to Use.
Powerful When You Need It.

Create a test inbox in seconds. Check emails in the dashboard or automate with our API. Works with any stack — or no stack at all.

Isolated & Thread-Safe

Each createInbox() generates a unique email and SMTP credential set. No cross-contamination.

Zero-Config SMTP

We handle the SMTP infrastructure. You just grab the username and password from the response.

Template Matching

Verify content using Mustache syntax or Regex. Extract magic links and OTPs instantly.

Native SDKs & Integrations:

// npm install @dev-inbox/client-api
import { MailboxesApi, MessagesApi } from '@dev-inbox/client-api';

// 1. Create isolated inbox
const inbox = await mailboxesApi.createMailbox();

// 2. Trigger auth flow with unique email
await page.fill('#email', inbox.data.key + '@devinbox.io');

// 3. Verify OTP instantly via API
const msg = await messagesApi.getLastMessage(inbox.data.key);
# 1. Generate ephemeral SMTP credentials
inbox = client.create_inbox()

# 2. Inject into app & send verification
app.config.smtp = inbox.smtp_credentials
app.send_verification(inbox.email)

# 3. Assert content matches template
msg = inbox.wait_for(subject="Verify")
assert "Welcome" in msg.html
# 1. Create inbox via REST API
curl -X POST https://api.devinbox.io/inboxes

# 2. Response includes unique SMTP creds
{
  "email": "test_8f92@devinbox.io",
  "smtp_user": "user_8f92",
  "smtp_pass": "sec_99a8d..."
}

Mobile Testing?
We've got you covered.

Automate your React Native and Flutter email authentication flows. Generate test accounts on the device, perform actions, and verify emails without ever leaving the test runner.

// npm install @dev-inbox/client-api
import { MailboxesApi, MessagesApi } from '@dev-inbox/client-api';

// Create inbox for mobile testing
const inbox = await mailboxesApi.createMailbox();

// Fill Native Input
await element(by.id('email_input')).typeText(inbox.data.key + '@devinbox.io');

// Wait for email & verify via API
const msg = await messagesApi.getLastMessage(inbox.data.key);
Coming Soon - Flutter SDK is currently in development
// Flutter Integration Test
final inbox = await DevInbox.create();

await tester.enterText(find.byType(TextField), inbox.email);
await tester.tap(find.text('Sign Up'));

// Verify Email Arrival
final email = await inbox.waitForEmail(subject: 'Welcome');
expect(email.body, contains('Verification Code'));

Create Account

Sign up to get started

Verification Sent
Check your inbox

Frequently Asked Questions

How do AI agents use DevInbox?

Connect our hosted MCP server (mcp.devinbox.io) with a DevInbox API key and your agent gets 12 tools: create inboxes, wait for verification emails, extract OTP codes as structured JSON, and define its own parsing templates at runtime. Works with Claude, LangGraph, CrewAI, or any MCP client — and everything is also available as a plain REST API. See the Agents & MCP guide.

What if a service blocks devinbox.io addresses?

Use a custom domain. Verify your own domain once and your agents receive email at addresses on it — with your domain's reputation, not a shared pool's. Every plan includes at least one custom domain, and inbound routing, OTP extraction, and webhooks all work identically on custom domains.

Do I need CI/CD or automated tests to use DevInbox?

Not at all! Many developers use DevInbox simply to get a private email address for testing their app manually. Just create an inbox, use the email address in your app, and check incoming emails in our dashboard. The API and automation features are there when you need them, but they're completely optional.

How does DevInbox help with integration testing?

DevInbox provides a REST API that allows you to create disposable email addresses programmatically. You can then trigger your system to send emails to these addresses and verify the content, recipients, and timing through our API. This makes it easy to automate email testing in your CI/CD pipeline.

Can I use DevInbox with Playwright or other testing frameworks?

Absolutely! DevInbox integrates seamlessly with Playwright, Selenium, Cypress, and other testing frameworks. You can generate unique email addresses for each test run, ensuring test isolation and preventing conflicts between parallel test executions.

How long are emails retained in the system?

Email retention varies by plan: Developer (1 hour), Team (24 hours), Business (7 days), and Enterprise (15 days). This ensures you have enough time to verify your tests while keeping storage costs manageable. All emails are automatically purged after the retention period.

Is my email data secure and private?

Yes, absolutely. All emails are encrypted in transit and at rest. We never share your data with third parties. Each inbox is completely isolated, and emails are automatically deleted after the retention period for your plan.

Can I use my own custom domain for email addresses?

Yes! All paid plans include custom domain support. Simply add your domain, configure the required DNS records (MX, SPF, DKIM), and start generating email addresses like test@yourdomain.com. This is perfect for staging environments and realistic testing scenarios.

What's the difference between DevInbox and other email testing services?

DevInbox is built specifically for CI/CD automation with sub-second inbox creation, thread-safe isolation, and comprehensive API access. Unlike traditional email testing tools, we provide real SMTP credentials, webhook support, and are designed for high-scale parallel test execution.

Does DevInbox work with mobile app testing?

Absolutely! DevInbox works great with React Native, Flutter, and native iOS/Android testing frameworks. Generate test email addresses programmatically, trigger authentication flows in your app, then verify email delivery through our API - all without leaving your test environment.

Can I upgrade or downgrade my plan anytime?

Yes, you can upgrade or downgrade your plan at any time. Upgrades take effect immediately with prorated billing. When downgrading, the change takes effect at your next billing cycle, so you keep your current plan's benefits until then. The free Developer plan has no time limits.

Simple, transparent pricing. Generous free tier.

One meter for agent fleets and test suites: operations. Start free with unlimited sandboxes, webhooks, and forwarders — upgrade for more operations and longer retention as your agents go to production.

Developer

POPULAR FOR SOLO DEVS
Free

Everything you need to test your app or prototype an agent

For individual hacking — human or agent.

Get Started
  • 1,500 operations/mo
  • Unlimited Sandboxes
  • 1hr Email Retention
  • 1 Custom Domain
  • Unlimited Forwarders
  • Unlimited Webhooks
  • API + MCP Server Access
  • Google Auth
  • Community Support

Team

$12 /mo Save 20%
billed annually

For teams shipping their first agent or test suite.

Sign Up
  • 10,000 operations/mo
  • Unlimited Sandboxes
  • 24hr Email Retention
  • 3 Team Users
  • Unlimited Custom Domains
  • Unlimited Forwarders
  • Unlimited Webhooks
  • Email Support
MOST POPULAR

Business

$39 /mo Save 20%
billed annually

Production volume for agent fleets and CI at scale.

Get Started
  • 25,000 operations/mo
  • Unlimited Sandboxes
  • 7-Day Email Retention
  • Unlimited Team Users
  • Unlimited Custom Domains
  • Unlimited Forwarders
  • Unlimited Webhooks
  • Email Support

Enterprise

$99 /mo Save 20%
billed annually

Dedicated capacity & support.

Contact Sales
  • 100,000 operations/mo
  • Unlimited Sandboxes
  • 15-Day Retention
  • Unlimited Team Users
  • Unlimited Custom Domains
  • Unlimited Forwarders
  • Unlimited Webhooks
  • SSO Integration
  • Email Support

What counts as an operation?

1) Any email received, forwarded, or webhook triggered is counted as a single operation by the SMTP Server.

2) Any call to the API server (for example the verification of the last message received) counts as a single operation.

*Rate limiting applies to all plans.