Skip to main content
Glama
mambalabsdev

mcp-clay-to-instantly-smartlead-push

by mambalabsdev

Push Leads to Sequencer

push_leads_to_sequencer

Push enriched leads into Instantly or Smartlead campaigns, applying ICP score gates, deduplication, and dry-run previews to verify mappings safely.

Instructions

Push enriched lead rows into an existing Instantly or Smartlead campaign. Maps common Clay column names onto each sequencer's own field names, optionally drops leads below a minimum ICP score, optionally deduplicates against the leads already in the destination campaign, and sends the rest in batches. Returns one flat summary row: how many leads were received, dropped for having no usable email, dropped by the ICP gate, dropped as duplicates, eligible, actually created by the sequencer, skipped by the sequencer, and failed, plus the vendor's own error message per failed address. The campaign must already exist; this does not create campaigns or write sequence copy. Set dry_run true to get back the exact request payload that would be sent without creating a single lead and without being charged, which is the safe way to check a mapping against a new campaign. Billing is per lead the sequencer confirms it created, so gated, duplicate, skipped, failed and dry-run leads are all free. Instantly uses API v2 and needs a v2 key; Smartlead uses API v1. Requires an APIFY_TOKEN and consumes Apify credits. This WRITES to your sequencer campaign unless dry_run is true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
leadsNoLead rows to push. Each row needs an email at minimum. Takes precedence over dataset_id when both are set.
api_keyNoYour Instantly v2 API key or your Smartlead API key. An Instantly v1 key will not work: v1 was deprecated on January 19, 2026. Required for any run that calls the sequencer. A dry run with deduplicate false makes no calls and needs no key.
dry_runNoRun every step, return the exact payload that would be sent, and make zero write calls. Creates no leads and charges nothing. Default false.
sequencerYesWhich sequencer to push to. Instantly uses API v2, Smartlead uses API v1.
dataset_idNoAn Apify dataset ID from an upstream run, for example the output of the ICP Fit Scorer. Used only when leads is empty.
campaign_idYesThe target campaign in the sequencer. It must already exist. Instantly campaign IDs are UUIDs; Smartlead campaign IDs are numeric.
deduplicateNoRead the campaign's existing leads first and drop any email already there. Default true. This is a read, so it needs an API key even on a dry run.
field_mappingNoOverride the default Clay column to sequencer field map. Keys are your column names, values are the sequencer field names. Set a value to an empty string to drop that column. A target the sequencer does not have is sent as a custom variable rather than rejected.
min_icp_scoreNoDrop leads whose icp_score is below this number. Default 0, which pushes everything. Rows with no icp_score are always kept.
custom_variablesNoExtra column names to pass through as custom variables under their own name. Columns that are neither mapped nor listed here are dropped.
Behavior5/5

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

The description explicitly discloses write behavior: 'This WRITES to your sequencer campaign unless dry_run is true,' which aligns with readOnlyHint=false. It goes beyond annotations by explaining billing (per lead confirmed created), API key requirements (Instantly v2, Smartlead v1), and dry-run semantics (zero write calls, no charge). This is rich behavioral context with no contradiction to the annotations.

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

Conciseness4/5

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

The description is a dense paragraph of about seven sentences, each covering a distinct aspect: purpose, core behavior, return payload, constraints, dry-run, billing, and API specifics. It is logically structured and front-loaded with the main action; while longer than minimal examples, every sentence earns its place for a tool with 10 parameters and no output schema.

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

Completeness5/5

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

With no output schema, the description compensates thoroughly by specifying the exact return shape: 'one flat summary row: how many leads were received, dropped... plus the vendor's own error message.' It also covers prerequisites, side effects, billing, and API nuances, making it complete for a complex write tool with 10 parameters and a nested input schema.

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

Parameters5/5

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

Even with 100% schema coverage, the description adds significant meaning: it explains parameter precedence ('leads... takes precedence over dataset_id'), the deduplicate API-key requirement on dry runs, and the ICP gate default ('Rows with no icp_score are always kept'). It also clarifies how field_mapping treats unknown targets and how custom_variables pass through, which the schema alone does not convey.

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 opens with a specific verb and resource: 'Push enriched lead rows into an existing Instantly or Smartlead campaign.' It further details the tool's scope (field mapping, ICP filtering, deduplication, batching) and its flat summary return. Although no sibling tools are listed, the purpose is unambiguous and self-contained.

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

Usage Guidelines4/5

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

The description gives concrete usage guidance and prerequisites: 'The campaign must already exist; this does not create campaigns or write sequence copy,' and 'Set dry_run true to get back the exact request payload... the safe way to check a mapping against a new campaign.' It also notes when an API key is needed even on dry_run (deduplicate) and contrasts API versions for Instantly vs Smartlead. It does not list alternative tools, but the provided context is sufficient.

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

Install Server

Other Tools

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/mambalabsdev/mcp-clay-to-instantly-smartlead-push'

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