Get the FREE Ultimate OpenClaw Setup Guide →

resend-streamable

MCP Server for interacting with resend.com. Written in TypeScript, Node and Hono.dev

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio iceener-resend-streamable-mcp-server npx mcp-remote http://localhost:3000/mcp --transport http-only \
  --env NO_PROXY="127.0.0.1,localhost"

How to use

This MCP server provides a streamable-http interface to manage email newsletters via Resend. It enables you to connect a client that speaks the MCP protocol to control contacts, segments, templates, campaigns, and subscriptions programmatically, using human-friendly identifiers like emails and segment names rather than raw IDs. The server auto-generates multipart emails (HTML + plain text) and supports both single-send and broadcast workflows. You can inspect data with find_contacts and segments, upsert contacts in bulk, and send messages or campaigns to named segments. The design prioritizes LLM-friendly task tooling, bulk operations, and clear feedback so an agent can plan actions, execute them, and receive summaries and next steps.

To use, set up an MCP client (like Alice App or Claude Desktop) to connect to the MCP endpoint exposed by the server (e.g., http://127.0.0.1:3000/mcp). The client will send tools such as upsert_contacts, find_contacts, segments, send, campaigns, subscriptions, and templates to perform tasks. For sending, you can target individual recipients or broadcast to a named segment; you can also leverage templates with variables and personalize messages. The server emphasizes human identifiers (emails and segment names), supports scheduling, and returns actionable results that include summaries and next steps.

How to install

Prerequisites:

  • Bun (recommended) or Node.js 20+
  • A Resend account with a verified domain
  1. Clone the repository and navigate to the project directory

  2. Install dependencies

bun install
  1. Create and configure the environment
  • Copy the example env file and adjust values
cp env.example .env

Edit .env to configure:

  • PORT (default 3000)
  • AUTH_ENABLED (true/false)
  • AUTH_STRATEGY (bearer by default)
  • BEARER_TOKEN (random token for authentication)
  • RESEND_API_KEY (your Resend API key)
  • RESEND_DEFAULT_FROM (verified sender address)

4) Run the server

bun dev


5) Verify the MCP endpoint

MCP: http://127.0.0.1:3000/mcp


Optional: If you’re using the example client config, you can start a remote MCP connection using npx as shown in the mcp_config example above.

Additional notes

Tips and common considerations:

  • Ensure RESEND_DEFAULT_FROM is a verified sender address to avoid delivery issues.
  • If you enable AUTH_ENABLED, use a strong BEARER_TOKEN and send Authorization: Bearer <token> from your MCP client.
  • The server supports a dual runtime (Node.js/Bun or Cloudflare Workers); choose your preferred runtime when deploying.
  • Segment names are treated as case-insensitive; be consistent to avoid confusion.
  • Broadcasts are scheduled by the client; you can cancel or adjust timing as needed before sending.
  • Templates must be published in the Resend dashboard to be usable via send with a template.
  • When using upsert_contacts, you can bulk-add or update multiple contacts with a single call (up to practical limits).
  • For debugging, review the returned summary fields (created, updated, failed) to verify operations succeeded.

Related MCP Servers

Sponsor this space

Reach thousands of developers