Mandrill + Slack: send approved emails without chaos
Sending an important email should feel boring. Instead, it turns into a messy thread of “is this the final copy?”, someone pastes the wrong HTML, and you only find out after customers reply.
Marketing managers feel it during launches. Ops leads end up policing approvals. And if you run client campaigns, you’ve probably rebuilt the same checklist a dozen times. This Mandrill Slack automation tightens the whole loop so only approved emails go out.
You’ll set up a simple n8n workflow that can send Mandrill template emails or HTML emails on demand, then report the result back where your team already lives: Slack.
How This Automation Works
Here’s the complete workflow you’ll be setting up:
n8n Workflow Template: Mandrill + Slack: send approved emails without chaos
flowchart LR
subgraph sg0["Mandrill Tool MCP Server Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Mandrill Tool MCP Server", pos: "b", h: 48 }
n1@{ icon: "mdi:cog", form: "rounded", label: "Send a message based on a te..", pos: "b", h: 48 }
n2@{ icon: "mdi:cog", form: "rounded", label: "Send a message based on HTML", pos: "b", h: 48 }
n2 -.-> n0
n1 -.-> n0
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
Why This Matters: Email Sends Break at the Approval Step
The “hard” part of sending emails usually isn’t Mandrill. It’s everything around it. Someone requests a send, someone else approves, and then a third person copies the content into the sending tool. That handoff is where mistakes sneak in. A missing merge tag, an old template version, the wrong segment, or the right message sent at the wrong time. And because the send happens in a separate tool, the team doesn’t get a clean, immediate paper trail of what was sent and what happened.
The friction compounds. Here’s where it breaks down in real teams.
- Approvals happen in chat, but sending happens somewhere else, so context gets lost between “approved” and “sent.”
- Copy-pasting HTML invites tiny errors that are hard to spot until it’s already live.
- Template selection becomes guesswork, especially when several versions exist for the same campaign.
- No single “receipt” in Slack means people ask for updates, and you waste time proving the send happened.
What You’ll Build: Mandrill Sends Triggered by Requests, Reported to Slack
This workflow turns Mandrill into an on-demand “send service” that can be called by an AI agent or another workflow, without you rebuilding parameters every time. It starts with an MCP server trigger in n8n, which exposes pre-built Mandrill actions as callable tools. When a request comes in, the workflow routes it to the right Mandrill operation: send from a template, or send from raw HTML. Mandrill returns a full response (including send status and message details), and you can forward that result into Slack so the team has immediate confirmation and an audit-friendly trail.
The flow is intentionally short. A request hits your MCP endpoint, n8n chooses the correct Mandrill send method, and the response gets passed back to your calling system (and optionally posted into Slack). Once it’s live, your “approval to send” loop gets tighter, with fewer chances to mess it up.
What You’re Building
| What Gets Automated | What You’ll Achieve |
|---|---|
|
|
Expected Results
Say your team sends 3 campaign-related emails in a week and each one needs an approval screenshot, a final copy-paste into Mandrill, and a “sent” confirmation back in Slack. Manually, that’s often about 30 minutes per email once you include back-and-forth and checking details, so roughly 90 minutes weekly. With this workflow, the requester triggers the send in a structured way and the response can be posted back to Slack, so you’re mostly waiting on the actual send. In practice, teams usually get that loop down to about 5 minutes of human time per email.
Before You Start
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Mandrill for transactional email sending.
- Slack to post send confirmations and results.
- Mandrill API key (get it from your Mandrill/Mailchimp Transactional settings)
Skill level: Beginner. You’ll connect credentials and copy a webhook/MCP URL into whatever tool will call it.
Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).
Step by Step
An MCP request triggers the workflow. The MCP Server Trigger node acts like your endpoint, so another workflow, an internal tool, or an AI agent can ask for a send.
The request data gets mapped into a Mandrill-ready payload. The workflow is designed for AI-friendly parameter passing (using structured placeholders), which means the “who/what/which template” details arrive already organized instead of buried in a chat message.
Mandrill sends either a template email or an HTML email. If the request specifies a template, it routes to “Dispatch Template Email.” If it’s raw HTML, it uses “Send HTML Email.” Simple choice, big reduction in mistakes.
The send result can be returned and shared. Mandrill responds with status details that you can forward into Slack for visibility, plus store in logs if you want a longer history.
You can easily modify where results are posted (different Slack channel, a Google Sheet log, or both) based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the MCP Trigger
The workflow starts from an MCP endpoint that exposes Mandrill email tools to external clients.
- Add the Mandrill MCP Entry node as the trigger.
- Set the Path to
mandrill-tool-mcp. - Keep the autogenerated webhook ID as-is for MCP access.
Tip: The MCP path must be unique in your n8n instance. Avoid leading slashes or spaces.
Step 2: Connect Mandrill
Both Mandrill tools need Mandrill credentials to send emails.
- Open Dispatch Template Email and locate its credential section.
- Credential Required: Connect your Mandrill credentials. Because Dispatch Template Email is an AI tool connected to Mandrill MCP Entry, configure credentials at the parent tool node level (not within any sub-node settings).
- Repeat the same Mandrill credential setup for Send HTML Email with Credential Required: Connect your Mandrill credentials.
⚠️ Common Pitfall: The Mandrill tools have no credentials configured in the workflow. The MCP trigger will fail to send email until you add Mandrill credentials.
Step 3: Set Up Mandrill Tool Actions
Define the behavior of each Mandrill tool that the MCP trigger exposes.
- In Dispatch Template Email, review the default Options and leave empty unless you need advanced Mandrill settings.
- In Send HTML Email, set the Operation to
sendHtml. - Confirm both tools are connected to Mandrill MCP Entry as AI tools so they are discoverable by the MCP client.
Step 4: Configure Output/Action Nodes
This workflow uses two Mandrill tools to send email via template or raw HTML.
- Verify Dispatch Template Email is available for template-based sends from the MCP client.
- Verify Send HTML Email is available for HTML payloads sent from the MCP client.
- Keep Flowpast Branding as a non-executing sticky note for documentation and team context.
Step 5: Test and Activate Your Workflow
Run a full end-to-end test to confirm MCP access and Mandrill sending behavior.
- Click Execute Workflow to start the MCP endpoint.
- From your MCP-compatible client, call the tool endpoint at
mandrill-tool-mcpand trigger either the template send or HTML send. - Confirm that Mandrill delivers the email successfully and no credential errors appear in the execution log.
- Turn on the Active toggle to enable production use.
Troubleshooting Tips
- Mandrill credentials can expire or lack permissions for the sending domain. If things break, check your Mandrill API key status and sending domain settings first.
- If you’re calling the MCP endpoint from an external agent, timeouts happen. Increase the caller timeout or add a small wait/retry strategy if you see empty responses.
- AI-generated inputs are only as good as your prompt. Add brand voice rules and required fields (subject, from name, reply-to) early or you will be cleaning outputs by hand.
Quick Answers
About 20 minutes if you already have your Mandrill API key and Slack access ready.
No. You will connect accounts and paste the MCP endpoint URL into your calling tool or agent.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Mandrill/Mailchimp Transactional sending costs based on your email volume.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s straightforward. You can keep the same MCP trigger and swap which Mandrill action runs by routing to “Dispatch Template Email” or “Send HTML Email,” depending on the request. Common customizations include adding a Slack approval step before sending, logging every send result to Google Sheets, and enforcing required fields (like subject line and reply-to) so nothing incomplete gets through.
Usually it’s an API key issue or a sending-domain problem. Regenerate the Mandrill API key, update it in n8n, and verify the domain you’re sending from is set up correctly in Mandrill. If it fails only sometimes, you may be hitting rate limits during bursts, so spacing requests out can help.
If you self-host n8n, there’s no hard execution cap (it mostly depends on your server). On n8n Cloud, volume depends on your plan’s monthly executions, and this workflow uses one execution per send request. For most small teams, that’s plenty unless you’re sending programmatic emails all day.
Often, yes. The big win is control: n8n is comfortable handling branching logic and structured responses, and you can self-host for high volume without paying per tiny step. It also fits this “tool server” pattern well, where an AI agent or internal system calls a single endpoint and gets a full Mandrill response back. Zapier or Make can absolutely send emails, but multi-step approval, payload validation, and robust logging can get awkward fast. If you’re torn, Talk to an automation expert and we’ll sanity-check your setup.
Once this is in place, sending stops being a mini-project. The workflow handles the repetitive stuff, and your team gets clean confirmations in Slack.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.