Programmable mailboxes
Mailboxes for AI agents.
Pidgeon is the email inbox API for AI agents. It gives agents their own inboxes so they can work with emails just like a human.
01 · What you get
Give your agents a proper mailbox.
So they can run email like you would.
Inbox API
Create, manage and operate inboxes entirely over REST, on a domain you own.
Threads + replies
Pull conversation history, keep read state and labels, and reply straight into the thread.
Attachments
Send and receive files, and fetch any one of them by id without downloading the message.
Realtime events
Take a signed webhook the moment mail arrives. Retried, dead-lettered, and replayable for ninety days.
Custom domains
Bring your own domain, with SPF, DKIM and DMARC written for you.
Multi-tenancy
Give every customer their own inboxes, keys and webhooks — scoped together, suspended together.
SDKs, CLI + MCP
Build with typed TypeScript and Python SDKs, a command line, or the MCP server your coding agent already speaks.
Semantic search
Search inboxes by meaning rather than by keyword, and find messages by what they are about.
Data extraction
Pull names, dates and structured fields straight out of messages and their attachments.
02 · Integration
Works with your agent stack.
Get it running with one copy-paste.
# Writes .mcp.json in the project root, where a project-scoped server is read from
PIDGEON_API_KEY=pgn_live_… npx -y @pidgeon-ai/mcp init03 · Use cases
Powering every type of agent.
From browser automation to customer service, Pidgeon enables any agent to communicate via email.
- Browser agents
- verify-7f2a@yourdomain.com
- Your agent hits a signup form and gives an address it owns. The confirmation lands in that mailbox a second later, your agent reads the code off the message, and the form is submitted before the code expires.
- Scheduling
- calendar@yourdomain.com
- Your agent proposes a time. The other person replies that Tuesday is better. Your agent reads the reply in the thread, moves the event, and sends an invitation their calendar accepts — Google, Outlook or Apple.
- Doc processing
- invoice-*@yourdomain.com
- A supplier emails a PDF to an address you never had to create — one rule covers every invoice. The webhook arrives carrying the attachment id, your code pulls the file straight down, and nobody opens an inbox.
- Customer service
- support@yourdomain.com
- Software answers the half of the queue that is routine. When one needs a person, they open the same mailbox in the web client and take the thread over. The customer sees one conversation and one address throughout.
04 · Scale
Built to scale.
For weekend projects and enterprises alike.
Always on
Built on redundant infrastructure across more than one region, so your agents never miss a message.
Instant inboxes
Create a mailbox in milliseconds. No domain verification, no quota to request, and your own domain on the free plan.
Developer first
REST, typed SDKs, a CLI, webhooks, IMAP and SMTP — all generated from one OpenAPI document. Working in minutes, not days.
Private and secure
Keys are scoped to the addresses they may touch and can only ever mint narrower keys. Every event lands on a log you can replay.
05 · Questions
Got any questions?
Here’s what people usually ask.
- How does Pidgeon handle two-way email conversations?
- Every Pidgeon inbox is a persistent mailbox. Replies to messages the agent sent land in the same inbox, threaded to the original conversation. A webhook fires on inbound mail, so the agent can respond without polling.
- How does Pidgeon compare to SendGrid, Mailgun, or Postmark?
- Those are transactional email APIs, optimised for outbound sends. Pidgeon is built around the inbox itself. Each agent has its own persistent mailbox with threading, attachments and inbound webhooks, and both directions are first-class. A sending API’s job ends when the message leaves; ours starts there.
- Can Pidgeon handle multiple agents or tenants at scale?
- Every agent gets its own inbox with its own address, authentication and message store. Workspaces group inboxes by tenant, isolating data access between groups — so one customer of yours cannot reach another’s mail, and a tenant suspends as a unit.
- Why should an AI agent have its own email inbox?
- Email is a globally verifiable address. When each agent has its own inbox it has a stable identity that can sign up for tools, receive verifications and hold an audit trail of its actions. This keeps agent activity separate from any human’s account.
- How do webhooks work in Pidgeon?
- Pidgeon fires webhooks on inbound events like message received, message delivered and message bounced. Webhooks are signed for verification and retried on a non-2xx response, then dead-lettered rather than dropped. Configure them per inbox over the API or in the dashboard, and replay any delivery for ninety days.
- How do I keep emails from landing in spam?
- Deliverability depends on domain authentication, sender reputation and content quality. Pidgeon configures SPF, DKIM and DMARC automatically when you add a domain, which is the part people get wrong by hand. For production, use a custom domain so you own your sender reputation — and a new account starts with a smaller daily allowance and earns its way up, because nobody can make a brand-new domain trustworthy overnight.
- Can messages automatically expire?
- Optional message expiry ends access to existing and new messages across your workspace. Older messages become inaccessible once it is on, including for replies and forwards. Talk to us about early access.
- Is there a free tier?
- Yes, and it is not a trial. The free plan includes 3 inboxes and 3,000 emails a month, no credit card. Receiving is free on every plan. If Free ever changes, accounts already on it keep what they had.
How does Pidgeon handle two-way email conversations?
Every Pidgeon inbox is a persistent mailbox. Replies to messages the agent sent land in the same inbox, threaded to the original conversation. A webhook fires on inbound mail, so the agent can respond without polling.
How does Pidgeon compare to SendGrid, Mailgun, or Postmark?
Those are transactional email APIs, optimised for outbound sends. Pidgeon is built around the inbox itself. Each agent has its own persistent mailbox with threading, attachments and inbound webhooks, and both directions are first-class. A sending API’s job ends when the message leaves; ours starts there.
Can Pidgeon handle multiple agents or tenants at scale?
Every agent gets its own inbox with its own address, authentication and message store. Workspaces group inboxes by tenant, isolating data access between groups — so one customer of yours cannot reach another’s mail, and a tenant suspends as a unit.
Why should an AI agent have its own email inbox?
Email is a globally verifiable address. When each agent has its own inbox it has a stable identity that can sign up for tools, receive verifications and hold an audit trail of its actions. This keeps agent activity separate from any human’s account.
How do webhooks work in Pidgeon?
Pidgeon fires webhooks on inbound events like message received, message delivered and message bounced. Webhooks are signed for verification and retried on a non-2xx response, then dead-lettered rather than dropped. Configure them per inbox over the API or in the dashboard, and replay any delivery for ninety days.
How do I keep emails from landing in spam?
Deliverability depends on domain authentication, sender reputation and content quality. Pidgeon configures SPF, DKIM and DMARC automatically when you add a domain, which is the part people get wrong by hand. For production, use a custom domain so you own your sender reputation — and a new account starts with a smaller daily allowance and earns its way up, because nobody can make a brand-new domain trustworthy overnight.
Can messages automatically expire?
Optional message expiry ends access to existing and new messages across your workspace. Older messages become inaccessible once it is on, including for replies and forwards. Talk to us about early access.
Is there a free tier?
Yes, and it is not a trial. The free plan includes 3 inboxes and 3,000 emails a month, no credit card. Receiving is free on every plan. If Free ever changes, accounts already on it keep what they had.
npm install @pidgeon-ai/sdk