Explorium to Gmail, personalized drafts for outreach
Your outreach looks “busy,” but it’s not moving. The list is shaky, the data is incomplete, and you keep rewriting the same email while trying to sound personal.
This is where sales leads rot on the vine. Growth marketers feel it when pipeline targets get real. And consultants who do outbound for clients? They lose hours just getting to “ready to send.” Explorium Gmail outreach automation fixes that by turning a plain-English ICP into enriched prospects and Gmail drafts you can review.
Below, you’ll see what this workflow does, the business results it creates, and what to watch for when you plug it into your outbound process.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Explorium to Gmail, personalized drafts for outreach
flowchart LR
subgraph sg0["When chat message received Flow"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>API Call Validation"]
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Validation Prompter"]
n2@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Is API Call Valid?", pos: "b", h: 48 }
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Chat or Refinement"]
n4@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "AI Agent", pos: "b", h: 48 }
n6@{ icon: "mdi:robot", form: "rounded", label: "Output Parser", pos: "b", h: 48 }
n7@{ icon: "mdi:web", form: "rounded", label: "Explorium API: Fetch Prospects", pos: "b", h: 48 }
n8@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory1", pos: "b", h: 48 }
n9@{ icon: "mdi:brain", form: "rounded", label: "Anthropic Chat Model3", pos: "b", h: 48 }
n10["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Pull Prospect IDs"]
n11["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Clean Output Data"]
n12@{ icon: "mdi:robot", form: "rounded", label: "Research Email", pos: "b", h: 48 }
n13@{ icon: "mdi:robot", form: "rounded", label: "Email Writer", pos: "b", h: 48 }
n14@{ icon: "mdi:play-circle", form: "rounded", label: "When chat message received", pos: "b", h: 48 }
n15@{ icon: "mdi:message-outline", form: "rounded", label: "Create a draft", pos: "b", h: 48 }
n16@{ icon: "mdi:web", form: "rounded", label: "Explorium API: Contact Enric..", pos: "b", h: 48 }
n17@{ icon: "mdi:brain", form: "rounded", label: "Anthropic Chat Model2", pos: "b", h: 48 }
n18@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Items3", pos: "b", h: 48 }
n19@{ icon: "mdi:brain", form: "rounded", label: "Anthropic Chat Model4", pos: "b", h: 48 }
n20@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser2", pos: "b", h: 48 }
n21@{ icon: "mdi:wrench", form: "rounded", label: "Explorium MCP3", pos: "b", h: 48 }
n22@{ icon: "mdi:wrench", form: "rounded", label: "MCP Client", pos: "b", h: 48 }
n5 --> n0
n22 -.-> n12
n13 --> n15
n6 -.-> n5
n4 -.-> n5
n15 --> n18
n21 -.-> n5
n12 --> n13
n8 -.-> n12
n18 --> n12
n11 --> n18
n10 --> n16
n3 --> n5
n2 --> n7
n2 --> n1
n0 --> n2
n1 --> n3
n17 -.-> n5
n9 -.-> n13
n19 -.-> n12
n20 -.-> n13
n14 --> n3
n7 --> n10
n16 --> n11
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 n14 trigger
class n5,n6,n12,n13,n20 ai
class n9,n17,n19 aiModel
class n21,n22 ai
class n4,n8 ai
class n2 decision
class n7,n16 api
class n0,n1,n3,n10,n11 code
classDef customIcon fill:none,stroke:none
class n0,n1,n3,n10,n11 customIcon
The Problem: Prospecting Eats Time and Still Misses
Most outbound doesn’t fail because your offer is bad. It fails because the inputs are messy. You start with a vague ICP, scrape a list, patch holes with LinkedIn tabs, then realize half the “good fits” don’t even have a valid email. Now you’re stuck between sending generic blasts (and burning your domain) or spending all afternoon researching five people just to write five decent emails. By the time you hit send, the week is gone and the pipeline is still thin.
The friction compounds. It usually breaks in the same places:
- You spend about 2 hours building a list, then discover duplicates, missing roles, or outdated companies.
- Manual enrichment creates silent errors, so personalization is based on the wrong facts.
- Research is inconsistent because everyone on the team “does it their way” under time pressure.
- Writing emails one-by-one feels careful, but it caps your output at a handful per day.
The Solution: Explorium → Research → Gmail Drafts (Automatically)
This workflow acts like an AI-powered outbound assistant inside n8n. You start by describing your ideal customer profile in plain English in a chat message (for example, “Find 10 marketing leaders at fintech startups with valid emails”). An AI agent translates that request into the exact filters Explorium expects, then validates the request so you’re not guessing field names or allowed values. Once the query is valid, Explorium returns matching prospects and enriches them with contacts and professional profiles. From there, the workflow loops through prospects one at a time, researches the person and company using Explorium MCP intelligence, writes a personalized email draft, and saves it to Gmail as a draft for review.
The flow starts with a chat-based ICP prompt. Then it runs a “translate + validate” cycle so the Explorium API request is clean. Finally, it enriches, researches, writes, and drops finished drafts into Gmail, queued and ready when you are.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you want 20 prospects for a weekly outreach sprint. Manually, you might spend about 5 minutes finding each person, 5 minutes enriching details, and another 10 minutes researching and writing. That’s roughly 20 minutes per prospect, or around 6 hours for the batch. With this workflow, you drop one ICP prompt into chat (2 minutes), let Explorium enrichment and AI research run, and then skim 20 Gmail drafts for quality (maybe 30–45 minutes). You get most of your day back, and the drafts are already organized in Gmail.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Explorium API for prospect matching and enrichment.
- Explorium MCP to research companies and contacts.
- Gmail to create drafts for review.
- Anthropic API key (get it from the Anthropic Console).
Skill level: Intermediate. You’ll connect credentials, test a few runs, and tweak prompts and field mapping for your offer.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
A chat message kicks it off. You type your ICP in normal language, like you would explain it to a teammate. The workflow captures that message and uses it as the single source of truth for the run.
The workflow translates and validates your request. An AI agent turns your description into an Explorium-ready JSON query. Then a validation step checks allowed filters and formats, and if something is off, it routes feedback back into the agent so it can fix the request instead of failing quietly.
Prospects are fetched and enriched. Explorium returns matched prospects, the workflow extracts prospect IDs, and then enrichment pulls contact details and profiles (emails, roles, company info, experience). A cleanup step normalizes the data so later steps don’t trip over missing fields.
Research, writing, and draft creation happen per prospect. The workflow processes one prospect at a time, researches them using Explorium MCP, generates a structured email (subject + HTML body), and saves it as a Gmail draft so you can approve it before anything is sent.
You can easily modify the trigger to run on a schedule, or swap Gmail drafts for another destination like a CRM task, based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Chat Trigger
This workflow starts when a user submits a chat message, which is merged with validation feedback before being interpreted by an AI agent.
- Add and open Incoming Chat Trigger.
- Keep the default settings in Incoming Chat Trigger since it uses the configured webhook from the node.
- Connect Incoming Chat Trigger to Chat Merge Handler to ensure user input and validation feedback are merged into
combinedInput.
chatInput into the flow.Step 2: Set Up Query Interpretation and Validation
The chat input is interpreted into Explorium-compatible filters, then validated before any API calls are made.
- Open Chat Merge Handler and confirm it outputs
combinedInputby mergingchatInputanderrorInput. - Open Query Interpretation Agent and set Text to
{{ $json.combinedInput }}. - Ensure Structured Output Reader is connected as the output parser for Query Interpretation Agent, and keep the provided schema example as-is.
- Open Conversation Memory and set Context Window Length to
100. - Connect Conversation Memory as memory for Query Interpretation Agent and ensure Anthropic Chat Model B is connected as its language model.
- Open API Request Validator and keep the validation code as provided to enforce allowed filters and value formats.
- Open API Validity Check and confirm the condition checks
{{ $json.isValid }}equalstrue. - Verify that Validation Message Builder is connected to the false branch of API Validity Check and feeds back into Chat Merge Handler.
Step 3: Connect Explorium Data Retrieval and Enrichment
Validated filters trigger prospect retrieval and enrichment from Explorium before data is normalized for outreach.
- Open Explorium Prospect Retrieval and set Operation to
fetch, Type toprospects, and JSON Input to{{ JSON.stringify($json.output) }}. - Open Extract Prospect IDs and keep the code that maps
dataintoprospect_ids. - Open Explorium Contact Enrichment and set Operation to
enrich, Type toprospects, and JSON Input to{ "prospect_ids": {{ JSON.stringify($json.prospect_ids) }} }. - Open Normalize Prospect Data and keep the code that extracts emails, experience, company details, and contact metadata into clean output items.
Step 4: Configure Prospect Research and Email Composition
Prospects are processed in batches, researched using MCP, and used to generate personalized outreach emails.
- Open Batch Iterate Prospects and set Batch Size to
1to process one prospect at a time. - Open Prospect Research Agent and review the prompt fields that use
{{ $json.full_name }},{{ $json.job_title }},{{ $json.company_name }},{{ $json.company_website }},{{ $json.linkedin }},{{ $json.job_department }}, and{{ $json.skills }}. - Confirm Research Memory is connected as memory for Prospect Research Agent, and Anthropic Chat Model C is connected as its language model.
- Ensure Research MCP Client is attached as the MCP tool for Prospect Research Agent using
https://mcp-n8n.explorium.ai/mcpwith Authentication set toheaderAuth. - Open Outbound Email Composer and confirm the prompt references prospect and company data from Batch Iterate Prospects via expressions like
{{ $('Batch Iterate Prospects').item.json.email }}and{{ $json.output }}. - Connect Email Output Parser as the output parser for Outbound Email Composer, and ensure Anthropic Chat Model A is its language model.
Step 5: Configure Email Draft Output
Generated email content is formatted and saved as a Gmail draft for review.
- Open Create Email Draft and set Resource to
draftand Email Type tohtml. - Set Subject to
{{ $json.output.subject }}and Message to{{ $json.output.message }}. - Under Options, set Send To to
{{ $json.output.email }}.
Step 6: Test and Activate Your Workflow
Run a full test to confirm validation, enrichment, and email drafting work as expected.
- Manually execute Incoming Chat Trigger and send a sample query like “Find marketing directors at US SaaS companies with 51-200 employees.”
- Verify that API Request Validator sets
isValidtotrueand that API Validity Check routes to Explorium Prospect Retrieval. - Confirm Normalize Prospect Data outputs clean items and Batch Iterate Prospects processes each prospect individually.
- Check that Outbound Email Composer outputs JSON parsed by Email Output Parser, and that Create Email Draft creates a draft in Gmail.
- When testing succeeds, toggle the workflow to Active to enable production use.
Common Gotchas
- Explorium credentials can expire or need specific permissions. If things break, check the Explorium Dashboard API key status and your Authorization header in n8n first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Frequently Asked Questions
About an hour if your credentials are ready.
No. You’ll mostly connect accounts and paste API keys. The only “technical” part is testing a few prompts and adjusting small fields if your data format differs.
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 Anthropic and Explorium API usage, which depends on how many prospects you enrich and how much research you generate per person.
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 a common tweak. You would replace the Gmail “Create Draft” step with an Outlook draft node and keep the same subject/body fields from the email writer output. People also customize the email selection logic in the data cleanup step (for example, only “verified” emails), adjust batch size in the loop, and swap the AI model if they prefer OpenAI.
Most of the time it’s an expired or incorrect Bearer token in the Explorium credential, or the wrong header setup for the MCP endpoint. Also check that your filters are valid, because the workflow intentionally blocks invalid requests in the validation step, which can look like a “connection” issue at first glance.
A lot, but it depends on your plan and your rate limits. On n8n Cloud Starter, you can run a limited number of executions per month, and each prospect usually counts as more than one execution because of the loop and AI steps. If you self-host, there’s no execution cap, but your server resources and the Explorium/Anthropic API limits become the bottleneck. In practice, teams often start with batches of 10–50 prospects, then scale up once they’re happy with draft quality and timings.
For this use case, usually yes. The validation loop, structured JSON output parsing, and per-prospect research/write cycle are much easier to manage in n8n without paying extra for every branch and iteration. Zapier or Make can work if you only want “take a row, send an email,” but they get clunky once you add research, enrichment, and quality controls. If you’re unsure, Talk to an automation expert and explain your outbound volume and review process. You’ll get a straight recommendation.
Once this is running, prospecting turns into a prompt and a review step. The workflow handles the repetitive parts, and you get to spend your time on the conversations that actually close.
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.