Website: integrations, features, and blog overhaul
New Features and Integrations pages, redesigned blog with search and OG images, and click-based navigation dropdowns.
- Added
Features page — Full overview of MailKite capabilities at /features with code examples and deep-dives.
- Added
Integrations page — SDKs, MCP clients, frameworks, and platform integrations at /integrations.
- Added
Blog search — Full-text search across all blog posts via Pagefind.
- Added
Blog OG images — Unique Open Graph images for all 40 blog posts, wired into RSS and meta tags.
- Improved
Blog redesign — Image grid layout, featured post hero, and category filters on the blog index.
- Improved
Navigation dropdowns — Click-based disclosure pattern with proper ARIA attributes and Escape/outside-click dismiss.
SEO landing pages + email parser provider
Five SEO landing pages targeting high-intent keywords, plus a new Zeptomail email provider.
- Added 5 SEO landing pages — Programmatic pages targeting transactional email, email API, and programmable email keywords.
- Added Zeptomail provider — New email sending provider option alongside Cloudflare and Resend.
- Fixed DNS values display — TXT DNS values wrapped in quotes show correctly in the dashboard domain setup.
Domain health dashboard + per-domain analytics
Account health scoring, per-domain analytics with sent/received/opens, and a persistent health header bar.
- Added Account health scoring — Dashboard header shows a persistent health score with progress bar and Cmd+K search.
- Added Per-domain analytics — Breakdown of sent, received, and opens per domain with links to filtered delivery logs.
- Added Domain health on admin — Health score displayed in admin domain list and detail pages.
- Fixed Bounce rate calculations — Multiple fixes to bounce rate formulas — guards against NaN and zero-division.
- Fixed Composer race condition — Prevents duplicate sends from rapid-click in the email composer.
- Fixed Duplicate message rows — Eliminated duplicate outbound message rows from the delivery pipeline.
SES provider + daily limits + admin tools
Amazon SES email provider, daily send limits with notifications, provider abstraction, and admin delivery logs.
- Added Amazon SES provider — Full SES integration with DKIM verification, SigV4 signing, and per-domain provider assignment.
- Added Provider abstraction — Pluggable email provider system — auto-detect Cloudflare DNS, assign per-domain.
- Added Daily send limits — Free tier capped at 100 emails/day with status pill and notification emails.
- Added Admin delivery logs — Full request/response audit trail for outbound email in the admin panel.
- Added Admin providers list — Manage email sending providers from the admin interface.
- Added AI user analysis — Admin can generate AI-powered analysis reports for user accounts.
- Added Agent scripts directory — Reusable scripts for minting JWTs, getting sessions, and running production SQL queries.
Resend provider + beta verified-recipient gate
Resend email provider, verified-recipient gate disabled during beta, and admin platform domain views.
- Added Resend provider — Send email via Resend's API alongside Cloudflare and SES.
- Changed Verified-recipient gate disabled — Inbound email no longer requires recipient verification during the beta period.
- Added Admin domain details — All platform domains visible in admin with external link icons on analytics.
Inbox agent security + SDK 0.15.0
Verified-sender context for inbox agents, anti-loop rate limiting, and SDK support for agent context.
- Added Inbox agent sender context — Agents now receive thread history and sender context when processing inbound email (Level 1-2 security).
- Added Anti-loop rate limit — Maximum runs per sender per hour prevents infinite loops in inbox agents.
- Added SDK 0.15.0 — createRoute now accepts agentContext for passing thread and sender context.
Per-route webhook secrets + SDK 0.14.0
Per-route webhook signing secrets, Railway deployment template, and the live email demo playground.
- Added Per-route webhook secrets — Each inbound route can have its own webhook signing secret — visible in dashboard and accessible via SDK.
- Added SDK 0.14.0 — createRoute accepts agentForwardTo for inbox-agent forward allowlists.
- Added Railway deploy template — One-click deploy template for Railway marketplace with automatic domain connection.
- Added Live email demo — Fire an email and see the parsed JSON in real-time from the browser — no signup required.
- Added Transparent nav — Marketing site navigation is transparent at top and fades in on scroll.
SDK 0.13.0 + OAuth + .NET/Rust/Elixir SDKs
OAuth access tokens across all SDKs, three new language SDKs, and a publishable examples repo.
- Added SDK 0.13.0 — OAuth tokens — OAuth access tokens and token-provider across all 6 SDKs (TS, Python, Ruby, PHP, Go, Java).
- Added .NET SDK — MailKite .NET client library published to NuGet.
- Added Rust SDK — MailKite Rust crate published to crates.io.
- Added Elixir SDK — MailKite Elixir package published to hex.pm.
- Added Encrypt/decrypt helpers — At-rest encryption and decryption in every client library with spec coverage tests.
- Added GitHub OAuth sign-in — Sign in with GitHub alongside Google, with avatar stored from OAuth.
- Added Public examples repo — Runnable code examples across all languages, spec-gated and auto-generated.
- Added Server-panel recipes — Deploy recipes for Forge, Ploi, and RunCloud with one-command npm start.
- Added MCP registry listing — MailKite MCP server published to the official MCP registry.
- Improved Blog post enrichment — All 18 comparison posts rewritten with SDK-first code, diagrams, and honest alternatives.
- Improved Programmable email content — New pillar page, concept docs, and 4 blog posts for the programmable email content cluster.
Playground tokens + brand-tinted code
Live email demo playground with auto-verify tokens, and branded syntax highlighting across all code samples.
- Added Playground token grant — Verify email → create account → get a 15-minute send-to-self JWT — all automated.
- Added Brand-tinted syntax highlighting — Code samples use the MailKite brand palette (blue/violet) for strings and keywords.
- Added Visitor analytics — Page views, unique visitors, per-CTA tracking, and IP/UA/geo capture in analytics.
- Added Agent analytics skill — CLI + skill for product analytics with consent-based tracking, funnels, and retention.
- Improved Homepage hero — Sticky-split hero with static/reveal variants and branded scrollbars.
MCP landing page + newsletter signup
Dedicated MCP product page, blog newsletter with double opt-in, and streaming MIME parser.
- Added MCP product landing page — Full product page at mcp.mailkite.dev with tool catalog and Glama listing.
- Added Blog newsletter signup — Double opt-in newsletter subscription for blog readers.
- Added Streaming MIME parser — parseStream for incremental email decoding with Web Streams API.
- Added Admin tasks board — Task management with sections and block editor for ops work.
- Improved MCP tool annotations — Read/write annotations advertised on tools/list for better agent integration.
- Improved Beta banner — Banner dismissal remembered in localStorage.
IMAP + mail-parse milestones
IMAP server enters beta, mail-parse reaches 1.0 across TypeScript, Python, and Go.
- Added IMAP server (beta) — Full IMAP access at imap.mailkite.dev:993 with app passwords and PGP/MIME encryption.
- Added mail-parse 1.0 — Streaming MIME parser published for TypeScript (npm), Python (PyPI), and Go.
- Added At-rest encryption — PGP/MIME and S/MIME support for IMAP message bodies in the dashboard.
- Added JMAP gateway — JMAP-on-Workers gateway over D1/R2 for IMAP storage.
- Improved Mail-parse streaming — Python and Go ports at TypeScript parity with streaming support.
Inbox agent system + admin panels
Full inbox agent lifecycle (runs, transcripts, queue execution) and admin user management.
- Added Inbox agent system — Agent runs ledger, queue execution with 5-minute timeout, and transcript capture.
- Added Dashboard run history — View agent run history and transcript details in the dashboard.
- Added Admin user management — User list, detail, and login tracking in the admin panel.
- Added Shadow parse testing — Compare mail-parse vs postal-mime with admin UI for validation.
SMTP submission relay + beta pricing
SMTP submission edge for legacy apps, founding-year pricing offer, and threaded conversations.
- Added SMTP submission relay — Send email over SMTP (port 587/465) for apps without HTTPS support.
- Added Founding year offer — 50% off for 12 months for early adopters — charged coupon at checkout.
- Added Threaded conversations — Messages grouped into Gmail-style conversation threads in the dashboard.
- Added Cursor pagination — Efficient cursor-based pagination for message lists.
- Added AI provider failover — Automatic failover from Claude to Gemini when the primary provider is unavailable.
Contact lists + domain-scoped import
Contact lists for curated broadcast audiences and domain-scoped contact import.
- Added Contact lists — Static, curated lists for broadcast audiences with member management.
- Added Domain-scoped import — Import contacts filtered by domain with an autocomplete picker.
- Added Contact tags — Labels and tag filtering for contact organization.
- Added Suppression ledger — Track unsubscribes, bounces, and complaints per contact.
- Added SDK 0.11.0 — Optional search filter on listMessages (sender/recipient/subject).
SDK publishing + broadcast scheduling
All 8 SDKs published to package registries, broadcast scheduling with timezone support, and semantic search.
- Added Broadcast scheduling — Schedule broadcasts with a picker, displayed in per-user timezone.
- Added Semantic search — Docs semantic search via the API, accessible from dashboard and website Cmd+K.
- Added SDK 0.8.0–0.9.0 — Semantic search, optional paging on listMessages, unified versioning across all libraries.
- Added Client-side OAuth SDKs — Client OAuth libraries for TypeScript, Expo, Swift, Kotlin, and Flutter.
- Added Webhook ack modes — Per-webhook acknowledge modes with endpoint health tracking and auto-retry.
- Improved SDK READMEs — Stripe-style generated READMEs with per-method pages for all 13 public repos.
Zero-retention encryption + MCP OAuth
Core platform launch: zero-retention mode, at-rest encryption, remote MCP server, and the full dashboard.
- Added Zero-retention mode — Inbound email is processed and discarded — nothing stored. Opt-in per route.
- Added At-rest encryption — Email bodies encrypted at rest with per-domain keys.
- Added Remote MCP server — Hosted MCP at api.mailkite.dev/mcp with OAuth SSO for agent integrations.
- Added Dashboard redesign — Full dashboard with compose, routes, domain detail, webhook detail, and delivery logs.
- Added AI compose — AI-powered email composition from the dashboard.
- Added Webhook delivery status — Endpoint health tracking, auto-retry with backoff, and replay support.
- Added SDK 0.4.0–0.5.0 — replyOk(), encrypt/decrypt, reply helpers (spam/drop/block), and outbound attachments.
- Added Branded email templates — Theme-aware email templates with logo upload and dark/light variants.
- Added Website launch — Developer-focused homepage with animated pipeline, docs, and /agents page.
Billing + domain registration + SDK 0.2.0–0.3.0
Stripe billing, domain registration with DNS setup, inbox agent framework, and multi-language SDKs.
- Added Billing system — Stripe subscription plans, usage gating, AI billing, dunning, and webhook route.
- Added Domain registration — Register domains and free subdomains with automatic DNS record configuration.
- Added Inbox agent framework — Route-based agent execution with AI provider abstraction and email reply generation.
- Added SDK 0.2.0 — Domain check and registration methods across all SDKs.
- Added SDK 0.3.0 — agent() and route() methods for inbox agent management.
- Added Claude Code plugin — MailKite skill with slash commands for Claude Code.
- Added Account API keys — Scoped API keys with per-domain permissions in the dashboard.
SDK 0.1.0 — all 8 languages published
MailKite SDKs published to npm, PyPI, RubyGems, Maven Central, crates.io, hex.pm, Packagist, and Go mirror.
- Added 8 language SDKs — JavaScript/TypeScript, Python, Ruby, PHP, Java, Go, Rust, and Elixir — all at 0.1.0.
- Added CLI and MCP tools — @mailkite/cli and @mailkite/mcp published to npm.
- Added DNS setup wizard — Dashboard accordion with per-field copy buttons and confirmation modal.
- Added Template editor — Public R2 logo uploads, brand header, and real CTA links.
- Added Cmd+K docs search — Full-text search across API, SDK, MCP, and website docs.
Webhook verification + marketing site
HMAC webhook signature verification, animated homepage, and the core platform foundation.
- Added Webhook signature verification — HMAC-SHA256 signature on all inbound webhooks with SDK verification across all languages.
- Added Animated pipeline — Homepage shows a live animated email pipeline with hover flow.
- Added Contact form — Website contact form with D1 storage and receipt/notify emails.
- Added Theme-aware emails — Email templates respect light/dark mode preferences.
- Added Mobile responsive — Marketing site and dashboard fully responsive on mobile.
Platform launch — email → webhook in 5 minutes
MailKite is born: inbound email parsing, MX edge, dashboard, and admin — all on Cloudflare Workers.
- Added Inbound email → webhook — Receive email as parsed JSON at your endpoint. SPF/DKIM/DMARC verification included.
- Added MX edge (Haraka) — Production SMTP edge server receiving email and POSTing to the API.
- Added Dashboard — React + Vite SPA for managing domains, routes, and webhooks.
- Added Admin panel — Internal admin for user management and system monitoring.
- Added Google OAuth — Login and signup with Google via OAuth code flow.
- Added Cloudflare Workers — Entire platform runs on Cloudflare's edge network.
Follow MailKite for the latest updates.
Start free