Email sending
Send via SMTP or MCP with automated sender verification.
Email sending, receiving, monitoring, and sandboxes.
So good you'll check the dashboard for fun.
No credit card required No setup required First 1,000 emails free every month
Backed by builders from
Send via SMTP or MCP with automated sender verification.
Inbound email lands in your app: relay POSTs each message to an HTTPS endpoint you own, or hands it over the API and MCP.
Track delivery status, bounce rates, and sender reputation across all domains.
Test credentials and a free sender domain ready the moment you sign up.
GDPR compliant, EU data sovereignty, no third-country transfer.
For AI agents to send and receive email, with a focus on privacy and security.
Every message in and out, every transmission and every delivery to your app. In your browser, not in a support ticket.
SMTP is the interface every language already speaks. Point your app at relay and keep your code.
Your first send needs no DNS work. The managed sender domain is verified from signup.
# settings.py
MAILERS = {
"default": {
"BACKEND": "django.core.mail.backends.smtp.EmailBackend",
"OPTIONS": {
"host": "smtp.relay.example.com",
"port": 465,
"use_ssl": True,
"username": "acme",
"password": "<credential key>",
},
},
}
# send from anywhere
from django.core.mail import send_mail
send_mail("Invoice 42", "Attached.", "billing@acme.com", ["kim@example.net"])
import nodemailer from "nodemailer";
const transport = nodemailer.createTransport({
host: "smtp.relay.example.com",
port: 465,
secure: true,
auth: { user: "acme", pass: "<credential key>" },
});
await transport.sendMail({
from: "billing@acme.com",
to: "kim@example.net",
subject: "Invoice 42",
text: "Attached.",
});
# views.py
import json
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
from standardwebhooks import Webhook
@csrf_exempt
def email_received(request):
Webhook("<whsec_...>").verify(request.body, request.headers)
event = json.loads(request.body) # type == email.received
# download event["body_url"]
return HttpResponse(status=204)
// app/api/email/route.ts
import { Webhook } from "standardwebhooks";
export async function POST(req: Request) {
const raw = await req.text();
new Webhook("<whsec_...>").verify(raw, Object.fromEntries(req.headers));
const event = JSON.parse(raw); // type == email.received
// download event.body_url
return new Response(null, { status: 204 });
}
Builders and maintainers from the open-source and founder community.
“Sample endorsement. relay collects real quotes from friends in tech before launch.”
“Sample endorsement. Replace this card with a real quote from the open-source community.”
“Sample endorsement. relay asks its friends in tech for honest feedback, not marketing copy.”
The code that signs, seals, and delivers your email is open under the AGPL-3.0.
Your messages are processed in Germany, in ISO/IEC 27001 certified and BSI C5 attested Hetzner data centers. No third-country transfers, no profiling, no data mining, no resale.
Message metadata is kept for 30 days, raw bodies are deleted after delivery. The code that processes your email is public under the AGPL-3.0: audit it line by line.
No contracts, no surprises.
You pay when relay relays
emails
First 1,000 emails free, then €0.69 / 1,000 emails.