Email for AI Agents

Create inboxes, send and receive email, wait for messages, and extract verification codes — all via API. Purpose-built for autonomous systems.

import requests

# 1. Sign up (one API call, no verification needed)
r = requests.post("https://api.victorymail.dev/v1/console/signup",
    json={"email": "agent@example.com", "password": "SecurePass1!", "name": "My Agent"})
api_key = r.json()["api_key"]

# 2. Create an inbox
inbox = requests.post("https://api.victorymail.dev/v1/inboxes",
    headers={"x-api-key": api_key},
    json={"display_name": "Signup Bot"}).json()

# 3. Sign up for a service, then extract the OTP
otp = requests.post(f"https://api.victorymail.dev/v1/inboxes/{inbox['id']}/extract-otp",
    headers={"x-api-key": api_key},
    json={"timeout": 25, "sender": "noreply@service.com"}).json()
print(f"Code: {otp['code']}")  # "482917"

Everything your agent needs

A complete email toolkit designed from the ground up for programmatic access.

API-First Inboxes

Create email addresses on demand via REST API. No provisioning, no OAuth. Just one API call.

Send & Receive

Full SMTP delivery with DKIM/SPF/DMARC. Inbound email routed to your webhook.

Wait for Email

Long-poll for matching messages. Perfect for signup flows and verification.

OTP Extraction

Automatically extract verification codes from emails. One API call.

Custom Domains

Bring your own domain. DNS records generated, verification automated.

Webhooks

Real-time event delivery with HMAC-SHA256 signatures. Retry on failure.

Connect your agent in minutes

Three ways to give your AI agent email capabilities.

REST API

Direct API access. Sign up, create inbox, send email — 3 API calls, no human needed.

MCP Server

10 tools for AI agents via Model Context Protocol. Works with Claude, OpenClaw, and any MCP client.

{
  "mcpServers": {
    "freemail": {
      "command": "node",
      "args": ["path/to/mcp-server/dist/index.js"],
      "env": {"FREEMAIL_API_KEY": "am_live_..."}
    }
  }
}

OpenClaw Skill

Install FreeMail as an OpenClaw skill. Your agent gets email capabilities with zero configuration.

Up and running in minutes

Three steps to your first email.

1

Sign up via API

One POST, get your API key instantly. No email verification needed.

2

Create an inbox

Get an email address like abc123@victorymail.dev in one call.

3

Send, receive, or extract OTP

Send email, long-poll for incoming, extract verification codes.

Code that speaks for itself

A complete workflow: create inbox, send email, wait for reply, extract OTP.

from freemail import FreeMail

client = FreeMail("am_live_your_key")

# Create an inbox
inbox = client.inboxes.create(display_name="Signup Bot")
print(f"Inbox: {inbox['email']}")

# Send an email
client.messages.send(
    from_inbox=inbox["id"],
    to="user@example.com",
    subject="Hello from my agent",
    body="This email was sent by an AI agent."
)

# Wait for a reply (long-poll, up to 60s)
reply = client.messages.wait(
    inbox_id=inbox["id"],
    sender="user@example.com",
    timeout=60
)

# Extract an OTP from the reply
otp = client.inboxes.extract_otp(
    inbox["id"],
    sender="noreply@service.com"
)
print(f"Verification code: {otp['code']}")
import FreeMail from 'freemail';

const client = new FreeMail('am_live_your_key');

// Create an inbox
const inbox = await client.inboxes.create({
  displayName: 'Signup Bot'
});
console.log(`Inbox: ${inbox.email}`);

// Send an email
await client.messages.send({
  fromInbox: inbox.id,
  to: 'user@example.com',
  subject: 'Hello from my agent',
  body: 'This email was sent by an AI agent.'
});

// Wait for a reply (long-poll, up to 60s)
const reply = await client.messages.wait({
  inboxId: inbox.id,
  sender: 'user@example.com',
  timeout: 60
});

// Extract an OTP
const otp = await client.inboxes.extractOtp({
  inboxId: inbox.id,
  sender: 'noreply@service.com'
});
console.log(`Verification code: ${otp.code}`);
# Create an inbox
curl https://api.victorymail.dev/v1/inboxes \
  -H "Authorization: Bearer am_live_your_key" \
  -d '{"display_name": "Signup Bot"}'

# Send an email
curl https://api.victorymail.dev/v1/messages \
  -H "Authorization: Bearer am_live_your_key" \
  -d '{
    "from_inbox": "inbox_abc123",
    "to": "user@example.com",
    "subject": "Hello from my agent",
    "body": "This email was sent by an AI agent."
  }'

# Wait for a reply (long-poll)
curl "https://api.victorymail.dev/v1/inboxes/inbox_abc123/messages/wait?sender=user@example.com&timeout=60" \
  -H "Authorization: Bearer am_live_your_key"

# Extract OTP
curl "https://api.victorymail.dev/v1/inboxes/inbox_abc123/otp?sender=noreply@service.com" \
  -H "Authorization: Bearer am_live_your_key"

Simple, transparent pricing

Start free. Scale when you're ready.

Free

$0/month

For prototyping and small projects.

  • 5 inboxes
  • 1,000 messages/day
  • 1 custom domain
  • API + SDK + MCP access
  • Community support
Get Started Free

Works with every AI framework

Plug into your existing stack. SDKs, REST, and MCP for direct agent integration.

Python SDK
Node.js SDK
REST API
MCP Server

Ready to give your agents email?

Sign up for free. No credit card required. First email in under two minutes.

Get Started Free