Skip to main content
Glama
Apollo.io MCP Server

Apollo.io MCP Server

Apollo.io MCP Server

TypeScript Apollo.io API MCP SDK License: MIT

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

Overview

This MCP server provides a comprehensive set of tools for interacting with the Apollo.io API, allowing AI assistants to:

  • Enrich data for people and organizations

  • Search for people and organizations

  • Find job postings for specific organizations

  • Perform Apollo.io operations without leaving your AI assistant interface

Related MCP server: apollo-io-mcp

Why Use This MCP Server?

  • Seamless AI Integration: Connect your AI assistants directly to Apollo.io data

  • Simplified API Operations: Perform common Apollo.io tasks through natural language commands

  • Real-time Data Access: Get up-to-date information from Apollo.io

  • Secure Authentication: Uses Apollo.io's secure API token authentication

  • Extensible Design: Easily add more Apollo.io API capabilities as needed

Installation

# Clone the repository
git clone https://github.com/lkm1developer/apollo-io-mcp-server.git
cd apollo-io-mcp-server

# Install dependencies
npm install

# Build the project
npm run build

Configuration

The server requires an Apollo.io API access token. You can obtain one by:

  1. Going to your Apollo.io Account

  2. Navigating to Settings > API

  3. Generating an API key

You can provide the token in two ways:

  1. As an environment variable:

    APOLLO_IO_API_KEY=your-api-key
  2. As a command-line argument:

    npm start -- --api-key=your-api-key

For development, create a .env file in the project root to store your environment variables:

APOLLO_IO_API_KEY=your-api-key

Usage

Starting the Server

# Start the server
npm start

# Or with a specific API key
npm start -- --api-key=your-api-key

# Run the SSE server with authentication
npx mcp-proxy-auth node dist/index.js

Implementing Authentication in SSE Server

The SSE server uses the mcp-proxy-auth package for authentication. To implement authentication:

  1. Install the package:

    npm install mcp-proxy-auth
  2. Set the AUTH_SERVER_URL environment variable to point to your API key verification endpoint:

    export AUTH_SERVER_URL=https://your-auth-server.com/verify
  3. Run the SSE server with authentication:

    npx mcp-proxy-auth node dist/index.js
  4. The SSE URL will be available at:

    localhost:8080/sse?apiKey=apikey

    Replace apikey with your actual API key for authentication.

The mcp-proxy-auth package acts as a proxy that:

  • Intercepts requests to your SSE server

  • Verifies API keys against your authentication server

  • Only allows authenticated requests to reach your SSE endpoint

Integrating with AI Assistants

This MCP server is designed to work with AI assistants that support the Model Context Protocol. Once running, the server exposes a set of tools that can be used by compatible AI assistants to interact with Apollo.io data.

Available Tools

The server exposes the following powerful Apollo.io integration tools:

  1. people_enrichment

    • Use the People Enrichment endpoint to enrich data for 1 person

    • Parameters:

      • first_name (string, optional): Person's first name

      • last_name (string, optional): Person's last name

      • email (string, optional): Person's email address

      • domain (string, optional): Company domain

      • organization_name (string, optional): Organization name

    • Example:

      {
        "first_name": "John",
        "last_name": "Doe",
        "email": "john.doe@example.com"
      }
  2. organization_enrichment

    • Use the Organization Enrichment endpoint to enrich data for 1 company

    • Parameters:

      • domain (string, optional): Company domain

      • name (string, optional): Company name

    • Example:

      {
        "domain": "apollo.io"
      }
  3. people_search

    • Use the People Search endpoint to find people

    • Parameters:

      • q_organization_domains_list (array, optional): List of organization domains to search within

      • person_titles (array, optional): List of job titles to search for

      • person_seniorities (array, optional): List of seniority levels to search for

    • Example:

      {
        "person_titles": ["Marketing Manager"],
        "person_seniorities": ["vp"],
        "q_organization_domains_list": ["apollo.io"]
      }
  4. organization_search

    • Use the Organization Search endpoint to find organizations

    • Parameters:

      • q_organization_domains_list (array, optional): List of organization domains to search for

      • organization_locations (array, optional): List of organization locations to search for

    • Example:

      {
        "organization_locations": ["Japan", "Ireland"]
      }
  5. organization_job_postings

    • Use the Organization Job Postings endpoint to find job postings for a specific organization

    • Parameters:

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

    • Example:

      {
        "organization_id": "5e60b6381c85b4008c83"
      }

Extending the Server

The server is designed to be easily extensible. To add new Apollo.io API capabilities:

  1. Add new methods to the ApolloClient class in src/apollo-client.ts

  2. Register new tools in the setupToolHandlers method in src/index.ts

  3. Rebuild the project with npm run build

License

This project is licensed under the MIT License - see the LICENSE file for details.

Keywords

Apollo.io, Model Context Protocol, MCP, AI Assistant, TypeScript, API Integration, Apollo.io API, People Enrichment, Organization Enrichment, People Search, Organization Search, Job Postings, AI Tools

Available Tools

7 tools
employees_of_companyC

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

Inputs: company (required), website_url, linkedin_url.

get_person_emailC

Get email address for a person using their Apollo ID

Inputs: apollo_id (required).

organization_enrichmentC

Use the Organization Enrichment endpoint to enrich data for 1 company

Inputs: domain, name.

organization_job_postingsC

Use the Organization Job Postings endpoint to find job postings for a specific organization

Inputs: organization_id (required).

people_enrichmentC

Use the People Enrichment endpoint to enrich data for 1 person

Inputs: first_name, last_name, email, domain, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3/5.0

    Scored across 7 tools

    Disambiguation4/5

    Most tools have distinct purposes, but there is some potential overlap between organization_search and organization_enrichment, as both involve company data retrieval. However, their descriptions clarify that search is for finding organizations while enrichment is for augmenting data on a known company, which helps mitigate confusion. The other tools target clearly different resources like employees, emails, job postings, and people.

    Naming Consistency4/5

    The naming follows a consistent snake_case pattern throughout, which is good. However, there is a minor inconsistency: most tools use a verb_noun format (e.g., organization_search, people_enrichment), but employees_of_company uses a noun_of_noun structure, deviating slightly from the pattern. This does not severely impact readability but is a noticeable deviation.

    Tool Count5/5

    With 7 tools, the count is well-scoped for a sales intelligence or recruitment domain, covering key operations like searching and enriching data for both organizations and people. Each tool appears to earn its place without feeling excessive or sparse, aligning well with the server's apparent purpose of data enrichment and lookup.

    Completeness4/5

    The tool set provides solid coverage for core workflows in the domain, including search and enrichment for both organizations and people, plus specific functions like finding employees and emails. A minor gap is the lack of update or delete operations, but this is reasonable for a read-heavy enrichment server. The surface supports common agent tasks without obvious dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

    • A Model Context Protocol server for Wix AI tools

      https://mcp.wix.com/mcp
    • Your agent needs B2B contacts and the pipeline objects around them — find the company, find the person, get the email, then write it back where your team works. **What you can ask for** • "Find heads of engineering at Series-B SaaS companies in the Nordics, with emails." • "Enrich these companies with headcount, industry and funding." • "What roles is this company hiring for right now?" • "Create an account and a contact, then log this opportunity." • "Search our sequences for messages sent to this domain." **How to use it** Point any MCP client at https://mcp.aisa.one/apollo/mcp and sign in with OAuth — there is no key to create or paste. 54 tools: people and organisation search and enrichment, job postings, accounts, contacts, opportunities and their stages, custom fields, labels, notes, users, email accounts, sequence messages and phone-call search — reads and writes. **Why this rather than the source** The full object model, not just a search endpoint, so an agent can finish the job rather than hand you a CSV. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Find the person here, then ask the same agent what their company's traffic looks like or what they rank for — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/sales/mcp adds Similarweb and creator discovery around it.

    • Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server

      https://mcp.apideck.dev/mcp

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server implementation that enables AI assistants to interact with Apollo.io data, allowing for people and organization enrichment, search capabilities, and job posting retrieval through natural language commands.
      7
      47 npm
      MIT
    • A
      license
      B
      quality
      B
      maintenance
      MCP server for Apollo.io B2B database enabling people and company search, enrichment, and insights through conversational interfaces.
      9
      7,221 npm
      19
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol (MCP) server for the Apollo.io API, giving AI coding assistants direct access to Apollo.io's sales intelligence platform for prospecting, enrichment, CRM operations, and outreach.
      50
      6
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      MCP server for Apollo.io B2B sales intelligence API. Enables searching and enriching people and organizations via natural language.
      7
      22 npm
      4
      MIT