Skip to main content
Glama

Apollo MCP Server

A Model Context Protocol (MCP) server for Apollo.io - the leading sales intelligence and engagement platform. This server provides 34+ tools for automating sales outreach, prospecting, and pipeline management.

Features

  • People Search & Enrichment - Find and enrich contact data from Apollo's 275M+ contact database

  • Organization Search & Enrichment - Search companies by industry, size, location, and more

  • Email Sequences - Create and manage automated outreach campaigns with A/B testing

  • Contact Management - Organize contacts into lists and manage pipeline stages

  • Workflow Automation - Build event-driven automations for your sales process

  • Tasks & Activities - Create and track sales activities

  • Deals Pipeline - Manage opportunities through your sales pipeline

  • Analytics - Track sequence performance and email deliverability

Installation

Prerequisites

  • Python 3.10+

  • An Apollo.io account with API access

  • uv (recommended) or pip

Install with uv

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

# Install dependencies
uv pip install -e .

Install with pip

pip install -e .

Configuration

Get Your Apollo API Key

  1. Log in to Apollo.io

  2. Go to Settings > Integrations > API

  3. Generate or copy your API key

Set Environment Variable

export APOLLO_API_KEY="your-api-key-here"

Or add to your shell profile (~/.bashrc, ~/.zshrc, etc.):

echo 'export APOLLO_API_KEY="your-api-key-here"' >> ~/.zshrc

Usage

With Claude Code

Add to your Claude Code MCP configuration (~/.claude.json):

{
  "mcpServers": {
    "apollo": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/apollo-mcp-server", "python", "-m", "apollo_mcp.server"],
      "env": {
        "APOLLO_API_KEY": "your-api-key-here"
      }
    }
  }
}

Standalone

# Run the server
python -m apollo_mcp.server

Available Tools

People & Contacts (6 tools)

Tool

Description

people_search

Search Apollo's 275M+ contact database with filters

people_enrich

Enrich a person's profile by email, name, or LinkedIn

contacts_search

Search contacts in your Apollo CRM

Organizations (3 tools)

Tool

Description

organization_search

Search companies by industry, size, location

organization_enrich

Get comprehensive company data by domain

organization_job_postings

Get current job postings for a company

Email Sequences (5 tools)

Tool

Description

sequences_list

List all email sequences

sequence_get

Get sequence details and stats

sequence_create

Create multi-step outreach sequences

sequence_add_contacts

Add contacts to a sequence

sequence_activate

Activate or pause a sequence

Contact Lists (3 tools)

Tool

Description

lists_get

Get all saved lists

list_create

Create a new contact list

list_add_contacts

Add contacts to a list

Workflows (7 tools)

Tool

Description

workflows_list

List all workflow automations

workflow_get

Get workflow details

workflow_create

Create event-driven automations

workflow_update

Update workflow configuration

workflow_activate

Activate or deactivate workflows

workflow_delete

Delete a workflow

workflow_templates_list

Browse workflow templates

workflow_create_from_template

Create from a template

Email (2 tools)

Tool

Description

email_preview

Preview emails with variable substitution

email_send

Send one-off emails

Tasks (2 tools)

Tool

Description

tasks_list

List all tasks

task_create

Create tasks for contacts

Deals (2 tools)

Tool

Description

deals_list

List pipeline opportunities

deal_create

Create new deals

Analytics (2 tools)

Tool

Description

analytics_sequences

Get sequence performance metrics

analytics_email_accounts

Get email deliverability stats

Utility (4 tools)

Tool

Description

get_available_fields

List email personalization variables

get_email_schedules

Get sending schedule options

get_contact_stages

Get contact pipeline stages

get_account_stages

Get account pipeline stages

Examples

Search for Decision Makers

# Find VPs of Sales at tech companies in California
people_search(
    person_titles=["VP Sales", "Vice President of Sales"],
    organization_locations=["California, US"],
    organization_num_employees_ranges=["51,200", "201,500"]
)

Create an Outreach Sequence

sequence_create(
    name="New Lead Outreach",
    steps=[
        {
            "type": "auto_email",
            "wait_time": 0,
            "wait_mode": "minute",
            "emailer_touches": [{
                "type": "new_thread",
                "subject": "Quick question about {{company}}",
                "body_html": "<p>Hi {{first_name}},</p><p>I noticed {{company}} is growing...</p>"
            }]
        },
        {
            "type": "auto_email",
            "wait_time": 3,
            "wait_mode": "day",
            "emailer_touches": [{
                "type": "reply",
                "subject": "Re: Quick question about {{company}}",
                "body_html": "<p>Following up on my last email...</p>"
            }]
        }
    ]
)

Create a Workflow Automation

workflow_create(
    name="New Contact Nurture",
    trigger_type="event",
    trigger_events=["contact_saved_or_created"],
    actions=[
        {"type": "add_to_sequence", "config": {"sequence_id": "abc123"}}
    ]
)

Email Personalization Variables

Use these variables in email templates:

Variable

Description

{{first_name}}

Contact's first name

{{last_name}}

Contact's last name

{{company}}

Company name

{{title}}

Job title

{{email}}

Email address

{{city}}

City

{{state}}

State/region

{{country}}

Country

API Endpoints

The server uses two Apollo API endpoints:

  • Public API (api.apollo.io/v1/): People search, enrichment

  • App API (app.apollo.io/api/v1/): Sequences, workflows, lists, etc.

All requests use the X-Api-Key header for authentication.

Development

Project Structure

apollo-mcp-server/
├── apollo_mcp/
│   ├── __init__.py          # Package initialization
│   ├── server.py             # Main MCP server
│   ├── client.py             # HTTP client for Apollo API
│   ├── utils/
│   │   ├── __init__.py
│   │   ├── config.py         # Configuration and settings
│   │   └── formatting.py     # Output formatting utilities
│   └── tools/
│       ├── __init__.py       # Tool registration
│       ├── people.py         # People/contact tools
│       ├── organizations.py  # Organization tools
│       ├── sequences.py      # Email sequence tools
│       ├── lists.py          # List management tools
│       ├── workflows.py      # Workflow automation tools
│       ├── email.py          # Email tools
│       ├── tasks.py          # Task management tools
│       ├── deals.py          # Deal/opportunity tools
│       ├── analytics.py      # Analytics tools
│       └── utility.py        # Helper tools
├── examples/
│   └── basic_usage.py        # Usage examples
├── pyproject.toml            # Project configuration
├── requirements.txt          # Dependencies
└── README.md

Running Tests

# Install dev dependencies
uv pip install -e ".[dev]"

# Run tests
pytest

Contributing

Contributions are welcome! Please:

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Submit a pull request

License

MIT License - see LICENSE for details.

Acknowledgments

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BlockchainRev/apollo-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server