Apollo->Salesforce Lead mapper. No LLM. Strict-fail required fields. PASS/REPAIR/FAIL verdict.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Maps an Apollo contact payload to a Salesforce Lead object. Accepts the full Apollo CSV export column set. Strict-fail if FirstName, LastName, or Phone cannot be resolved. All other Salesforce fields are populated when source data is present, silently omitted otherwise. Returns a Deterministic Receipt (task_id, verdict, confidence, diff[]) embedded in every non-FAIL response.
Alternate ZIP key → PostalCode.
Primary phone (legacy key). Accepts E.164, 10-digit US, formatted strings.
City → City.
Contact email → Email.
Apollo 'Phone' column — alternate primary phone key.
State / province → State.
Job title → Title.
Apollo 'Source' column → LeadSource.
Street address → Street.
Company name → Company.
Country → Country.
Company website → Website.
LinkedIn headline captured by Apollo → Description.
Industry → Industry.
Apollo keywords/tags → Description.
Alternate LinkedIn key → LinkedIn__c.
Alternate employees key.
Full name — must have ≥2 whitespace-separated tokens. Use this OR provide first_name + last_name. Example: 'Jane Doe'
Apollo 'Job Title' column → Title.
Last name (Apollo split export). Use with first_name instead of full_name.
Full property address string (legacy v1 key) → PropertyAddress.
Apollo seniority level → Description.
First name (Apollo split export). Use with last_name instead of full_name.
Apollo 'Work Phone' column — lowest-priority fallback.
Apollo departments string → Description.
Lead source string → LeadSource (mapped to Salesforce picklist values).
Apollo 'Person City' column → City.
ZIP / postal code → PostalCode.
Twitter/X URL → Twitter__c.
Apollo 'Account Name' column → Company.
LinkedIn profile URL → LinkedIn__c.
Apollo 'Mobile Phone' column. Maps to MobilePhone if a primary phone exists.
Apollo 'Organization' column → Company.
Apollo 'Person State' column → State.
Alternate employees key.
Annual revenue string, e.g. '$1.2M', '500000' → AnnualRevenue (number).
Apollo 'Person Country' → Country.
Apollo 'Company Website' → Website.
Apollo 'Person Postal Code' → PostalCode.
Employee count or range (e.g. '500-1000') → NumberOfEmployees.
Apollo estimated revenue → AnnualRevenue.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Maps an Apollo contact payload to a Salesforce Lead object. Accepts the full Apollo CSV export column set. Strict-fail if FirstName, LastName, or Phone cannot be resolved. All other Salesforce fields are populated when source data is present, silently omitted otherwise. Returns a Deterministic Receipt (task_id, verdict, confidence, diff[]) embedded in every non-FAIL response.
| Argument | Type | Description |
|---|---|---|
| zip | string | Alternate ZIP key → PostalCode. |
| cell | string | Primary phone (legacy key). Accepts E.164, 10-digit US, formatted strings. |
| city | string | City → City. |
| string | Contact email → Email. | |
| phone | string | Apollo 'Phone' column — alternate primary phone key. |
| state | string | State / province → State. |
| title | string | Job title → Title. |
| source | string | Apollo 'Source' column → LeadSource. |
| street | string | Street address → Street. |
| company | string | Company name → Company. |
| country | string | Country → Country. |
| website | string | Company website → Website. |
| headline | string | LinkedIn headline captured by Apollo → Description. |
| industry | string | Industry → Industry. |
| keywords | string | Apollo keywords/tags → Description. |
| string | Alternate LinkedIn key → LinkedIn__c. | |
| employees | string | number | Alternate employees key. |
| full_name | string | Full name — must have ≥2 whitespace-separated tokens. Use this OR provide first_name + last_name. Example: 'Jane Doe' |
| job_title | string | Apollo 'Job Title' column → Title. |
| last_name | string | Last name (Apollo split export). Use with first_name instead of full_name. |
| prop_addr | string | Full property address string (legacy v1 key) → PropertyAddress. |
| seniority | string | Apollo seniority level → Description. |
| first_name | string | First name (Apollo split export). Use with last_name instead of full_name. |
| work_phone | string | Apollo 'Work Phone' column — lowest-priority fallback. |
| departments | string | Apollo departments string → Description. |
| lead_source | string | Lead source string → LeadSource (mapped to Salesforce picklist values). |
| person_city | string | Apollo 'Person City' column → City. |
| postal_code | string | ZIP / postal code → PostalCode. |
| twitter_url | string | Twitter/X URL → Twitter__c. |
| account_name | string | Apollo 'Account Name' column → Company. |
| linkedin_url | string | LinkedIn profile URL → LinkedIn__c. |
| mobile_phone | string | Apollo 'Mobile Phone' column. Maps to MobilePhone if a primary phone exists. |
| organization | string | Apollo 'Organization' column → Company. |
| person_state | string | Apollo 'Person State' column → State. |
| num_employees | string | number | Alternate employees key. |
| annual_revenue | string | Annual revenue string, e.g. '$1.2M', '500000' → AnnualRevenue (number). |
| person_country | string | Apollo 'Person Country' → Country. |
| company_website | string | Apollo 'Company Website' → Website. |
| person_postal_code | string | Apollo 'Person Postal Code' → PostalCode. |
| number_of_employees | string | number | Employee count or range (e.g. '500-1000') → NumberOfEmployees. |
| estimated_annual_revenue | string | Apollo estimated revenue → AnnualRevenue. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"zip": {
"type": "string",
"description": "Alternate ZIP key → PostalCode."
},
"cell": {
"type": "string",
"description": "Primary phone (legacy key). Accepts E.164, 10-digit US, formatted strings."
},
"city": {
"type": "string",
"description": "City → City."
},
"email": {
"type": "string",
"format": "email",
"description": "Contact email → Email."
},
"phone": {
"type": "string",
"description": "Apollo 'Phone' column — alternate primary phone key."
},
"state": {
"type": "string",
"description": "State / province → State."
},
"title": {
"type": "string",
"description": "Job title → Title."
},
"source": {
"type": "string",
"description": "Apollo 'Source' column → LeadSource."
},
"street": {
"type": "string",
"description": "Street address → Street."
},
"company": {
"type": "string",
"description": "Company name → Company."
},
"country": {
"type": "string",
"description": "Country → Country."
},
"website": {
"type": "string",
"description": "Company website → Website."
},
"headline": {
"type": "string",
"description": "LinkedIn headline captured by Apollo → Description."
},
"industry": {
"type": "string",
"description": "Industry → Industry."
},
"keywords": {
"type": "string",
"description": "Apollo keywords/tags → Description."
},
"linkedin": {
"type": "string",
"description": "Alternate LinkedIn key → LinkedIn__c."
},
"employees": {
"type": [
"string",
"number"
],
"description": "Alternate employees key."
},
"full_name": {
"type": "string",
"description": "Full name — must have ≥2 whitespace-separated tokens. Use this OR provide first_name + last_name. Example: 'Jane Doe'"
},
"job_title": {
"type": "string",
"description": "Apollo 'Job Title' column → Title."
},
"last_name": {
"type": "string",
"description": "Last name (Apollo split export). Use with first_name instead of full_name."
},
"prop_addr": {
"type": "string",
"description": "Full property address string (legacy v1 key) → PropertyAddress."
},
"seniority": {
"type": "string",
"description": "Apollo seniority level → Description."
},
"first_name": {
"type": "string",
"description": "First name (Apollo split export). Use with last_name instead of full_name."
},
"work_phone": {
"type": "string",
"description": "Apollo 'Work Phone' column — lowest-priority fallback."
},
"departments": {
"type": "string",
"description": "Apollo departments string → Description."
},
"lead_source": {
"type": "string",
"description": "Lead source string → LeadSource (mapped to Salesforce picklist values)."
},
"person_city": {
"type": "string",
"description": "Apollo 'Person City' column → City."
},
"postal_code": {
"type": "string",
"description": "ZIP / postal code → PostalCode."
},
"twitter_url": {
"type": "string",
"description": "Twitter/X URL → Twitter__c."
},
"account_name": {
"type": "string",
"description": "Apollo 'Account Name' column → Company."
},
"linkedin_url": {
"type": "string",
"description": "LinkedIn profile URL → LinkedIn__c."
},
"mobile_phone": {
"type": "string",
"description": "Apollo 'Mobile Phone' column. Maps to MobilePhone if a primary phone exists."
},
"organization": {
"type": "string",
"description": "Apollo 'Organization' column → Company."
},
"person_state": {
"type": "string",
"description": "Apollo 'Person State' column → State."
},
"num_employees": {
"type": [
"string",
"number"
],
"description": "Alternate employees key."
},
"annual_revenue": {
"type": "string",
"description": "Annual revenue string, e.g. '$1.2M', '500000' → AnnualRevenue (number)."
},
"person_country": {
"type": "string",
"description": "Apollo 'Person Country' → Country."
},
"company_website": {
"type": "string",
"description": "Apollo 'Company Website' → Website."
},
"person_postal_code": {
"type": "string",
"description": "Apollo 'Person Postal Code' → PostalCode."
},
"number_of_employees": {
"type": [
"string",
"number"
],
"description": "Employee count or range (e.g. '500-1000') → NumberOfEmployees."
},
"estimated_annual_revenue": {
"type": "string",
"description": "Apollo estimated revenue → AnnualRevenue."
}
},
"additionalProperties": false
}