Skip to main content
Glama
bugzy-ai

Resend MCP Server

by bugzy-ai

Resend MCP Server

A Model Context Protocol (MCP) server for sending emails via the Resend API. Designed for use with Claude Code and other MCP-compatible AI assistants.

Features

  • Send single emails with HTML or plain text content

  • Send batch emails (up to 100 in one call)

  • Support for CC, BCC, and reply-to addresses

  • Custom tags for email tracking

  • Platform-controlled sender address for security

Related MCP server: Resend MCP

Installation

npm install @bugzy-ai/resend-mcp-server

Or run directly with npx:

npx @bugzy-ai/resend-mcp-server

Configuration

Set the following environment variables:

RESEND_API_KEY=re_xxxxxxxxxxxxx
RESEND_FROM_EMAIL="Bugzy <notifications@yourdomain.com>"

MCP Configuration

Add to your MCP configuration (e.g., .mcp.json):

{
  "mcpServers": {
    "resend": {
      "command": "resend-mcp-server",
      "env": {
        "RESEND_API_KEY": "${RESEND_API_KEY}",
        "RESEND_FROM_EMAIL": "${RESEND_FROM_EMAIL}"
      }
    }
  }
}

Available Tools

resend_send_email

Send a single email to one or more recipients.

Parameters:

  • to (required): Email address(es) - string or array (max 50)

  • subject (required): Email subject line

  • html (optional): HTML content

  • text (optional): Plain text content (one of html/text required)

  • cc (optional): CC recipient(s)

  • bcc (optional): BCC recipient(s)

  • reply_to (optional): Reply-to address(es)

  • tags (optional): Array of {name, value} for tracking

resend_send_batch_emails

Send multiple emails in a single API call.

Parameters:

  • emails (required): Array of email objects (max 100)

    • Each email has the same parameters as resend_send_email

Development

# Install dependencies
npm install

# Run in development mode
npm run dev

# Build for production
npm run build

# Lint code
npm run lint

License

Apache-2.0

Available Tools

1 tool
resend_send_emailB

Send a single email to one or more recipients. Supports HTML and plain text content, CC/BCC, reply-to, and custom tags for tracking.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesRecipient email address(es). Max 50 addresses.
subjectYesEmail subject line
htmlNoHTML version of the email body
textNoPlain text version. Auto-generated from HTML if omitted.
ccNoCC recipient(s)
bccNoBCC recipient(s)
reply_toNoReply-to email address(es)
tagsNoCustom metadata tags for tracking (max 50)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the action ('Send') and some features, but omits critical details like authentication requirements, rate limits, error handling, whether emails are queued or sent immediately, or what happens on success/failure. For a mutation tool with zero annotation coverage, this is inadequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that efficiently lists key features without redundancy. Every element ('Supports HTML and plain text content, CC/BCC, reply-to, and custom tags for tracking') adds value, and it's appropriately front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter mutation tool with no annotations and no output schema, the description is insufficient. It covers basic purpose and features but lacks behavioral context (e.g., side effects, error responses), usage prerequisites, and output expectations. The high schema coverage helps, but the description doesn't compensate for the missing structural information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds minimal value by listing some parameter categories (CC/BCC, reply-to, tags) but doesn't provide additional syntax, format, or usage details beyond what the schema provides. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Send a single email') and resource ('to one or more recipients'), with additional details about supported features (HTML/plain text, CC/BCC, reply-to, custom tags). It fully distinguishes what the tool does without relying on sibling tools for context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through feature mentions (e.g., 'for tracking'), but provides no explicit guidance on when to use this tool versus alternatives. Since there are no sibling tools, this is less critical, but it lacks any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.4/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool has a clear and distinct purpose for sending emails.

Naming Consistency5/5

The tool name follows a consistent verb_noun pattern (resend_send_email), and with only one tool, there is no inconsistency to evaluate. The naming is clear and predictable.

Tool Count2/5

A single tool for an email server is too few for the apparent scope, as it lacks basic operations like listing emails, checking status, or managing templates. This limits functionality and may cause agent failures.

Completeness2/5

The tool surface is severely incomplete for an email domain; it only supports sending emails without any read, update, delete, or management capabilities. This creates significant gaps that will hinder agent workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Allows sending emails through the Resend service using a standardized Model Context Protocol (MCP) interface, with TypeScript support.
    21,862
    6
    MIT
  • F
    license
    B
    quality
    Not graded
    maintenance
    Enables sending emails and managing webhooks through the SendLayer API. Supports plain text and HTML emails with attachments, CC/BCC recipients, and webhook event management for email delivery tracking.
    5
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables sending emails (including mass emailing), querying, updating, and canceling delayed emails via the Resend API.

Appeared in Searches

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bugzy-ai/resend-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server