Guides

MCP email server: send email from Cursor, ChatGPT & more

One server URL gives any MCP client real email tools: send, templates, contacts, schedules and deliverability checks. Here’s the setup for each app.

Last updated November 3, 2026

What an email MCP server does

The Model Context Protocol (MCP) is how AI apps call outside tools. An email MCP server gives your assistant tools such as “send an email” or “list failed emails”, and the assistant decides when to use them while it works. FormSMTP runs one at https://app.formsmtp.com/mcp. It sends through your own SMTP account, so emails come from your own address.

Remote server or a local SMTP server?

You’ll also find open-source MCP servers that run on your machine and talk to SMTP directly. They work, but look at what they need:

Local SMTP MCP serverFormSMTP (remote)
Your SMTP passwordIn a config file or environment variable on each machineStored encrypted in FormSMTP; the AI gets a revocable token
Who it can emailAnyone, unless the server adds its own checksYour project’s allowed recipients, with an hourly limit
InstallNode or Python, kept up to date on every machineNothing: paste a URL
Works in ChatGPT and Claude on the webNot directly: they connect from the vendor’s cloudYes
Logs, templates, contacts, schedulesUsually notIncluded

A local server is fine for a quick experiment with a throwaway account. For a real mailbox, keep the password out of config files that get synced, shared or committed.

1Create a FormSMTP project

Sign up free and add a project. Pick your email provider so the SMTP host and port fill in, enter your login, and click Test connection. Gmail, Google Workspace, Microsoft 365, Zoho, Amazon SES, Brevo, SendGrid, Resend, Mailgun and any other SMTP server work. Personal Outlook.com and Hotmail addresses don’t, because Microsoft only allows OAuth sign-in for them.

How clients sign in

Most clients sign in with OAuth: they open a FormSMTP page where you choose a project and full or read-only access. Clients that only take a fixed header can use an AI key from the AI & MCP page in the dashboard, sent as Authorization: Bearer YOUR_AI_KEY. Project API keys don’t work here.

An AI key is a password for sending email from your project. Prefer OAuth. If you use a key, put it only in your user-level config (such as ~/.cursor/mcp.json) or an environment variable, never in a project file that gets committed, like .cursor/mcp.json, .vscode/mcp.json, .devin/mcp_config.json or .mcp.json. Revoke a leaked key on the AI & MCP page.

Cursor

Add this to ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one. Cursor runs the OAuth sign-in when the server asks for it.

json
{
  "mcpServers": {
    "formsmtp": {
      "url": "https://app.formsmtp.com/mcp"
    }
  }
}

To use an AI key instead, add "headers": { "Authorization": "Bearer YOUR_AI_KEY" } next to url, in ~/.cursor/mcp.json only, not the project file. Cursor asks for approval before using MCP tools by default.

VS Code (GitHub Copilot)

Run MCP: Add Server from the Command Palette and choose HTTP, or save this as .vscode/mcp.json in your workspace:

json
{
  "servers": {
    "formsmtp": {
      "type": "http",
      "url": "https://app.formsmtp.com/mcp"
    }
  }
}

VS Code asks you to sign in to FormSMTP when the server needs it. Approve tool calls as they come up in chat.

ChatGPT

Custom MCP servers are added on ChatGPT on the web. Whether you can add one depends on your plan and, for Business and Enterprise, your workspace settings.

  1. Go to Plugins (chatgpt.com/plugins), select +, then Add custom MCP server.
  2. Name it FormSMTP, enter https://app.formsmtp.com/mcp as the server URL and choose OAuth.
  3. Read the risk warning, select I understand and want to continue, then Create as a plugin.
  4. Install the plugin, sign in to FormSMTP, and use it in a chat.

ChatGPT treats tools that aren’t marked read-only as write actions and asks you to confirm them by default. In FormSMTP, sending, scheduling and editing tools are write actions; looking things up is read-only.

Codex CLI

Add the server to ~/.codex/config.toml, then sign in:

toml
[mcp_servers.formsmtp]
url = "https://app.formsmtp.com/mcp"
bash
codex mcp login formsmtp

With an AI key instead, set bearer_token_env_var = "FORMSMTP_AI_KEY" in the same table and export that variable.

Windsurf, now Devin Desktop

Windsurf’s docs now redirect to Devin Desktop. Its agent supports Streamable HTTP servers and OAuth. Add FormSMTP to ~/.config/devin/mcp_config.json (or .devin/mcp_config.json in a project):

json
{
  "mcpServers": {
    "formsmtp": {
      "url": "https://app.formsmtp.com/mcp"
    }
  }
}

If the server shows “Needs authentication”, click Authenticate to sign in. By default the agent asks before calling MCP tools.

Claude and Claude Code

Claude uses custom connectors, and Claude Code has a one-line claude mcp add command. Both are covered step by step in Can Claude send emails?

The tools your assistant gets

Sixteen tools: send_email, schedule_email and cancel_scheduled_email; template tools; contact tools; read-only tools for logs, stats, scheduled emails and templates; check_deliverability for SPF, DKIM and DMARC; and get_integration_guide, which returns contact-form code for your stack. A read-only connection only sees the read-only tools.

Keeping it safe

  • Pick the project and the access level. When you sign in, FormSMTP asks which project the assistant may use (one or all) and whether it gets full or read-only access. A read-only connection can look at logs, stats and templates but can’t send.
  • Your project rules still apply. Allowed recipients and the hourly limit cover every email an assistant sends, exactly as they do for the API. Set Allowed recipients to your own address or domain while you try it.
  • No passwords shared. The assistant gets its own token (one-hour OAuth tokens that refresh, or an AI key you create). It never sees your SMTP password, and project API keys don’t work on the MCP server.
  • Everything is logged. The AI & MCP page in the dashboard lists each tool call, and emails an assistant sent are marked in Logs. Revoke a connection there at any time.

FAQ

Which AI apps can use FormSMTP’s MCP server?

Any client that supports remote MCP servers over HTTP. This guide covers Cursor, VS Code, ChatGPT, Codex CLI and Devin Desktop; Claude and Claude Code are in the Claude guide.

Can ChatGPT send email?

With a connected app or MCP server that can send, yes. Add FormSMTP as a custom MCP server on ChatGPT on the web, sign in, and ChatGPT asks you to confirm before each send by default.

Is a remote MCP server safer than a local one?

For a real mailbox, usually. A local SMTP server needs your password in a config file on every machine. With FormSMTP the password stays encrypted on the server, and the AI gets a token limited to one project, your allowed recipients and an hourly cap.

Does the MCP server cost extra?

No. It’s included on every plan, including Free. Emails your assistant sends count toward your monthly limit.

More guides

Get a Founding Pass

10,000 emails a month, free for your first year. Pass No. 0008 is next: 1,993 of 2,000 left, no card.