Installation
MailBridge has a minimal core with optional extras for providers that need additional SDKs. SMTP and most providers work out of the box — only SendGrid and Amazon SES require an extra install.
Requirements
Install
pip install mailbridge
uv add mailbridge
poetry add mailbridge
This installs the core package. SMTP, Postmark, Mailgun and Brevo are included and ready to use — no additional steps.
Optional Dependencies
SendGrid and Amazon SES require their official SDKs. Install only what you need:
pip install mailbridge[sendgrid]
sendgrid SDKpip install mailbridge[ses]
boto3 (AWS SDK)pip install mailbridge[all]
sendgrid + boto3Which providers need extras?
| Provider | Extra needed | Installs |
|---|---|---|
| SendGrid | pip install mailbridge[sendgrid] |
sendgrid |
| Amazon SES | pip install mailbridge[ses] |
boto3 |
| Postmark | ✓ Included — no extra needed | |
| Mailgun | ✓ Included — no extra needed | |
| Brevo | ✓ Included — no extra needed | |
| SMTP | ✓ Included — uses Python stdlib | |
Verify Installation
Confirm MailBridge is installed correctly:
python -c "from mailbridge import MailBridge; print('MailBridge OK')"
Or check the installed version:
pip show mailbridge
If you're using an optional provider, verify that its SDK is also available:
# SendGrid
python -c "import sendgrid; print('sendgrid OK')"
# Amazon SES
python -c "import boto3; print('boto3 OK')"
Which provider should I choose?
Not sure where to start? Here's a quick guide:
Use SMTP with your Gmail or Outlook account. No sign-up, no API keys — works immediately with credentials you already have.
pip install mailbridge # SMTP works out of the box
Use Postmark or SendGrid. Both have excellent deliverability, template support, and are easy to set up. Postmark requires no extra install.
pip install mailbridge # Postmark included
pip install mailbridge[sendgrid] # SendGrid needs the SDK
Use Amazon SES. If you're running on EC2 or Lambda, you can use IAM roles — no API keys needed in your code at all.
pip install mailbridge[ses]
Use SendGrid, Mailgun, or Brevo — all support native batch APIs for sending thousands of emails efficiently.
pip install mailbridge[sendgrid] # SendGrid
pip install mailbridge # Mailgun or Brevo — included
You can switch providers at any time — the rest of your code stays the same. So starting with SMTP for development and switching to SendGrid for production is completely straightforward.