Integrations

An MCP email server for the agent you already run

One URL, an OAuth consent screen you control, and six tools scoped to the inboxes you pick.

Email for Agents supplies the inbox and the email tools. Your agent keeps running wherever it runs today — we do not host it, and there is nothing to install on our side. If your client supports remote MCP and OAuth, this is one paste and one consent screen.

https://mcp.emailforagents.ai/mcp

What connecting actually does

Nothing is granted by pasting a URL. The client starts an authorization, and you make three decisions in the browser before any tool exists.

01

The client asks

It requests some combination of read, draft and send. The request is bound to the browser that opened it and expires after 10 minutes.

02

You choose

The consent screen names the client, the scopes it asked for, and the highest permission it could receive. You pick the project, the specific inboxes, and the permission level — never more than you hold yourself.

03

The grant exists

It covers those inboxes and nothing else, expires after 30 days, and can be revoked sooner from Connections. Replaying a refresh token revokes the whole grant.

The six tools

A tool the grant does not cover is not merely refused — it is not listed, so the agent never sees a capability it cannot use.

list_inboxes Read

List the inboxes this grant covers.

list_threads Read

List conversations in one of them.

list_messages Read

List message ids, recipients, attachment metadata and previews, with a cursor.

get_message Read

Read one message body, bounded in size.

create_draft Draft

Compose a new message or a threaded reply for a human to release. It cannot transmit mail.

send_message Send

Transmit a message, still subject to the inbox's approval policy.

Drafting and sending are genuinely different privileges: the draft path runs with the send scope stripped from the credential, so an agent with draft access cannot reach the send tool by a side door. Tool results are capped at 131,072 characters; past that the server tells the agent to use the scoped REST API for the full body rather than truncating silently.

An API key will not work here, on purpose

The MCP endpoint accepts connection grant tokens and nothing else.

A project API key, a human sign-in session and a test session are all rejected at /mcp with an explicit error. This is a deliberate boundary, not a gap: an MCP tool call is made by software acting for a person, and the authority for it has to be traceable to a human who approved a specific set of inboxes. A shared API key cannot carry that. The endpoint also answers 405 to a GET, because every MCP exchange is a POST, and it negotiates protocol versions 2025-11-25, 2025-06-18 and 2025-03-26.

If your client cannot do OAuth, that is what the REST API is for. It is the same permissions and the same send pipeline.

Client status, honestly

No named client is certified, supported or one-click. Every OAuth connection is recorded with a trust class of unverified, whatever opened it — so this table is what we have tried, not a compatibility promise.

Claude Desktop

Testing generic MCP connection — not certified yet

Remote MCP connectors depend on the application and plan.

Claude Code

Testing generic MCP connection — not certified yet

Remote MCP connectors depend on the application and plan.

Cursor

Testing generic MCP connection — not certified yet

Remote MCP connectors depend on the application and plan.

Any other MCP client

Not yet tested

If it speaks remote MCP over HTTP and can complete an OAuth authorization, it should work. We have not verified it.

Anything without remote MCP

Tested API recipe

Use a project-scoped REST key instead. Every MCP tool has a REST equivalent.

Connector availability can also depend on the application and the plan you are on with that vendor, which is outside our control. If a client you use works, we would rather hear about it than guess — who to tell.

Guides about connecting

n8n AI Agent Gmail Node: Invalid Email Address

Why the n8n AI agent Gmail node throws an invalid email address error: it only checks for an @. The model outputs that trip it, and the ones that slip past.

10 min read

Email MCP Server Comparison: Who Filters tools/list

An email MCP server comparison on one property: does a narrower credential shrink tools/list? 18 servers audited, 182 registry endpoints probed.

14 min read

A LangChain Email Tool That Can Receive

A langchain email tool that receives as well as sends: the current ToolRuntime interface, idempotency keys that survive a resume, and which events fire.

12 min read

Dify Email Integration: An Inbox per AI Agent

Dify's email plugin sends as one workspace SMTP account. Give each AI agent workflow its own inbox, a scoped key, and sends that survive node retries.

15 min read

Letta Agent Email Address: Store Thread IDs, Not Text

Give a Letta agent email address durable context: keep thread IDs in a memory block, rehydrate from the threads endpoint, and see what body_available hides.

12 min read

Email MCP in Windsurf, Cline and Zed

One remote URL, three config shapes, no mcp-remote bridge. The current Windsurf, Cline and Zed entries, and four reasons a client cannot connect.

11 min read

Vercel AI SDK: Send and Receive Agent Email

Wire the AI SDK tool helper to a real inbox, then survive the inbound webhook: which status codes get retried, and which one silently discards the event.

12 min read

Give Cursor an Email Inbox Over MCP

Give Cursor an email inbox over MCP: the mcp.json entry, the scope ceiling you set in the client, and the refresh-token replay that revokes the whole grant.

13 min read

AutoGen Agents That Send Email Without SMTP

Make an AutoGen agent send email without SMTP: a REST send tool, an Idempotency-Key bound to the turn, and the inbound half the examples all skip.

12 min read

Mastra Agent Email: A Real Inbox That Replies

Give a Mastra agent its own inbox: connect over remote MCP or a createTool, then suspend a workflow step and resume it when message.received fires.

12 min read

CrewAI Email Integration: One Inbox, Two Keys

A CrewAI email integration where the inbox is shared and the credential is not: read-only scopes for the researcher, messages:send for one sender agent.

12 min read

Email Tools for the OpenAI Agents SDK

Wire the OpenAI Agents SDK to an agent-owned inbox: one hosted MCP config or hand-written function tools, a six-tool surface, and a send tool that is absent.

13 min read

Replit Agents That Own an Email Address

A Replit agent email address for the build loop and a separate live inbox for the deployed app, and why the key prefix keeps them apart.

9 min read

Give an OpenClaw Agent an Email Inbox

Give an OpenClaw agent an email inbox it can read and draft in, with outbound mail held at a gate the agent itself is not permitted to release.

11 min read

Make.com Scenarios With an Agent-Owned Inbox

Make a Make.com AI agent send email from its own address: the HTTP call, an Idempotency-Key that survives Make's retry, and inbound events.

11 min read

Pydantic AI Email Tool: Typed Send Results

Give a Pydantic AI email tool a discriminated union return type, so a model can never read accepted as delivered or a queued draft as a sent message.

11 min read

Give a Zapier Agent Its Own Email Address

Zapier's email actions send as the account you connected. Give a Zapier agent an email address of its own: the send call, the key, and inbound.

12 min read

Give Claude Code Its Own Email Address

Email for Claude Code over remote MCP: one endpoint URL, an OAuth grant instead of an API key, and the exact tool list a read plus draft grant shows.

13 min read

LangGraph Agent Email Inbox: The Parts Outside the Graph

Build a LangGraph agent email inbox: resume a run from an inbound event, keep the approval gate outside the graph, and survive two emails at once.

13 min read

n8n AI Agent Email Inbox Without the Gmail Node

Wire an n8n AI agent email inbox to the HTTP Request node: the send call, an Idempotency-Key that survives every n8n retry, and signed inbound webhooks.

16 min read

How to Give an AI Agent Its Own Email Address

Create a dedicated inbox, choose read, draft or send permission, connect over MCP or a scoped key, and prove a real round trip before granting send access.

8 min read

MCP Email Server: Give Your Agent Client a Real Inbox

How a remote MCP email server works, what the consent screen must show, how to scope a grant to one inbox, and how to verify it before allowing sends.

9 min read

MCP or API Key for Agent Email? How to Choose

Remote MCP over OAuth or a project-scoped REST key: what each can and cannot do, who authorises it, how revocation differs, and why teams use both.

7 min read

Connect a test inbox first — it cannot reach a real person.

Create an inbox Follow the connection guide