From gtm-skills
Enriches LinkedIn profiles from people-search with verified emails and phones using providers like Prospeo or Fullenrich. Supports single-provider and waterfall modes; outputs contact CSV.
npx claudepluginhub extruct-ai/gtm-skills --plugin gtm-skillsThis skill uses the workspace's default tool permissions.
Turn LinkedIn profiles into verified emails and phones. Takes the output of `people-search` and runs it through contact enrichment providers like Prospeo or Fullenrich.
Enriches company lists with 5-10 key decision makers' names, titles, verified emails, and LinkedIn URLs using Parallel, Apollo, and MillionVerifier APIs.
Finds LinkedIn profiles of decision makers at target companies using Extruct's company_people_finder. Takes company table, adds people finder column, produces linked people table with names, roles, URLs. Uses internal index only.
Generates leads via LinkedIn prospect discovery, email finding, website contact extraction, company research, and data enrichment using anysite MCP server. For building sales, recruiting, or business development prospect lists.
Share bugs, ideas, or general feedback.
Turn LinkedIn profiles into verified emails and phones. Takes the output of people-search and runs it through contact enrichment providers like Prospeo or Fullenrich.
list-segmentation → people-search → email-search → email-generation → email-response-simulation → campaign-sending
After people-search finds WHO to contact (with LinkedIn URLs), this skill gets their verified contact info.
This skill delegates all Extruct API calls to the extruct-api skill.
For all Extruct API operations, read and follow the instructions in skills/extruct-api/SKILL.md.
The only Extruct operation in this skill is reading people table data. Contact enrichment uses separate providers (Prospeo, Fullenrich, etc.) with their own APIs.
| Input | Source | Required |
|---|---|---|
| People table ID | Child table from people-search | yes (or CSV) |
| People CSV | claude-code-gtm/csv/input/{campaign}/people_linkedin.csv | yes (or table) |
| Provider preference | User choice | yes |
| Include mobile phones | User choice | no (default: no) |
Ask the user which contact enrichment provider they want to use. If they need guidance, consider:
If the user doesn't know where to start, pre-configured options with local reference docs are available in references/.
Option A: From Extruct people table (recommended) — Use the extruct-api skill to fetch data from the people table. Extract full_name, profile_url, role, and parent_row_id from each row. Split full name into first/last.
Option B: From CSV — Read claude-code-gtm/csv/input/{campaign}/people_linkedin.csv.
Before running enrichment, check the user's available credits or quota with the chosen provider (using the endpoint identified in Step 0). Present a cost estimate based on the number of contacts to enrich.
Using the chosen provider's API (from Step 0):
If the user wants a waterfall (two providers), run the first provider, collect misses, then run misses through the second.
Deduplicate by email. Filter out:
Save enriched contacts to claude-code-gtm/csv/input/{campaign}/contacts.csv with columns:
first_name, last_name, email, email_verified, job_title, company_name, domain, linkedin_url, phone, location, sourcePresent summary:
Enrichment Results:
- Contacts submitted: N
- Emails found: N (X% hit rate)
- Emails verified: N
- Phones found: N
- No match: N
- Provider: [chosen provider]
Show a sample of 10 contacts for spot-checking:
| Name | Title | Company | Phone | Source | |
|---|---|---|---|---|---|
| ... | ... | ... | ... | ... | ... |
Ask:
email-generation?"Pre-configured provider docs in references/ directory. For other providers, docs are fetched during Step 0.