Apollo.io MCP server

Integrates with Apollo.io's API to enable access to sales intelligence data, including contact enrichment, company information, and job listings for sales teams and recruiters.
Back to servers
Provider
Lakhvinder Singh
Release date
Apr 14, 2025
Language
TypeScript
Stats
11 stars

Apollo.io MCP Server is a powerful implementation of the Model Context Protocol that connects AI assistants to Apollo.io data. It allows AI systems to enrich data for people and organizations, perform searches, find job postings, and execute Apollo.io operations through natural language commands without leaving the AI assistant interface.

Installation

To set up the Apollo.io MCP Server:

# 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

Before using the server, you need to obtain an Apollo.io API access token:

  1. Go to your Apollo.io Account
  2. Navigate to Settings > API
  3. Generate an API key

You can provide this token in either of 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:

APOLLO_IO_API_KEY=your-api-key

Starting the Server

To start the MCP 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

Authentication Setup

The server uses the mcp-proxy-auth package for authentication:

  1. Set the authentication server URL:

    export AUTH_SERVER_URL=https://your-auth-server.com/verify
    
  2. The SSE URL will be available at:

    localhost:8080/sse?apiKey=apikey
    

The authentication proxy:

  • Intercepts requests to your SSE server
  • Verifies API keys against your authentication server
  • Only allows authenticated requests to reach your SSE endpoint

Available Tools

The MCP server provides these tools for interacting with Apollo.io:

People Enrichment

Enriches data for a single 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": "[email protected]"
}

Organization Enrichment

Enriches data for a single company.

Parameters:

  • domain (string, optional): Company domain
  • name (string, optional): Company name

Example:

{
  "domain": "apollo.io"
}

People Search

Finds people based on specified criteria.

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"]
}

Organization Search

Finds organizations based on specified criteria.

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"]
}

Organization Job Postings

Finds job postings for a specific organization.

Parameters:

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

Example:

{
  "organization_id": "5e60b6381c85b4008c83"
}

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later