All 63 Dependencies
Every package e2a depends on, ranked by repo health score.
e2a is an open-source email gateway purpose-built for AI agents. Unlike generic SMTP libraries or webhook-forwarding hacks, e2a treats agents as first-class email citizens: each agent gets its own address, and every email it receives is cryptographically verified before delivery. SPF/DKIM checks run on inbound messages, and a set of HMAC-signed `X-E2A-Auth-*` headers are appended so receiving agents can confirm the sender identity without trusting raw SMTP metadata.
Delivery adapts to how the agent runs. Cloud-hosted agents get emails pushed as HTTP webhook POSTs the moment they arrive. Local agents — running on a developer laptop without a public URL — connect over WebSocket and receive the same real-time notifications, with messages queued while offline and drained on reconnect. Both paths share the same REST API, so switching modes is a single attribute change on the agent record.
For agentic workflows that involve humans, e2a includes an optional human-in-the-loop gate. When enabled, outbound messages from an agent pause in a `pending_approval` state; a reviewer can approve or reject via the dashboard, a one-click magic-link email, or the CLI. Configurable TTLs and expiration actions (auto-send or discard) keep flows moving even without a reviewer online.
The project ships TypeScript and Python SDKs, a `e2a` CLI, an MCP server for Claude Code integration, and an OpenAPI spec with a generated dashboard. It is licensed under Apache 2.0 and designed to run on any Docker host, with PostgreSQL as the only stateful dependency.