MCP Connector Featured

Enrich Leads with Apollo.io Data

MCP server for Apollo.io - people and company enrichment, filtered search, job postings, and email discovery.

Works with apollo.io

91
Spark score
out of 100
Status Verified Official
Updated Jul 2025
Version 1.0.0
Models
universal

Add to Favorites

Why it matters

Leverage the Apollo.io API to enrich contact and company data, and discover new leads. This asset enables AI assistants to access detailed information for sales and marketing outreach.

Outcomes

What it gets done

01

Enrich people data with comprehensive contact details.

02

Retrieve detailed company information and insights.

03

Search for people based on job titles, locations, and seniority.

04

Discover organizations using various search criteria like domain, location, and employee count.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-apollo-io-mcp-server | bash

Capabilities

Tools your agent gets

people_enrichment

Enrich contact data with comprehensive information using name, email, domain, or LinkedIn URL.

organization_enrichment

Get detailed company information and insights using company domain.

people_search

Find people based on job titles, locations, seniority, technologies, and other criteria.

organization_search

Discover companies matching specific criteria including location, size, revenue, and funding.

organization_job_postings

Access job postings for specific organizations using their Apollo ID.

get_person_email

Get email address for a person using their Apollo.io person ID.

employees_of_company

Find employees of a company using company name, website URL, or LinkedIn URL.

Overview

Apollo IO MCP Server

An MCP server wrapping the Apollo.io API for AI assistants, with tools for people/company enrichment, filtered search, job postings, and email discovery. Use when an AI assistant needs to enrich or search Apollo.io's people and company database for sales prospecting or research.

What it does

This MCP server wraps the Apollo.io API for AI assistants, providing people and organization enrichment plus search, job-posting lookup, and email discovery - enriching contact and company data, finding people or companies against detailed filter criteria, pulling a company's active job postings, resolving a person's email from their Apollo ID, and listing a company's employees.

When to use - and when NOT to

Use it when an AI assistant needs to enrich or search Apollo.io's people/company database - for sales prospecting, lead enrichment, company research, or finding a person's email or a company's employees. It requires an APOLLO_IO_API_KEY.

Capabilities

Seven tools. people_enrichment enriches a contact by first/last name, email, domain, organization name, or LinkedIn URL. organization_enrichment enriches a company by domain (required, without www. or @). people_search filters by job titles (e.g. "sales development representative", "marketing manager", "research analyst", with an include_similar_titles toggle defaulting true), free-text keywords, person location (e.g. "california", "ireland", "chicago"), seniority (owner, founder, c_suite, partner, vp, head, director, manager, senior, entry, intern), employer location/domain, employee-count ranges (e.g. 1,10 or 10000,20000), employer revenue range (min/max, no currency symbols), email verification status (verified, unverified, likely to engage, unavailable), technologies the employer currently uses (all-of/any-of, e.g. salesforce, google_analytics, wordpress_org) or doesn't use, employer job-posting titles/locations/count/date range, and pagination (page, per_page, max 100, default 25). organization_search filters by domain, included location (e.g. "texas", "tokyo", "spain") or excluded location (e.g. "minnesota", "ireland", "seoul"), employee-count and revenue ranges, technologies used, keyword tags (e.g. "mining", "sales strategy", "consulting"), company name (partial match), latest-round and total funding amount ranges plus their date ranges (YYYY-MM-DD), active job-posting titles/locations/count/date range, and the same pagination. Both search tools also accept organization_ids to scope results to specific Apollo company IDs directly. organization_job_postings returns postings for a given organization_id. get_person_email resolves an email from an apollo_id. employees_of_company finds employees by company name, website URL, or LinkedIn URL.

How to install

npm install @agentx-ai/apollo-io-mcp-server

To test locally:

npm install -g .
npx @modelcontextprotocol/inspector apollo-io-mcp-server

then set APOLLO_IO_API_KEY as an environment variable. Licensed under the MIT License. The project also links a walkthrough tutorial video and is hosted on the AgentX MCP Hub website, alongside other open-sourced AgentX MCP servers.

Who it's for

Sales, marketing, and RevOps teams building AI-assisted prospecting or research workflows who need programmatic access to Apollo.io's people and company enrichment, search, and job-posting data, rather than calling the Apollo.io API directly from their own integration code.

Source README

npm version

Website

Watch the Apollo IO Tutorial video

Apollo.io MCP Server

A powerful Model Context Protocol (MCP) server implementation for seamless Apollo.io API integration, enabling AI assistants to interact with Apollo.io data for people and organization enrichment.

Features

  • People Enrichment: Enrich contact data with comprehensive information
  • Organization Enrichment: Get detailed company information and insights
  • People Search: Find people based on various criteria
  • Organization Search: Discover companies matching specific criteria
  • Job Postings: Access job postings for specific organizations
  • Email Discovery: Get email addresses using Apollo.io person IDs
  • Company Employees: Find employees of specific companies

Installation

npm install @agentx-ai/apollo-io-mcp-server

Test locally

npm install -g .
npx @modelcontextprotocol/inspector apollo-io-mcp-server

Then add APOLLO_IO_API_KEY in Environment Variable

Available Tools

1. People Enrichment (people_enrichment)

Enrich contact data with comprehensive information.

Parameters:

  • first_name (string): Person's first name
  • last_name (string): Person's last name
  • email (string): Person's email address
  • domain (string): Company domain
  • organization_name (string): Organization name
  • linkedin_url (string): Person's LinkedIn profile URL

2. Organization Enrichment (organization_enrichment)

Get detailed company information and insights.

Parameters:

  • domain (string, required): The domain of the company that you want to enrich. Do not include www., the @ symbol, or similar (e.g., 'apollo.io' or 'microsoft.com')

3. People Search (people_search)

Find people based on various criteria with comprehensive filtering options.

Parameters:

  • person_titles (array): Job titles held by the people you want to find (e.g., 'sales development representative', 'marketing manager', 'research analyst')
  • include_similar_titles (boolean): Whether to include people with similar job titles (default: true)
  • q_keywords (string): A string of words to filter the results
  • person_locations (array): The location where people live (e.g., 'california', 'ireland', 'chicago')
  • person_seniorities (array): Job seniority levels (e.g., 'owner', 'founder', 'c_suite', 'partner', 'vp', 'head', 'director', 'manager', 'senior', 'entry', 'intern')
  • organization_locations (array): The location of the company headquarters for a person's current employer (e.g., 'texas', 'tokyo', 'spain')
  • q_organization_domains_list (array): The domain name for the person's employer (e.g., 'apollo.io', 'microsoft.com')
  • contact_email_status (array): Email statuses to filter by (e.g., 'verified', 'unverified', 'likely to engage', 'unavailable')
  • organization_ids (array): Apollo IDs for specific companies (employers) to include in search results
  • organization_num_employees_ranges (array): Employee count ranges for the person's current company (e.g., '1,10', '250,500', '10000,20000')
  • revenue_range (object): Revenue range for the person's current employer
    • min (integer): Minimum revenue the person's current employer generates (no currency symbols, commas, or decimals)
    • max (integer): Maximum revenue the person's current employer generates (no currency symbols, commas, or decimals)
  • currently_using_all_of_technology_uids (array): Find people based on ALL technologies their current employer uses (use underscores for spaces, e.g., 'salesforce', 'google_analytics', 'wordpress_org')
  • currently_using_any_of_technology_uids (array): Find people based on ANY of the technologies their current employer uses (use underscores for spaces, e.g., 'salesforce', 'google_analytics', 'wordpress_org')
  • currently_not_using_any_of_technology_uids (array): Exclude people based on technologies their current employer uses (use underscores for spaces, e.g., 'salesforce', 'google_analytics', 'wordpress_org')
  • q_organization_job_titles (array): Job titles listed in active job postings at the person's current employer (e.g., 'sales manager', 'research analyst')
  • organization_job_locations (array): Locations of jobs being actively recruited by the person's employer (e.g., 'atlanta', 'japan')
  • organization_num_jobs_range (object): Range for number of job postings active at the person's current employer
    • min (integer): Minimum number of active job postings at the person's current employer
    • max (integer): Maximum number of active job postings at the person's current employer
  • organization_job_posted_at_range (object): Date range for when jobs were posted by the person's current employer
    • min (string): Earliest date when jobs were posted by the person's current employer (YYYY-MM-DD)
    • max (string): Latest date when jobs were posted by the person's current employer (YYYY-MM-DD)
  • page (integer): Page number for pagination (default: 1)
  • per_page (integer): Number of results per page (max: 100, default: 25)

4. Organization Search (organization_search)

Discover companies matching specific criteria with comprehensive filtering options.

Parameters:

  • q_organization_domains_list (array): List of organization domains to search for
  • organization_locations (array): The location of the company headquarters (e.g., 'texas', 'tokyo', 'spain')
  • organization_not_locations (array): Exclude companies from search results based on location (e.g., 'minnesota', 'ireland', 'seoul')
  • organization_num_employees_ranges (array): Employee count ranges with upper and lower numbers separated by comma (e.g., '1,10', '250,500', '10000,20000')
  • revenue_range (object): Search for organizations based on their revenue range
    • min (integer): Minimum revenue amount (no currency symbols, commas, or decimals)
    • max (integer): Maximum revenue amount (no currency symbols, commas, or decimals)
  • currently_using_any_of_technology_uids (array): Technologies the organization currently uses (use underscores for spaces, e.g., 'salesforce', 'google_analytics', 'wordpress_org')
  • q_organization_keyword_tags (array): Filter search results based on keywords associated with companies (e.g., 'mining', 'sales strategy', 'consulting')
  • q_organization_name (string): Filter search results to include a specific company name (partial matches accepted)
  • organization_ids (array): Apollo IDs for specific companies to include in search results
  • latest_funding_amount_range (object): Funding amount range for the company's most recent funding round
    • min (integer): Minimum amount from most recent funding round (no currency symbols, commas, or decimals)
    • max (integer): Maximum amount from most recent funding round (no currency symbols, commas, or decimals)
  • total_funding_range (object): Total funding amount range across all funding rounds
    • min (integer): Minimum total funding amount across all rounds (no currency symbols, commas, or decimals)
    • max (integer): Maximum total funding amount across all rounds (no currency symbols, commas, or decimals)
  • latest_funding_date_range (object): Date range for when the company received its most recent funding round
    • min (string): Earliest date of most recent funding round (YYYY-MM-DD)
    • max (string): Latest date of most recent funding round (YYYY-MM-DD)
  • q_organization_job_titles (array): Job titles listed in active job postings at the company (e.g., 'sales manager', 'research analyst')
  • organization_job_locations (array): Locations of jobs being actively recruited by the company (e.g., 'atlanta', 'japan')
  • organization_num_jobs_range (object): Range for number of job postings active at the company
    • min (integer): Minimum number of active job postings at the company
    • max (integer): Maximum number of active job postings at the company
  • organization_job_posted_at_range (object): Date range for when jobs were posted by the company
    • min (string): Earliest date when jobs were posted by the company (YYYY-MM-DD)
    • max (string): Latest date when jobs were posted by the company (YYYY-MM-DD)
  • page (integer): Page number for pagination (default: 1)
  • per_page (integer): Number of results per page (max: 100, default: 25)

5. Organization Job Postings (organization_job_postings)

Access job postings for specific organizations.

Parameters:

  • organization_id (string, required): Apollo.io organization ID

6. Get Person Email (get_person_email)

Get email address for a person using their Apollo ID.

Parameters:

  • apollo_id (string, required): Apollo.io person ID

7. Employees of Company (employees_of_company)

Find employees of a company using company name or website/LinkedIn URL.

Parameters:

  • company (string, required): Company name
  • website_url (string): Company website URL
  • linkedin_url (string): Company LinkedIn URL

AgentX MCP

FAQ

Common questions

Discussion

Questions & comments ยท 0

Sign In Sign in to leave a comment.