Back to MCP Servers

Resend MCP Server

Official Resend MCP server. Send and receive emails, manage contacts, broadcasts, templates, domains, audiences, and API keys via the Resend API.

Email & Outbound by Resend API Key active
Overview

The Resend MCP Server is the official integration that exposes Resend's email platform to MCP clients like Claude Desktop, Cursor, and Claude Code. It lets AI agents send and receive emails, manage contacts and audiences, build and dispatch broadcast campaigns, verify domains, and administer API keys and webhooks, all through natural language.

The server covers most of Resend's REST API surface: transactional and batch email sending with HTML, plain text, attachments (local, URL, or base64), CC/BCC, reply-to, scheduling, and tags; inbound message reading; contact management with custom properties and segment membership; broadcast composition with personalization and scheduled delivery; reusable templates with a visual editor; domain verification with tracking and TLS configuration; and infrastructure tools for API keys and webhooks.

It supports two transports: a default stdio mode that runs locally via npx resend-mcp, and an HTTP mode where clients pass their Resend API key as a Bearer token in the Authorization header. Optional defaults like sender address and reply-to can be preconfigured.

Tools

Tool Description
Emails Send, list, get, cancel, update, and batch send emails with HTML/plain text, attachments (file, URL, or base64), CC/BCC, reply-to, scheduling, tags, and topic-based sending.
Received Emails List and read inbound messages and list or download received attachments.
Contacts Create, list, get, update, and remove contacts with custom properties, segment membership, and subscription state.
Broadcasts Create, send, list, get, update, and remove campaign broadcasts with scheduling, personalization placeholders, and preview text.
Templates Create, list, get, update, publish, duplicate, and remove reusable message templates.
Domains Create, list, get, update, remove, and verify sender domains and configure tracking, TLS, and other capabilities.
Segments Create, list, get, and remove audience segments.
Topics Create, list, get, update, and remove subscription topics for opt-in management.
Contact Properties Create, list, get, update, and remove custom contact attributes.
API Keys Create, list, and remove Resend API keys.
Webhooks Create, list, get, update, and remove webhooks for event notifications.
Setup Guide

Prerequisites

  • A free Resend account
  • A Resend API key from resend.com/api-keys
  • A verified sender domain (required for sending to external addresses)

Claude Code (stdio)

claude mcp add resend -e RESEND_API_KEY=re_xxxxxxxxx -- npx -y resend-mcp

Claude Desktop / Cursor

Add to your MCP config (e.g. claude_desktop_config.json or .cursor/mcp.json):

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

HTTP Transport

Start the server:

npx -y resend-mcp --http --port 3000

The endpoint is http://127.0.0.1:3000/mcp. Clients authenticate by passing the Resend API key as a Bearer token in the Authorization header.

Environment Variables

  • RESEND_API_KEY (required): Your Resend API key
  • SENDER_EMAIL_ADDRESS (optional): Default from address
  • REPLY_TO_EMAIL_ADDRESSES (optional): Comma-separated default reply-to addresses
  • MCP_PORT (optional): HTTP port override

CLI Flags

  • --key: API key (stdio only)
  • --sender: Default sender email
  • --reply-to: Default reply-to address
  • --http: Enable HTTP transport
  • --port: HTTP port (default 3000)
Use Cases
  • Send transactional emails (welcome, password reset, receipts) from an agent without writing API calls by hand
  • Draft, schedule, and dispatch broadcast campaigns to a Resend audience with personalization placeholders
  • Triage inbound emails by listing received messages, reading content, and downloading attachments inside an agent workflow
  • Manage contact lists at scale: bulk add contacts to segments, update custom properties, and clean unsubscribed addresses
  • Provision and verify new sender domains and rotate API keys or webhook endpoints during infrastructure setup
Example Prompts
  • "Send a plain-text email from founders@acme.com to the 12 trial users who signed up yesterday thanking them for joining."
  • "Create a broadcast for the 'Newsletter' audience with this HTML, schedule it for Tuesday 9am ET, and add a preview text."
  • "List all unverified domains in my Resend account and start verification for acme.io."
  • "Show me the last 20 inbound emails sent to support@acme.com and summarize the open issues."
  • "Add a webhook pointing to https://api.acme.com/resend-events for the email.delivered and email.bounced events."
Pros
  • Official server maintained by Resend, distributed as the resend-mcp npm package
  • Broad API coverage: emails, broadcasts, templates, contacts, domains, webhooks, and API keys
  • Supports both stdio and HTTP transports, with Bearer-token auth for remote use
  • Optional defaults (sender, reply-to) reduce repetitive prompting
Limitations
  • Requires a verified domain in Resend before agents can send to external recipients
  • Giving an agent an API key with full scope can send real email to real users, so scoped keys and review steps matter
  • Inbound email features depend on Resend's inbound product being configured for your domain
Alternatives
  • Postmark MCP for transactional email via Postmark
  • SendGrid (community MCP implementations exist) for transactional and marketing email
  • Gmail MCP server when you want to send from a personal Google account rather than a domain via Resend