mcp-lead-file-import-checker
LocalAbout mcp-lead-file-import-checker
mcp-lead-file-import-checker is an Apify-backed MCP server for checking lead files before importing them into a CRM or sequencer. It assigns each row an import, review, or reject verdict with reasons, but does not verify mailbox delivery.
Key features
- 01Accepts rows, CSV links, and Apify datasets
- 02Checks email syntax and duplicates
- 03Checks domain DNS, MX, and website status
- 04Flags free, role, and disposable email addresses
- 05Finds missing fields and stale records
Use cases
- 01Clean lead files before CRM import
- 02Review duplicate and role addresses in leads
- 03Find companies with parked or inactive websites
MCP support
It exposes the check_lead_file tool to MCP clients, starts an Apify Actor, and returns per-row check results.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @mambalabsdev/mcp-lead-file-import-checkerAPIFY_TOKENSecretApify API token from https://console.apify.com/account/integrationsLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
1Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| rows | array | No | Lead rows as objects with any column names, up to 50,000. Give rows, csv_url, or dataset_id, one of them. |
| checks | array | No | Which checks to run. Default all. |
| csv_url | string | No | A public link to a CSV file with a header row, up to 50 MB. |
| max_rows | string | No | Check at most this many rows. Default 5000, at most 50000. |
| column_map | object | No | Which of your columns holds email, domain, company, first_name, last_name, and date, for example {"email": "Work Email"}. Without it common header names are read. |
| dataset_id | string | No | An Apify dataset ID from one of your runs. |
| stale_days | string | No | With a date column in column_map, rows older than this many days get the stale issue. |
| check_websites | enum | No | true (default) reads each company homepage once for the live, parked, and company name checks.true | false |
| max_charge_usd | string | No | Optional. The run stops before a charge would pass this amount. |
| required_fields | array | No | Fields a row must have, or it is rejected. Default email. |
Details
From the project READMELead File Import Checker MCP Server
An MCP server for the Mamba Labs Lead File Import Checker actor on Apify. Give it lead rows, a CSV link, or an Apify dataset. Every row comes back with an import, review, or reject verdict and the issues behind it, so only clean rows reach your CRM or sequencer.
What's Inside
- What it does
- Quick start
- Prerequisites
- Example prompts
- Tool
- Inputs
- Pricing
- Your keys
- Full actor documentation
- License
What it does
Checks per row: email syntax, duplicates (the way inboxes see them, so [email protected] matches [email protected]), free mail, role inboxes, disposable domains, DNS and MX for the email domain, one homepage read per company domain for live, parked, and company name checks, missing required fields, and stale dates. It does not verify mailboxes and never contacts a mail server. All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.
Quick start
You need Node.js 18 or newer and an Apify account with an API token.
Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:
{
"mcpServers": {
"mamba-lead-file-import-checker": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-lead-file-import-checker"
],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}
Restart the client. The check_lead_file tool appears.
Prerequisites
- Node.js 18 or newer.
- An Apify API token from console.apify.com/account/integrations, set as
APIFY_TOKEN. The server lists its tool without a token; a call needs one.
Example prompts
- "Check this lead CSV and give me only the rows marked import."
- "How many duplicates and role addresses are in this list?"
- "Which of these companies have a parked or dead website?"
Tool
check_lead_file. One tool. Example arguments:
{
"rows": [
{ "Email": "[email protected]", "Company": "Stripe" },
{ "Email": "[email protected]", "Company": "Gong" }
]
}
Inputs
Every buyer facing input of the actor, unchanged. Omitted inputs take the actor's own defaults. Numbers and yes or no options are sent as strings.
| Input | Type | Description |
|---|---|---|
rows | array | Lead rows as objects, up to 50,000 |
csv_url | string | A public CSV link, up to 50 MB |
dataset_id | string | An Apify dataset ID |
column_map | object | Which column holds each field |
required_fields | array | Fields a row must have. Default email |
checks | array | Which checks to run. Default all |
check_websites | string | true (default) or false |
stale_days | string | Days before a dated row is stale |
max_rows | string | Default 5000, at most 50000 |
max_charge_usd | string | Optional cost cap for the run |
Pricing
Pay per event on Apify, billed to your Apify account. Prices in USD.
| Event | Free plan | Bronze | Silver | Gold |
|---|---|---|---|---|
row-checked, per row of your file checked | $0.002 | $0.0019 | $0.0018 | $0.0017 |
apify-actor-start, per run start | $0.001 | $0.001 | $0.001 | $0.001 |
Blank rows, rows over max_rows, and the one row a refused input writes are free.
Your keys
The actor needs no key and holds none. It reads DNS and the companies' own homepages. Mamba Labs pays the platform costs of the run.
Full actor documentation
apify.com/mambalabs/lead-file-import-checker
License
MIT. See LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.