π¬ Mail Intake β Provider-Agnostic Email Ingestion
Mail Intake is a contract-first, read-only email ingestion framework. It
pulls mail from external providers (such as Gmail), parses and normalizes it
into clean, provider-agnostic domain models β ready to persist, index, or
analyze downstream.
Doc model: this wiki is written for humans β howβto guides and extension recipes. The authoritative API contracts live in the code (GSDFC docstrings) and the machineβreadable bundle under
docs/mcp/.
π Key Features
- π¬ Read-only ingestion β never mutates provider state
- π§© Contract-first layers β adapters, parsers, and readers separated
- βοΈ Provider-agnostic models β
MailIntakeMessage/MailIntakeThreadhave no provider internals - π Extensible auth β pluggable auth providers and credential stores (pickle for dev, Redis for production)
- π§ͺ Deterministic & testable β no implicit global state or env reads
- π Gmail support β reference adapter built on the official Google APIs
β‘ Quick Start
π Documentation Structure
| Section | What you'll find |
|---|---|
| Overview | Layers, domain models, and design guarantees |
| How to Use | Gmail ingestion, parsing, and credential stores |
| Extending Mail Intake | Custom adapters, auth providers, stores |
| Development | Setup, tests, and regenerating docs |
π Related Resources
- Source Code: Gitea Repository
- Internal PyPI: pip.aetoskia.com/simple/mail-intake
- CI: Builds and publishes tagged releases, gated on black / ruff / mypy / pytest.
Β© Aetoskia Internal β mail-intake 0.0.2