Questions, ideas, and show-and-tell for MailKite — the email platform for developers and their teams. Receive email as a webhook, send with one API, give your agents their own inbox.
| I want to… | Go to |
|---|---|
| Ask how to do something | Q&A |
| Report something broken | Bug reports |
| Request a feature, an SDK, or an integration | Feature requests |
| Show what you built | Show and tell |
| Read the docs | mailkite.dev/docs |
| Check platform health | mailkite.dev/status |
| Reach a human privately | mailkite.dev/contact |
Bug reports and Feature requests open as guided forms — the fields are the ones that decide how fast you get an answer (library and version, expected vs. actual, a message or request ID for bugs; the underlying problem, not just the proposed feature, for requests). A bug in one specific SDK can also go to that mirror's Issues tab; either way it reaches us.
Never paste API keys, tokens, or real recipients' addresses into a public thread — use contact for anything account-specific.
Heads-up on pull requests. Every library below is developed in a private monorepo and published to its public repo as a read-only release mirror. PRs opened against a mirror can't be merged. Open a discussion here or an issue on the mirror — the fix lands upstream and ships with the next release.
| Quickstart | First send + first webhook in about five minutes |
| Receiving email | Inbound routes → webhook, forward, store, drop, agent |
| Sending email | Transactional mail, replies, broadcasts |
| API reference | Every endpoint, every field |
| Libraries | Install + first call in each language |
| AI agents | MCP server, agent inboxes, scoped access |
| Inbox agents | Auto-reply: triage, answer, tag, escalate |
| Domains | MX, SPF, DKIM, DMARC — what we set and why |
| Webhook security | Verifying the HMAC-SHA256 signature |
| Webhook delivery | Retries, replay, delivery logs |
| SMTP relay · IMAP | Use your existing mailer or mail client |
| CLI | mailkite on the command line |
| Authentication | API keys, scopes, OAuth |
| Data & privacy | Retention, zero-retention passthrough |
One API shape across every language.
| Language | Package | Repo |
|---|---|---|
| Node.js / TypeScript | mailkite (npm) |
mailkite-node |
| Python | mailkite-dev (PyPI) |
mailkite-python |
| PHP | mailkite/mailkite (Packagist) |
mailkite-php |
| Ruby | mailkite (RubyGems) |
mailkite-ruby |
| Java | dev.mailkite:mailkite (Maven Central) |
mailkite-java |
| Go | github.com/mailkite/mailkite-go |
mailkite-go |
| .NET | MailKite (NuGet) |
mailkite-dotnet |
| Rust | mailkite (crates.io) |
mailkite-rust |
| Elixir | mailkite (Hex) |
mailkite-elixir |
For apps that talk to MailKite directly, over OAuth 2.1 + PKCE — no server key in the client.
| Platform | Package | Repo |
|---|---|---|
| JS / browser | @mailkite/client (npm) |
mailkite-js |
| Swift / iOS | MailKiteClient (SwiftPM) |
mailkite-swift |
| Kotlin / Android | dev.mailkite:mailkite-client |
mailkite-kotlin |
| Flutter | mailkite_client (pub.dev) |
mailkite-flutter |
| Expo / React Native | @mailkite/expo (npm) |
mailkite-expo |
| mailkite-cli | @mailkite/cli — send, tail inbound, manage domains and keys |
| homebrew-tap | brew install mailkite/tap/mailkite |
| mailkite-mcp | @mailkite/mcp — local MCP server |
| claude-code | Official Claude Code plugin — hosted MCP over OAuth, no key to copy |
| agent-skills | npx skills add mailkite/agent-skills — skills for coding agents |
Start from a working app, not an empty file.
| mailkite-nextjs-inbox | Zero-database Next.js inbox — receive, read, reply. One-click Vercel deploy. |
| mailkite-inbound-inbox | Deploy-anywhere inbound inbox — Cloudflare, Railway, Render, Fly, DO |
| saas-startup | Next.js SaaS starter with email wired in |
| mail · webmail | Open-source MailKite email client — web, desktop, mobile |
| mailkite-examples | Start here — runnable send / receive-as-webhook / agent-inbox examples across 30+ stacks: Next.js, Nuxt, Astro, Remix, Express, Hono, Bun, Deno, Cloudflare Workers, Vercel Functions, AWS Lambda, Django, Flask, FastAPI, Rails, Sinatra, Laravel, Symfony, Spring Boot, Go, Supabase Edge Functions, SMTP, IMAP, REST, and the CLI |
| mailkite-nodejs-send-email-example | The smallest possible send |
| demo-programmable-email | One account, one key, many domains — the setup you copy into every project |
| demo-email-agent-tool | Three ways to give an agent email: MCP, the SDK, or your own webhook |
| demo-programmable-email-for-agents | An agent inbox on your domain — the receive→think→reply loop |
| laravel | Mail transport — set MAIL_MAILER=mailkite |
| nuxt-mailkite | Nuxt module — inbound webhooks + sending |
| astro-mailkite | Astro integration (SSR) |
| nodemailer-mailkite-transport | Send through MailKite from any Nodemailer app |
| supabase-mailkite | Edge Functions — inbound email as rows, transactional out |
| pipedream | Inbound email Source + Send action |
| send-email-action | GitHub Action — send mail, and trigger workflows from inbound email |
| forge · ploi · runcloud | One-command CLIs to wire MailKite into a managed host |
Standalone pieces we built for MailKite and released on their own.
| mail-parse | Streaming, memory-efficient, fully-typed MIME parser with a declarative middleware seam |
| mail-parse-py · mail-parse-go | Ports with cross-language failure-signature hash parity |
Each one is a runnable MailKite receive → verify → think → reply loop sitting next to the same job done on another provider, so you can diff and test the gap yourself. Most run with no account and no LLM.
agentmail · amazon-ses · brevo · cloudflare-email-routing · elastic-email · gmail-api · loops · mailersend · mailgun · mailjet · mandrill · microsoft-graph · nylas · postal · postmark · resend · sendgrid · smtp2go · socketlabs · sparkpost · zeptomail
Be decent to each other. Search before posting — someone may have hit it already. When you report a problem, include the library and version, what you expected, and what happened; a message ID or request ID gets you an answer much faster. Don't paste API keys, tokens, or real recipients' addresses into a public thread — contact us for anything account-specific.
MailKite is free to start — unlimited domains, no credit card. Get an API key →