@agentx-ai/apollo-io-mcp-server
Version:
AgentX MCP server for Apollo.io API with comprehensive people and organization enrichment capabilities
159 lines (116 loc) • 9.28 kB
Markdown
## [](https://www.npmjs.com/package/@agentx-ai/apollo-io-mcp-server)
# 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
```bash
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
## License
MIT License - see [LICENSE](LICENSE) file for details.
## AgentX MCP
- [MCP Hub Website](https://www.agentx.so/mcp)
- [More open sourced MCP Servers](https://github.com/AgentX-ai/AgentX-mcp-servers)