Connectors · Email & messaging
MailerSend MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to MailerSend and the rest of your systems. It gives your agent 129 MailerSend actions (64 reads, 42 writes and 23 that wait for a confirmation) and holds the MailerSend credential itself, so the agent never does. It paces MailerSend's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "mailersend.users.list", intent: "check which MailerSend account is connected"}# Get a list of account users · read · 1 upstream call- 129actionsin one signed file
- 64readlook, never change
- 42writecreate and update
- 23wait for a yesdestructive, confirmed first
Set up
Connect MailerSend in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect MailerSend.
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
access_tokenMailerSend API token
account { op: "connections.requirements", service: "mailersend" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "mailersend.users.list" }# get a list of account users · read · 1 upstream callcheck { action: "mailersend.emails.send", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
MailerSend at a glance
- Sign-in
- Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
access_token- Limits we pace to
- 60 calls a minute, per connection
- API covered
- MailerSend API v1
api.mailersend.com/v1 - Built from
- MailerSend's documentation, read 23 October 2026developers.mailersend.comapi.swaggerhub.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 60 of 64 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 4, so ask can line MailerSend up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in MailerSend.
129 actions in 34 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 64readlook, never change
- 42writecreate and update
- 23destructivewait for a confirmation
Dmarc monitors
94 read · 3 write · 2 destructive
Create a monitor · Get IP-specific reports · List monitors · Get aggregated reports
Sender identities
93 read · 4 write · 2 destructive
Add a sender identity · Get a list of sender identities · Resend a sender identity verification · Get a single sender identity
Domains
85 read · 2 write · 1 destructive
Get a list of domains · Get a single domain · Add a domain · Update domain settings
Blocklist monitors
52 read · 2 write · 1 destructive
List monitors · Create a monitor · Get a monitor · Update a monitor
Email verification lists
53 read · 2 write · 0 destructive
Create a list · Get all lists · Get list results · Get a single list
Inbound routes
52 read · 2 write · 1 destructive
Get a list of inbound routes · Add an inbound route · Get a single inbound route · Delete an inbound route
SMS inbound routes
52 read · 2 write · 1 destructive
Add an SMS inbound route · Get a list of SMS inbound routes · Get a single SMS inbound route · Update an inbound route
SMS webhooks
52 read · 2 write · 1 destructive
Create an SMS webhook · Get a list of SMS webhooks · Get a single SMS webhook · Update a single SMS webhook
26 more areas · 78 actions
- SMTP users 5
- Templates 5
- Tokens 5
- Users 5
- Webhooks 5
- Analytics 4
- Invites 4
- SMS numbers 4
- Blocklist 3
- Email verification 3
- Emails 3
- Hard bounces 3
- Recipients 3
- Scheduled messages 3
- SMS recipients 3
- Spam complaints 3
- Unsubscribes 3
- Activities 2
- Bulk emails 2
- Messages 2
- On hold list 2
- SMS messages 2
- API quota 1
- SMS 1
- SMS activities 1
- Whatsapp 1
Top actions
The MailerSend API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 55 of MailerSend's 55 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
mailersend.users.listGet a list of account users | Get a list of account users. | read | identity.user.list474 connectors |
mailersend.emails.listGet a list of emails | Get a list of emails. | read | comm.email.list28 connectors |
mailersend.domains.listGet a list of domains | Get a list of domains. | read | comm.sending_domain.list18 connectors |
mailersend.activities.listGet a list of activities | Get a list of activities. | read | comm.delivery_event.list16 connectors |
mailersend.users.getGet a single account user | Get a single account user. | read | identity.user.get399 connectors |
mailersend.emails.sendSend an email | Send an email. | write | comm.email.send32 connectors |
mailersend.domains.getGet a single domain | Get a single domain. | read | comm.sending_domain.get14 connectors |
mailersend.templates.listGet templates | Get templates. | read | comm.email_template.list40 connectors |
mailersend.sms.sendSend an SMS | Send an SMS. | write | comm.sms.send26 connectors |
mailersend.users.deleteDelete a user from account | Delete a user from account. | destructive | identity.user.delete253 connectors |
mailersend.activities.getGet a single activity | Get a single activity. | read | comm.delivery_event.get6 connectors |
mailersend.tokens.createCreate a token | Create a token. | write | identity.api_key.create100 connectors |
Try it
Prompts to paste into Claude.
Each one names the MailerSend actions it will call, so you know what it reads and what it changes before you send it.
- Readread
Who has access in MailerSend? List every user and their role.
calls
mailersend.users.list - Writewrite
Send an email in MailerSend. Show me exactly what you will send before you save it.
calls
mailersend.emails.send
Governance for MailerSend
Destructive actions wait for a yes.
23 MailerSend actions are destructive. These are all of them:
- Delete a user from account
mailersend.users.delete - Delete a domain
mailersend.domains.delete - Delete a template
mailersend.templates.delete - Delete a token
mailersend.tokens.delete - Delete recipients from a suppression list (Blocklist)
mailersend.blocklist.delete - Delete an SMS phone number
mailersend.sms_numbers.delete - Cancel an invite
mailersend.invites.cancel - Delete an inbound route
mailersend.inbound_routes.delete - Delete a webhook
mailersend.webhooks.delete - Delete a monitor
mailersend.blocklist_monitors.delete - Delete a recipient
mailersend.recipients.delete - Delete SMTP user
mailersend.smtp_users.delete - Delete recipients from a suppression list (Hard Bounces)
mailersend.hard_bounces.delete - Delete recipients from a suppression list (On Hold List)
mailersend.on_hold_list.delete - Delete an SMS webhook
mailersend.sms_webhooks.delete - Delete recipients from a suppression list (Unsubscribes)
mailersend.unsubscribes.delete - Delete a monitor
mailersend.dmarc_monitors.delete - Delete recipients from a suppression list (Spam Complaints)
mailersend.spam_complaints.delete - Delete a sender identity
mailersend.sender_identities.delete - Delete a scheduled message
mailersend.scheduled_messages.delete - Delete an SMS inbound route
mailersend.sms_inbound_routes.delete - Remove IP from favorites
mailersend.dmarc_monitors.unfavorite_ip - Delete a sender identity by email
mailersend.sender_identities.delete_by_email
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete a user from account?
intent: the user asked me to delete a user from account
account { op: "keys.create", name: "mailersend-agent", allowed_actions: ["mailersend.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "mailersend.users.delete", approver: "[email protected]" }, { match: "mailersend.domains.delete", approver: "[email protected]" }, { match: "mailersend.templates.delete", approver: "[email protected]" } ]}Cost
What MailerSend costs on actionlake.
Every MailerSend action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call MailerSend refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 129 MailerSend actions
- 129actions pageeach page of a long list is one call
- 60reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every MailerSend action.
129 actions by area: the id your agent calls, what it does, and its effect.
Dmarc monitors9
mailersend.dmarc_monitors.createCreate a monitorwritemailersend.dmarc_monitors.deleteDelete a monitordestructivemailersend.dmarc_monitors.favorite_ipMark IP as favoritewritemailersend.dmarc_monitors.ip_reportGet IP-specific reportsreadmailersend.dmarc_monitors.listList monitorsreadmailersend.dmarc_monitors.reportGet aggregated reportsreadmailersend.dmarc_monitors.report_sourcesGet report sourcesreadmailersend.dmarc_monitors.unfavorite_ipRemove IP from favoritesdestructivemailersend.dmarc_monitors.updateUpdate a monitorwrite
Sender identities9
mailersend.sender_identities.createAdd a sender identitywritemailersend.sender_identities.deleteDelete a sender identitydestructivemailersend.sender_identities.delete_by_emailDelete a sender identity by emaildestructivemailersend.sender_identities.getGet a single sender identityreadmailersend.sender_identities.get_by_emailGet a single sender identity by emailreadmailersend.sender_identities.listGet a list of sender identitiesreadmailersend.sender_identities.resend_verificationResend a sender identity verificationwritemailersend.sender_identities.updateUpdate a sender identitywritemailersend.sender_identities.update_by_emailUpdate a sender identity by emailwrite
Domains8
mailersend.domains.createAdd a domainwritemailersend.domains.deleteDelete a domaindestructivemailersend.domains.dns_recordsGet DNS Recordsreadmailersend.domains.getGet a single domainreadmailersend.domains.listGet a list of domainsreadmailersend.domains.recipientsGet recipients for a domainreadmailersend.domains.update_settingsUpdate domain settingswritemailersend.domains.verification_statusGet verification statusread
Blocklist monitors5
mailersend.blocklist_monitors.createCreate a monitorwritemailersend.blocklist_monitors.deleteDelete a monitordestructivemailersend.blocklist_monitors.getGet a monitorreadmailersend.blocklist_monitors.listList monitorsreadmailersend.blocklist_monitors.updateUpdate a monitorwrite
Email verification lists5
mailersend.email_verification_lists.createCreate a listwritemailersend.email_verification_lists.getGet a single listreadmailersend.email_verification_lists.listGet all listsreadmailersend.email_verification_lists.resultsGet list resultsreadmailersend.email_verification_lists.verifyVerify a listwrite
Inbound routes5
mailersend.inbound_routes.createAdd an inbound routewritemailersend.inbound_routes.deleteDelete an inbound routedestructivemailersend.inbound_routes.getGet a single inbound routereadmailersend.inbound_routes.listGet a list of inbound routesreadmailersend.inbound_routes.updateUpdate an inbound routewrite
SMS inbound routes5
mailersend.sms_inbound_routes.createAdd an SMS inbound routewritemailersend.sms_inbound_routes.deleteDelete an SMS inbound routedestructivemailersend.sms_inbound_routes.getGet a single SMS inbound routereadmailersend.sms_inbound_routes.listGet a list of SMS inbound routesreadmailersend.sms_inbound_routes.updateUpdate an inbound routewrite
SMS webhooks5
mailersend.sms_webhooks.createCreate an SMS webhookwritemailersend.sms_webhooks.deleteDelete an SMS webhookdestructivemailersend.sms_webhooks.getGet a single SMS webhookreadmailersend.sms_webhooks.listGet a list of SMS webhooksreadmailersend.sms_webhooks.updateUpdate a single SMS webhookwrite
SMTP users5
mailersend.smtp_users.createAdd SMTP userwritemailersend.smtp_users.deleteDelete SMTP userdestructivemailersend.smtp_users.getGet a single SMTP userreadmailersend.smtp_users.listGet a list of SMTP usersreadmailersend.smtp_users.updateUpdate SMTP userwrite
Templates5
mailersend.templates.createCreate a templatewritemailersend.templates.deleteDelete a templatedestructivemailersend.templates.getGet a single templatereadmailersend.templates.listGet templatesreadmailersend.templates.updateUpdate a templatewrite
Tokens5
mailersend.tokens.createCreate a tokenwritemailersend.tokens.deleteDelete a tokendestructivemailersend.tokens.getShow a tokenreadmailersend.tokens.listList tokensreadmailersend.tokens.updateUpdate a tokenwrite
Users5
mailersend.users.deleteDelete a user from accountdestructivemailersend.users.getGet a single account userreadmailersend.users.inviteInvite a user to accountwritemailersend.users.listGet a list of account usersreadmailersend.users.updateUpdate account userwrite
Webhooks5
mailersend.webhooks.createCreate a webhookwritemailersend.webhooks.deleteDelete a webhookdestructivemailersend.webhooks.getGet a webhookreadmailersend.webhooks.listGet a list of webhooksreadmailersend.webhooks.updateUpdate a webhookwrite
Analytics4
mailersend.analytics.by_dateActivity data by datereadmailersend.analytics.opens_by_countryOpens by countryreadmailersend.analytics.opens_by_reading_environmentOpens by reading environmentreadmailersend.analytics.opens_by_user_agentOpens by user-agent nameread
Invites4
mailersend.invites.cancelCancel an invitedestructivemailersend.invites.getGet a single invitereadmailersend.invites.listGet a list of invitesreadmailersend.invites.resendResend an invitewrite
SMS numbers4
mailersend.sms_numbers.deleteDelete an SMS phone numberdestructivemailersend.sms_numbers.getGet an SMS phone numberreadmailersend.sms_numbers.listGet a list of SMS phone numbersreadmailersend.sms_numbers.updateUpdate a single SMS phone numberwrite
Blocklist3
mailersend.blocklist.addAdd recipients to a suppression list (Blocklist)writemailersend.blocklist.deleteDelete recipients from a suppression list (Blocklist)destructivemailersend.blocklist.listGet recipients from a suppression list (Blocklist)read
Email verification3
mailersend.email_verification.async_statusGet async email verification statusreadmailersend.email_verification.verify_emailVerify an emailwritemailersend.email_verification.verify_email_asyncVerify an email (Async)write
Emails3
mailersend.emails.getGet a single emailreadmailersend.emails.listGet a list of emailsreadmailersend.emails.sendSend an emailwrite
Hard bounces3
mailersend.hard_bounces.addAdd recipients to a suppression list (Hard Bounces)writemailersend.hard_bounces.deleteDelete recipients from a suppression list (Hard Bounces)destructivemailersend.hard_bounces.listGet recipients from a suppression list (Hard Bounces)read
Recipients3
mailersend.recipients.deleteDelete a recipientdestructivemailersend.recipients.getGet a single recipientreadmailersend.recipients.listGet recipientsread
Scheduled messages3
mailersend.scheduled_messages.deleteDelete a scheduled messagedestructivemailersend.scheduled_messages.getGet a single scheduled messagereadmailersend.scheduled_messages.listGet list of scheduled messagesread
SMS recipients3
mailersend.sms_recipients.getGet an SMS recipientreadmailersend.sms_recipients.listGet a list of SMS recipientsreadmailersend.sms_recipients.updateUpdate a single SMS recipientwrite
Spam complaints3
mailersend.spam_complaints.addAdd recipients to a suppression list (Spam Complaints)writemailersend.spam_complaints.deleteDelete recipients from a suppression list (Spam Complaints)destructivemailersend.spam_complaints.listGet recipients from a suppression list (Spam Complaints)read
Unsubscribes3
mailersend.unsubscribes.addAdd recipients to a suppression list (Unsubscribes)writemailersend.unsubscribes.deleteDelete recipients from a suppression list (Unsubscribes)destructivemailersend.unsubscribes.listGet recipients from a suppression list (Unsubscribes)read
Activities2
mailersend.activities.getGet a single activityreadmailersend.activities.listGet a list of activitiesread
Bulk emails2
mailersend.bulk_emails.getGet bulk email statusreadmailersend.bulk_emails.sendSend bulk emailswrite
Messages2
mailersend.messages.getGet information for a single message (Request)readmailersend.messages.listGet a list of messages (Request)read
On hold list2
mailersend.on_hold_list.deleteDelete recipients from a suppression list (On Hold List)destructivemailersend.on_hold_list.listGet recipients from a suppression list (On Hold List)read
SMS messages2
mailersend.sms_messages.getGet an SMS messagereadmailersend.sms_messages.listGet a list of SMS messagesread
API quota1
mailersend.api_quota.getGet API quotaread
SMS1
mailersend.sms.sendSend an SMSwrite
SMS activities1
mailersend.sms_activities.listGet a list of activitiesread
Whatsapp1
mailersend.whatsapp.sendSend a WhatsApp messagewrite
Questions
The MailerSend MCP server, answered.
Is there a MailerSend MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 129 MailerSend actions across dmarc monitors, sender identities, domains and blocklist monitors, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by MailerSend.
What do I need to connect MailerSend?
MailerSend API token. The free call account { op: "connections.requirements", service: "mailersend" } lists exactly what to paste.
Can an AI agent delete or change things in MailerSend?
Only if its key allows it, and only with an explicit confirmation. 23 MailerSend actions are destructive, including delete a user from account, delete a domain and delete a template. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my MailerSend API limit?
actionlake paces every call to the limits in the MailerSend service file: 60 calls a minute per connection. Repeated reads are answered from cache (60 MailerSend actions can be), which never reaches MailerSend.
What does a MailerSend action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (129 MailerSend actions page). Cache hits, searches, dry runs and calls MailerSend refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which MailerSend API does it cover?
The MailerSend API v1 at api.mailersend.com/v1. It is built from MailerSend's documentation as read on 23 October 2026. 129 actions in 34 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my MailerSend data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your MailerSend credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent MailerSend today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.