Skip to main content

What is an MCP Server?

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. It allows AI assistants like Claude and Cursor to perform actions on your behalf. Unosend’s MCP Server enables you to send emails directly from your AI assistant conversations.

Features

Send Emails

Send plain text and HTML emails from chat

Schedule Emails

Schedule emails for future delivery

CC & BCC

Add CC and BCC recipients

Reply-To

Configure reply-to addresses

Installation

Clone and build the MCP server:
git clone https://github.com/unosend/mcp-server.git
cd mcp-server
npm install
npm run build

Setup

1. Get your API Key

  1. Go to Unosend Dashboard
  2. Create a new API key
  3. Copy the key (starts with un_)

2. Verify your domain

To send emails from your own domain, verify it first.

Configuration

Open Cursor Settings → MCP → Add new global MCP server:
{
  "mcpServers": {
    "unosend": {
      "type": "command",
      "command": "node /path/to/unosend/mcp-server/build/index.js --key=un_YOUR_API_KEY --sender=hello@yourdomain.com"
    }
  }
}
Get the absolute path by right-clicking on build/index.js in Cursor and selecting “Copy Path”.

Arguments

ArgumentEnvironment VariableDescription
--keyUNOSEND_API_KEYYour Unosend API key (required)
--senderSENDER_EMAIL_ADDRESSDefault sender email (optional)
--reply-toREPLY_TO_EMAIL_ADDRESSDefault reply-to email (optional)
If you don’t provide a sender email, the MCP server will ask for one each time you send an email.

Usage Examples

Once configured, you can ask your AI assistant to send emails naturally:
“Send an email to john@example.com with the subject ‘Meeting Tomorrow’ and let him know we’re meeting at 3pm”
“Email the team at alice@example.com, bob@example.com about the project update”
“Schedule an email to be sent tomorrow at 9am reminding me about the deadline”
“Send a nicely formatted email with a heading, bullet points, and a link to our website”

Available Tools

Email Tools

ToolDescription
send_emailSend an email with HTML/text, CC/BCC, scheduling
get_emailGet details and status of a sent email
list_emailsList recent emails from your account
cancel_emailCancel a scheduled email

SMS Tools

ToolDescription
send_smsSend an SMS message (from $0.013/SMS)
get_smsGet details of an SMS message

Validation Tools

ToolDescription
validate_emailValidate an email address ($0.01/validation)

Domain Tools

ToolDescription
list_domainsList all verified domains
get_domainGet domain details and DNS records

Audience & Contact Tools

ToolDescription
list_audiencesList all audiences (contact lists)
create_contactAdd a contact to an audience
list_contactsList contacts in an audience

Utility Tools

ToolDescription
check_api_statusVerify API connectivity and key validity

send_email Parameters

ParameterRequiredDescription
toYesRecipient email(s), comma-separated
subjectYesEmail subject
htmlNoHTML content
textNoPlain text content
fromNoSender email (uses default if not provided)
ccNoCC recipients
bccNoBCC recipients
reply_toNoReply-to address
scheduled_atNoISO 8601 datetime for scheduling

send_sms Parameters

ParameterRequiredDescription
toYesPhone number in E.164 format (+1234567890)
bodyYesSMS message content
fromNoSender phone number (if you have one)

validate_email Parameters

ParameterRequiredDescription
emailYesEmail address to validate

create_contact Parameters

ParameterRequiredDescription
audience_idYesThe audience ID to add contact to
emailYesContact email address
first_nameNoContact first name
last_nameNoContact last name
unsubscribedNoWhether contact is unsubscribed

Example Workflow

Create an email.md file in your project:
to: john@example.com
subject: Weekly Report

# Weekly Report

Here's what we accomplished this week:

- Launched new feature
- Fixed 12 bugs
- Improved performance by 30%

Best,
Your Team
Then tell your AI: “Send this as an email” The AI will parse the file and send it using Unosend.

Troubleshooting

Make sure you’ve provided the --key argument or set the UNOSEND_API_KEY environment variable.
Either provide --sender argument, set SENDER_EMAIL_ADDRESS env var, or specify from in each email request.
  1. Make sure the path to build/index.js is absolute
  2. Restart Claude Desktop completely
  3. Check Developer settings to verify the server is listed
Make sure your sender domain is verified at unosend.co/domains.

Source Code

The MCP server source code is available in the Unosend MCP Server repository.