people_enrichment
Enrich contact data by adding professional details like company information, LinkedIn profiles, and email addresses using provided names or domains.
Instructions
Use the People Enrichment endpoint to enrich data for 1 person
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| first_name | No | Person's first name | |
| last_name | No | Person's last name | |
| No | Person's email address | ||
| domain | No | Company domain | |
| organization_name | No | Organization name | |
| linkedin_url | No | Person's LinkedIn profile URL |
Implementation Reference
- src/apollo-client.ts:95-114 (handler)Core handler function that executes the People Enrichment API call to Apollo.io using axios.* https://docs.apollo.io/reference/people-enrichment */ async peopleEnrichment(query: PeopleEnrichmentQuery): Promise<any> { try { const url = `${this.baseUrl}/people/match`; console.log('url', url); console.log('query', query); const response = await this.axiosInstance.post(url, query); if (response.status === 200) { return response.data; } else { console.error(`Error: ${response.status} - ${response.statusText}`); return null; } } catch (error: any) { console.error(`Error: ${error.response?.status} - ${error.response?.statusText || error.message}`); return null; } }
- src/apollo-client.ts:32-39 (schema)TypeScript interface defining the input query parameters for people_enrichment.export interface PeopleEnrichmentQuery { first_name?: string; last_name?: string; email?: string; domain?: string; organization_name?: string; [key: string]: any; }
- src/index.ts:79-111 (registration)Tool registration including name, description, and input schema in the ListTools handler.{ name: 'people_enrichment', description: 'Use the People Enrichment endpoint to enrich data for 1 person', inputSchema: { type: 'object', properties: { first_name: { type: 'string', description: "Person's first name" }, last_name: { type: 'string', description: "Person's last name" }, email: { type: 'string', description: "Person's email address" }, domain: { type: 'string', description: "Company domain" }, organization_name: { type: 'string', description: "Organization name" }, linkedin_url: { type: 'string', description: "Person's LinkedIn profile URL" } } } },
- src/index.ts:232-240 (handler)MCP CallToolRequestSchema handler case that delegates to ApolloClient.peopleEnrichment and formats response.case 'people_enrichment': { const result = await this.apollo.peopleEnrichment(args); return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] }; }