Apollo.io MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Apollo.io MCP Server Find CTOs at Series B fintech companies in NYC"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Apollo.io MCP Server
A Model Context Protocol (MCP) server for the Apollo.io API -- giving AI coding assistants like Claude Code, Cursor, and any MCP-compatible client direct access to Apollo.io's sales intelligence platform.
Search leads, enrich contacts with verified emails and phone numbers, manage CRM records, run email sequences, track outreach, manage deals, tasks, notes, labels, and more -- all through natural language via 45 ready-to-use tools.
Why Use This?
AI-native prospecting -- Ask your AI assistant to "find CTOs at Series B fintech companies in NYC" and get results instantly
Automated enrichment -- Enrich leads with verified emails and phone numbers without leaving your editor
CRM operations -- Create, update, search, and delete contacts, accounts, deals, tasks, and notes through conversation
Sequence management -- Add contacts to email sequences and monitor outreach performance
Full pipeline visibility -- Access contact stages, account stages, opportunity stages, labels, and team members
Credit-aware -- Every tool description includes credit cost so your AI avoids unexpected charges
Related MCP server: Apollo.io MCP Server
Quick Start
1. Clone & Build
git clone https://github.com/Chainscore/apollo-io-mcp.git
cd apollo-io-mcp
npm install
npm run build2. Get Your Apollo API Key
Get your API key from Apollo.io Settings > Integrations > API.
3. Add to Your MCP Client
Claude Code (~/.claude/settings.json):
{
"mcpServers": {
"apollo-io": {
"command": "node",
"args": ["/path/to/apollo-io-mcp/dist/index.js"],
"env": {
"APOLLO_API_KEY": "your_key_here"
}
}
}
}Cursor (.cursor/mcp.json):
{
"mcpServers": {
"apollo-io": {
"command": "node",
"args": ["/path/to/apollo-io-mcp/dist/index.js"],
"env": {
"APOLLO_API_KEY": "your_key_here"
}
}
}
}Tools (45)
People Search & Enrichment
Tool | Description | Cost |
| Search Apollo's 270M+ contact database by title, company, location, seniority, tech stack, funding stage | FREE |
| Get verified email, phone number, and full profile for a person | 1 credit |
| Enrich up to 10 people in a single request | 1 credit/person |
Company / Organization Data
Tool | Description | Cost |
| Search companies by name, industry, employee count, revenue | 1 credit/page |
| Get detailed company info (tech stack, funding, size) by domain | 1 credit |
| Get organization details by Apollo ID | FREE |
| Get current job postings for a company | 1 credit |
CRM -- Contacts
Tool | Description | Cost |
| Create a contact with automatic deduplication | FREE |
| Update an existing contact | FREE |
| Retrieve a contact by ID | FREE |
| Search your saved contacts | FREE |
| Permanently delete a contact | FREE |
| Create up to 100 contacts at once | FREE |
| Update up to 100 contacts at once | FREE |
CRM -- Accounts
Tool | Description | Cost |
| Create a company record in your CRM | FREE |
| Update an existing account | FREE |
| Search your saved accounts | FREE |
CRM -- Opportunities/Deals
Tool | Description | Cost |
| Search deals in your pipeline by keyword, stage, or owner | FREE |
| Get a single deal by ID | FREE |
| Create a new deal with name, amount, stage, contacts | FREE |
| Update deal details, stage, or amount | FREE |
CRM -- Tasks
Tool | Description | Cost |
| Search tasks by keyword, assignee, or completion status | FREE |
| Get a single task by ID | FREE |
| Create a call, email, linkedin, or other task | FREE |
| Update task details or mark as completed | FREE |
CRM -- Notes
Tool | Description | Cost |
| Search notes by keyword or contact | FREE |
| Create a note, optionally attached to a contact | FREE |
| Delete a note | FREE |
Email Sequences & Outreach
Tool | Description | Cost |
| Search email sequences/campaigns | FREE |
| Add contacts to an email sequence | FREE |
| Remove or pause contacts in a sequence | FREE |
| Search sent outreach emails with open/click tracking | FREE |
| Get opens, clicks, and replies for an email | FREE |
| List connected sending email accounts | FREE |
Labels & Tags
Tool | Description | Cost |
| List all labels/tags in your workspace | FREE |
| Create a new label for contacts or accounts | FREE |
| Rename an existing label | FREE |
| Delete a label | FREE |
Pipeline Stages
Tool | Description | Cost |
| List contact pipeline stages (Cold, Approaching, etc.) | FREE |
| List account pipeline stages | FREE |
| List deal pipeline stages (Lead, Qualified, Won, etc.) | FREE |
Team & Users
Tool | Description | Cost |
| Search team members by name or email | FREE |
Activity Tracking
Tool | Description | Cost |
| Search activity logs (emails, calls, clicks, replies) | FREE |
| Search phone call records and outcomes | FREE |
Custom Fields & Metadata
Tool | Description | Cost |
| List all available fields for contacts/accounts | FREE |
| Create a custom field (text, number, dropdown, etc.) | FREE |
| List custom fields via legacy endpoint | FREE |
News, Usage & Health
Tool | Description | Cost |
| Search recent news about target companies | Credits |
| Check API credit usage and remaining balance | FREE |
| Verify API key and check Apollo API health | FREE |
Usage Tips
Verify your setup -- Start with
health_checkorget_api_usage_stats(both FREE) to confirm your API key worksSave credits -- Use
search_people(FREE) for prospecting before enriching withenrich_person(1 credit)Prefer people search --
search_peopleis free whilesearch_organizationscosts 1 credit/pageAuto-cleaned domains -- Pass
https://www.google.com,www.google.com, or@google.com-- all resolve togoogle.comBuilt-in deduplication -- Contact creation enforces dedup so you never accidentally create duplicates
Pipeline workflow -- Use
list_contact_stages/list_opportunity_stagesto get stage IDs, then filter contacts and deals by stageTask management -- Create tasks with
create_task, assign to team members found viasearch_usersLabel organization -- Create labels with
create_label, then apply them when creating/updating contacts
Requirements
Node.js 18+
Apollo.io API key (get one here)
An MCP-compatible client (Claude Code, Cursor, etc.)
License
MIT
Contact
Need help integrating MCP servers into your workflow? Reach out at prasad@inferensys.com. We help companies build agentic workflows seemlessly that saves time and operational cost.
Built by Inferensys. Contact Us: https://inferensys.com/contact
Available Tools
50 toolsadd_contacts_to_sequenceB
Add contacts to an email sequence. FREE. Provide the sequence ID and an array of contact IDs. Contacts will start receiving the sequence emails. You must also specify the email_account_id to send from.
Inputs: emailer_campaign_id (required), contact_ids (required), send_email_from_email_account_id (required), emailer_campaign_step_id, +1 more.
bulk_create_contactsA
Create multiple contacts at once. FREE. Deduplication is enforced. Max 100 contacts per request.
Inputs: contacts (required).
bulk_enrich_peopleB
Enrich multiple people in a single request. COSTS 1 CREDIT PER PERSON matched. Each detail object should contain identifying info (name, domain, email, linkedin_url). Max 10 people per request.
Inputs: details (required), reveal_personal_emails, reveal_phone_number.
bulk_update_contactsB
Update multiple contacts at once. FREE. Provide contact IDs and fields to update. Max 100 per request.
Inputs: contacts (required).
create_accountA
Create an account (company record) in your Apollo CRM. FREE. An account represents a company you're tracking. Provide at least the name and domain.
Inputs: name (required), domain, phone_number, raw_address, +1 more.
create_contactA
Create a new contact in your Apollo CRM. FREE. Deduplication is enforced (run_dedupe=true) to prevent duplicates. Provide at least first_name, last_name, and either email or organization_name.
Inputs: first_name (required), last_name (required), email, title, +10 more.
create_custom_fieldC
Create a custom field for contacts or accounts. FREE. Custom fields let you store additional data on your CRM records.
Inputs: name (required), field_type (required), entity_type (required), picklist_values.
create_labelB
Create a new label (tag/list) in Apollo. FREE. Labels help organize contacts and accounts. Undocumented endpoint.
Inputs: name (required), modality.
create_noteC
Create a note in Apollo. FREE. Notes can be associated with a contact. Undocumented endpoint.
Inputs: content (required), contact_id.
create_opportunityB
Create a new deal/opportunity in your Apollo CRM. FREE. At minimum, provide a name. Optionally set amount, stage, close date. Undocumented endpoint.
Inputs: name (required), amount, opportunity_stage_id, owner_id, +3 more.
create_taskB
Create a new task in Apollo. FREE. Tasks can be associated with contacts. Requires a user_id for assignment. Undocumented endpoint.
Inputs: user_id (required), contact_id, type, priority, +2 more.
delete_contactB
Delete a contact from your Apollo CRM. FREE. This permanently removes the contact. Undocumented but functional.
Inputs: contact_id (required).
delete_labelB
Delete a label from Apollo. FREE. Undocumented endpoint.
Inputs: label_id (required).
delete_noteC
Delete a note from Apollo. FREE. Undocumented endpoint.
Inputs: note_id (required).
enrich_organizationA
Enrich a single organization by domain to get detailed company info. COSTS 1 CREDIT. Returns company size, industry, funding, tech stack, etc.
Inputs: domain (required).
enrich_personA
Enrich a single person to get their email, phone, and detailed profile. COSTS 1 CREDIT per successful match. Provide as many identifying fields as possible for best match accuracy. At minimum provide name + domain, or LinkedIn URL, or email.
Inputs: first_name, last_name, name, email, +5 more.
get_api_usage_statsA
Get API usage statistics for your Apollo account. FREE. Shows credit usage, remaining credits, and rate limit info. Call this first to verify your API key works.
Inputs: no named parameters.
get_contactB
Get a single contact by ID from your Apollo CRM. FREE.
Inputs: contact_id (required).
get_email_activitiesC
Get activities (opens, clicks, replies) for a specific outreach email. FREE.
Inputs: emailer_message_id (required).
get_opportunityB
Get a single deal/opportunity by ID. FREE. Undocumented endpoint.
Inputs: opportunity_id (required).
get_organizationA
Get details for an organization by its Apollo ID. FREE -- no credit cost. Use this when you already have the organization ID from a previous search.
Inputs: organization_id (required).
get_organization_job_postingsA
Get current job postings for an organization. COSTS 1 CREDIT. Useful for understanding hiring priorities and team growth areas.
Inputs: organization_id (required).
get_taskB
Get a single task by ID. FREE. Undocumented endpoint.
Inputs: task_id (required).
health_checkA
Check Apollo API health and verify your API key is working. FREE. Returns basic account info if the key is valid. Undocumented endpoint.
Inputs: no named parameters.
list_account_stagesA
List all account stages in your Apollo pipeline. FREE. Use these stage IDs when creating or filtering accounts. Undocumented endpoint.
Inputs: no named parameters.
list_contact_stagesA
List all contact stages in your Apollo pipeline (e.g. Cold, Approaching, Replied). FREE. Use these stage IDs when creating or filtering contacts. Undocumented endpoint.
Inputs: no named parameters.
list_custom_fields_deprecatedA
List custom fields using the legacy typed_custom_fields endpoint. FREE. Prefer list_fields instead. This endpoint is deprecated but still functional.
Inputs: no named parameters.
list_email_accountsA
List all email accounts connected to your Apollo workspace. FREE. Use this to find the email_account_id needed for add_contacts_to_sequence. Requires a master API key.
Inputs: no named parameters.
list_fieldsB
List all available fields for contacts and accounts in Apollo. FREE. Useful for understanding what data you can search/filter on.
Inputs: entity_type.
list_labelsB
List all labels (tags/lists) in your Apollo workspace. FREE. Labels are used to organize contacts and accounts into groups. Undocumented endpoint.
Inputs: no named parameters.
list_opportunity_stagesA
List all deal/opportunity stages in your Apollo pipeline (e.g. Lead, Qualified, Won). FREE. Use these stage IDs when creating or filtering opportunities. Undocumented endpoint.
Inputs: no named parameters.
search_accountsC
Search accounts in your Apollo CRM. FREE. These are company records you've already saved.
Inputs: q_keywords, sort_by_field, sort_ascending, page, +1 more.
search_activitiesB
Search activity logs in your Apollo workspace. FREE. Returns email sends, opens, clicks, replies, calls, and other team activities. Useful for monitoring outreach performance and team productivity. Undocumented endpoint.
Inputs: q_keywords, user_id, contact_id, sort_by_field, +3 more.
search_contactsA
Search contacts in your Apollo CRM. FREE. These are contacts you've already saved -- not the global Apollo database. Use search_people for prospecting new contacts.
Inputs: q_keywords, contact_stage_ids, sort_by_field, sort_ascending, +2 more.
search_news_articlesB
Search news articles about companies in Apollo's database. COSTS CREDITS. Useful for finding recent news about target companies for personalized outreach.
Inputs: q_organization_domains, organization_ids, page, per_page.
search_notesC
Search notes in your Apollo workspace. FREE. Notes can be attached to contacts, accounts, or opportunities. Undocumented endpoint.
Inputs: q_keywords, contact_id, page, per_page.
search_opportunitiesC
Search deals/opportunities in your Apollo CRM. FREE. Returns deal name, amount, stage, close date, and associated contacts. Undocumented endpoint.
Inputs: q_keywords, opportunity_stage_ids, owner_id, sort_by_field, +3 more.
search_organizationsA
Search for organizations/companies in Apollo's database. COSTS 1 CREDIT PER PAGE of results. Prefer search_people (FREE) when possible. Use this when you specifically need company-level data like revenue, tech stack, or funding info.
Inputs: q_organization_keyword_tags, q_organization_name, organization_locations, organization_num_employees_ranges, +5 more.
search_outreach_emailsA
Search outreach emails sent through Apollo sequences. FREE. Returns email messages with status, open/click tracking, and content.
Inputs: emailer_campaign_id, contact_id, email_account_id, page, +1 more.
search_peopleA
Search for people in Apollo's database. This is FREE and does not cost credits. Use this as the primary discovery tool. Returns name, title, company, and LinkedIn URL. Does NOT return email/phone -- use enrich_person to get contact info (costs 1 credit). Supports filtering by title, company, location, seniority, and more. Max 10 results per page.
Inputs: q_keywords, person_titles, person_not_titles, q_organization_domains, +14 more.
search_phone_callsB
Search phone call logs in your Apollo workspace. FREE. Returns call records, durations, and outcomes. Undocumented endpoint.
Inputs: user_id, contact_id, page, per_page.
search_sequencesB
Search email sequences (campaigns) in your Apollo account. FREE. Returns sequence name, status, stats, and IDs.
Inputs: q_name, sort_by_field, sort_ascending, page, +1 more.
search_tasksC
Search tasks in your Apollo workspace. FREE. Returns manual tasks, call tasks, and sequence-triggered tasks. Undocumented endpoint.
Inputs: q_keywords, user_id, completed, sort_by_field, +3 more.
search_usersC
Search team members/users in your Apollo workspace. FREE. Returns user IDs, names, and email addresses. User IDs are needed for assigning tasks, deals, and contacts. Undocumented endpoint.
Inputs: q_keywords, page, per_page.
update_accountC
Update an existing account in your Apollo CRM. FREE.
Inputs: account_id (required), name, domain, phone_number, +2 more.
update_contactC
Update an existing contact in your Apollo CRM. FREE. Provide the contact ID and any fields to update.
Inputs: contact_id (required), first_name, last_name, email, +11 more.
update_labelA
Update a label name in Apollo. FREE. Undocumented endpoint.
Inputs: label_id (required), name (required).
update_opportunityC
Update an existing deal/opportunity. FREE. Undocumented endpoint.
Inputs: opportunity_id (required), name, amount, opportunity_stage_id, +2 more.
update_sequence_statusB
Remove or stop contacts in a sequence. FREE. Use this to pause or remove contacts from an active sequence.
Inputs: emailer_campaign_id (required), contact_ids (required), mode (required).
update_taskC
Update an existing task. FREE. Can mark as completed. Undocumented endpoint.
Inputs: task_id (required), note, completed, priority, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 50 tools
Most tools have clearly distinct purposes, with only minor overlaps like search_contacts (saved contacts) vs. search_people (prospecting database) and list_custom_fields_deprecated vs. list_fields. Descriptions effectively resolve ambiguity.
All tools follow a consistent verb_noun pattern in lowercase with underscores (e.g., create_contact, search_people). No mixed conventions or confusing name styles.
With 50 tools, the server is significantly oversized compared to typical MCP servers (3-15). While each tool serves a specific function, the sheer number makes it heavy for an agent to navigate, and many tools (e.g., search_phone_calls, search_activities) add complexity.
The tool surface covers most CRM and enrichment operations comprehensively (CRUD for contacts, opportunities, tasks, notes, labels; enrichment; search; sequences). Minor gaps exist: missing delete_account and delete_opportunity, and no get_sequence by ID, but these are not critical.
Maintenance
Related MCP Connectors
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
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.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Apollo.io MCP — company and people data via api.apollo.io, the caller's OWN Apollo account (fleet…
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server implementation that enables AI assistants to interact with Apollo.io data, performing operations like people/organization enrichment, searching, and retrieving job postings through natural language commands.747 npm40MIT
- AlicenseBqualityDmaintenanceA 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.747 npmMIT
- AlicenseBqualityBmaintenanceMCP server for Apollo.io B2B database enabling people and company search, enrichment, and insights through conversational interfaces.99,302 npm19MIT
- AlicenseAqualityDmaintenanceMCP server for Apollo.io B2B sales intelligence API. Enables searching and enriching people and organizations via natural language.722 npm4MIT