OpenMail

Official registry Productivity

Gmail for agents: create inboxes, read and reply to mail, send email, manage domains. OAuth sign-in.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http openmail 'https://mcp.openmail.sh/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "openmail": {
            "type": "http",
            "url": "https://mcp.openmail.sh/mcp"
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. OpenMail MCP
  2. Connect
  3. Env
  4. Local
  5. Contributing

OpenMail MCP

Hosted Streamable HTTP MCP at https://mcp.openmail.sh/mcp. Email inbox for AI agents: one inbox, read mail that wants a reply, reply in-thread.

There is no local stdio catalog — stdio-only clients should use mcp-remote.

Connect

Claude (OAuth): paste https://mcp.openmail.sh/mcp

Cursor (OAuth): Add to Cursor, or add the URL below without headers. Also on cursor.directory as a plugin (.cursor-plugin/plugin.json + mcp.json).

Claude Code: claude mcp add --transport http openmail https://mcp.openmail.sh/mcp, or install as a plugin (claude plugin marketplace add openmailsh/mcp, then claude plugin install openmail@openmailsh-mcp): the plugin bundles the server with the openmail skill in skills/, which teaches the agent when to reach for email and how to handle a thread.

VS Code / any registry client: listed in the MCP Registry as sh.openmail/openmail.

Cursor or headless agents (API key):

{
  "mcpServers": {
    "openmail": {
      "url": "https://mcp.openmail.sh/mcp",
      "headers": { "Authorization": "Bearer om_YOUR_KEY" }
    }
  }
}

Prefer an inbox-scoped key. Read-only: /mcp/readonly. One inbox: /mcp/inbox/{id}.

Keys and transcripts: over OAuth (Claude, Cursor sign-in) setup_agent_email and mint_inbox_key never return a token — the session is already authenticated, and anything returned lands in the chat. They point to the console, which shows a new key once in the browser. Over an API key (headless agent) the token is returned in the tool result; move it to the agent's env.

stdio-only clients: npx -y mcp-remote https://mcp.openmail.sh/mcp

Env

NamePurpose
OPENMAIL_API_URLAPI origin (https://api.openmail.sh)
MCP_RESOURCE_URLOAuth resource (https://mcp.openmail.sh)
MCP_JWT_SECRETSame secret as the API. Required in production; outside production falls back to NEXTAUTH_SECRET
CONSOLE_ORIGINConsent page host
PORTListen port
POSTHOG_API_KEYTurns on PostHog MCP Analytics ($mcp_tool_call per call). Unset = off
MCP_ANALYTICS_DEBUGSet to log every captured analytics event

See .env.example.

Local

pnpm install
pnpm test
pnpm dev

Contributing

Open an issue or PR. Run pnpm typecheck && pnpm test before pushing.

MIT © OpenMail

Frequently asked questions

What is OpenMail?

Gmail for agents: create inboxes, read and reply to mail, send email, manage domains. OAuth sign-in.

How do I install OpenMail?

It runs as a remote server. In Claude Code: claude mcp add --transport http openmail 'https://mcp.openmail.sh/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does OpenMail need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is OpenMail open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains OpenMail?

It is published by openmailsh. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.