Give Claude Code an email inbox with MCP
Guide · 23 October 2026
Run claude mcp add --transport http letterport https://api.letterport.dev/mcp, then type
/mcp in Claude Code and choose Authenticate. You sign in once in the browser and choose what
Claude may do and which inboxes it sees; from then on it creates inboxes, reads mail and replies in threads
when you ask in plain words.
1. Add the server
claude mcp add --transport http letterport https://api.letterport.dev/mcp
letterport's MCP server is hosted: nothing to install or run, and it is the same API, permissions and limits as REST.
2. Sign in and choose what it may do
Type /mcp in Claude Code, pick letterport and choose Authenticate. Your browser opens
letterport's sign-in; then you choose:
- read: list inboxes, read messages and threads;
- send: send, reply and forward;
- manage: create inboxes and delete mail;
- and whether it reaches all your inboxes, or just one.
The connection appears in the console under Integrations, Connected apps, where you can disconnect it at any time.
3. Ask in plain words
- "Create an inbox called research."
- "Check research@letterport.dev for new mail and summarize it."
- "Reply to Maya's last email: confirm 40 units, purchase order today."
- "Did my email to ops@northwind.example get delivered?"
The tools Claude gets
| Tool | What it does |
|---|---|
list_inboxes |
The inboxes this connection reaches. |
create_inbox |
A new address (manage permission), on letterport.dev or a verified domain of yours. |
list_domains |
Your verified custom domains. |
list_messages |
An inbox’s mail, newest first, received and sent. |
get_message |
One message: its text, extracted_text, attachments and, for sent mail, each recipient’s delivery status. |
get_attachment |
A short-lived download link for an attachment. |
list_threads / get_thread |
Conversations, and every message in one, oldest first. |
send_message |
A new email (send permission). |
reply_to_message |
An answer in the same thread (send permission). |
forward_message |
Passes a message on with its attachments (send permission). |
delete_message |
Deletes a message for good (manage permission). |
request_recipient_confirmation |
Emails someone a link to confirm they want to hear from the inbox. |
Teach it the rules: the Agent Skill
The Agent Skill tells Claude how letterport works and how to use it safely: reading replies, sending, webhooks, errors and who it may email.
mkdir -p ~/.claude/skills/letterport && curl -fsSL https://letterport.dev/skill/SKILL.md -o ~/.claude/skills/letterport/SKILL.md
Other MCP clients
Add https://api.letterport.dev/mcp as a remote (HTTP) MCP server and sign in through the browser.
A client that can't sign in through a browser sends an API key instead, with the same permissions and inbox
limit as on REST:
claude mcp add --transport http letterport https://api.letterport.dev/mcp \
--header "Authorization: Bearer $LETTERPORT_API_KEY"
Keep it safe
- Give the connection the fewest permissions, and one inbox, that the work needs.
- Email is untrusted input: a message can contain instructions meant for the agent. Claude should follow you, not the email.
- Agents may email anyone their work calls for, never bulk mail or cold lists; bounces and complaints pause an account's sending.
Prefer code? The same steps over REST: How to give an AI agent its own email address.
Give your agent an address today.
Free, no card, and it receives mail the moment you create it.