Back to Browse

Resend MCP Server

Developer ToolsModerate6.2MCP RegistryLocal
Free

Server data from the Official MCP Registry

MCP server for Resend — transactional email API for AI assistants...

About

MCP server for Resend — transactional email API for AI assistants...

Security Report

6.2
Moderate6.2Moderate Risk

This Resend MCP server is well-designed with proper authentication, appropriate rate limiting, and clean code structure. The server correctly requires the RESEND_API_KEY environment variable, implements rate limiting to respect API quotas, and provides comprehensive email management tools. A minor security concern exists around API key exposure in tool output (tokens shown on creation), but this is expected behavior and properly warned. Code quality is high with good error handling and input validation via Zod. Supply chain analysis found 2 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.

3 files analyzed · 6 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

env_vars

Check that this permission is expected for this type of plugin.

HTTP Network Access

Connects to external APIs or services over the internet.

What You'll Need

Set these up before or after installing:

Your API key for the serviceRequired

Environment variable: YOUR_API_KEY

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-friendlygeorge-resend-mcp-server": {
      "env": {
        "YOUR_API_KEY": "your-your-api-key-here"
      },
      "args": [
        "-y",
        "@supernova123/resend-mcp-server"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

Resend MCP Server

An MCP server for Resend — connect any MCP-compatible client to the Resend transactional email API.

npm version npm downloads License: MIT MCP Compatible TypeScript Claude Desktop Cursor

What is this?

An MCP (Model Context Protocol) server that gives AI assistants and agents full access to Resend's email API — send single or batch emails, manage sending domains, API keys, audiences, and contacts — through natural language.

Use it with Claude Desktop, Cursor, Windsurf, Cline, Continue, or any MCP-compatible client to send emails, manage infrastructure, and build automation around email.

Why use this?

  • 18 built-in tools — covers sending (single + batch), domains, API keys, audiences, and contacts
  • Send emails by talking — "send a welcome email to jane@example.com" just works
  • Manage your infrastructure — create/verify/delete domains, mint/revoke API keys, manage contacts
  • Batch sending — send up to 100 emails in a single API call
  • Full contact CRUD — create, read, update, and delete contacts across audiences
  • Rate-limited automatically — respects Resend's 10 req/s free tier, retries on 429
  • Works with every MCP client — Claude Desktop, Cursor, Windsurf, Cline, Continue, and more

Quick Start

Add to your MCP client config (e.g. claude_desktop_config.json):

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

Get a free API key at resend.com/api-keys.

Use it

Ask your AI assistant things like:

  • "Send an email to jane@example.com thanking her for signing up"
  • "List the last 5 emails I sent"
  • "What happened to email ID abc-123?"
  • "Create a new sending domain for mail.acme.com"
  • "Verify domain domain-xyz"
  • "Mint a new API key called 'production-server'"
  • "Add jane@example.com to audience audience-1"

Tools

ToolDescription
send_emailSend a transactional email (HTML or plain text, with Cc/Bcc/Reply-To)
send_batch_emailSend up to 100 emails in a single API call
list_emailsList recent sent emails with their delivery status
get_emailGet details for a specific email by ID
create_domainAdd a new sending domain
list_domainsList all sending domains in your account
verify_domainTrigger DNS verification for a domain
delete_domainRemove a sending domain
create_api_keyCreate a new API key (full, sending, or domain-scoped)
list_api_keysList all API keys (tokens are hidden)
delete_api_keyDelete an API key by ID
list_audiencesList all audiences in your account
create_audienceCreate a new audience for organizing contacts
list_contactsList contacts in an audience
get_contactGet details for a specific contact by ID
create_contactAdd a new contact to an audience
update_contactUpdate a contact's email, name, or subscription status
delete_contactRemove a contact from an audience

Use Cases

Transactional Email Automation

"Send a welcome email to every new signup" — automate onboarding flows, receipts, and notifications through natural language. No more switching between email dashboards.

Domain Management

"Add mail.acme.com as a sending domain and verify it" — manage DNS records, DKIM, and SPF through your AI assistant instead of logging into Resend's dashboard.

Contact & Audience Management

"Add jane@example.com to my VIP audience" — build and segment contact lists without touching a spreadsheet. Full CRUD on contacts and audiences.

Batch Campaigns

"Send this newsletter to all contacts in audience-1" — batch-send up to 100 emails in one call. Perfect for newsletters, product announcements, or re-engagement campaigns.

Infrastructure Audit

"List all my API keys and domains" — audit your Resend setup in seconds. See which keys are active, which domains are verified, and clean up stale resources.

Security

  • API key required — Resend API key is passed via environment variable, never logged or stored in files.
  • No local file access — does not read or write any files on your machine.
  • No shell access — does not execute commands or spawn processes.
  • Rate-limited — automatically caps requests at ~9 req/s to stay within Resend's free tier.
  • Open source — MIT licensed. Inspect the code at GitHub.

Troubleshooting

Rate limit errors (429)

The server auto-retries on 429 with a 2s backoff. Free tier allows 10 req/s. The server caps at ~9 req/s to stay safe. If you hit this frequently, consider upgrading your Resend plan.

"Invalid API key" errors

Verify your RESEND_API_KEY starts with re_ and is active at resend.com/api-keys. Keys take up to 30 seconds to propagate after creation.

Server won't start

Make sure Node.js 18+ is installed: node --version. If using npx, ensure npm is up to date: npm install -g npm@latest.

MCP client can't connect

Verify the config path is correct. Claude Desktop uses ~/Library/Application Support/Claude/claude_desktop_config.json on macOS and %APPDATA%\Claude\claude_desktop_config.json on Windows. Restart the client after config changes.

Emails not delivering

Check list_emails for delivery status. Common issues: missing DNS records (run verify_domain), bounce due to invalid address, or domain not yet verified. Resend's dashboard shows detailed webhook events.

Requirements

  • Node.js 18+
  • A Resend account and API key (RESEND_API_KEY)

Rate Limits

The server automatically rate-limits requests to ~9 calls/second to stay safely under Resend's free-tier limit of 10 req/s. If you hit a 429 anyway, it waits 2s and retries once.

Development

git clone https://github.com/friendlygeorge/resend-mcp-server.git
cd resend-mcp-server
npm install
npm run build
RESEND_API_KEY=re_xxxx npm start

License

MIT

Reviews

No reviews yet

Be the first to review this server!