B2B Prospect Builder

List building

by LeadMagic · MIT license · ★ 62 on GitHub

List building cover

Build qualified B2B prospect lists using Clay, LinkedIn Sales Navigator, and multi-source discovery. Use when the user wants to build a prospect list, create a target account list, find companies matching an ICP, scrape lead sources, or…

---
name: list-building
description: >-
  Build qualified B2B prospect lists using Clay, LinkedIn Sales Navigator, and
  multi-source discovery. Use when the user wants to build a prospect list,
  create a target account list, find companies matching an ICP, scrape lead
  sources, or compile a list for outbound. Triggers on: "build a list", "prospect
  list", "target accounts", "find companies", "scrape leads", "list building",
  "who should we reach out to", or any request to compile prospect data.
license: MIT
compatibility: Claude Code, Codex, GitHub Copilot, Cursor, Gemini CLI, OpenCode, Goose, Hermes, Windsurf, Zed
metadata:
  version: "1.0.0"
  author: LeadMagic
  category: prospecting
  tags: [list-building, prospecting, clay, leads, targeting]
  related_skills: [icp-scoring, lead-finding, lead-enrichment, clay-automation, sales-navigator-prospecting]
  frameworks:

Overview

A qualified prospect list is the foundation of every outbound motion. Build it wrong and everything downstream fails — enrichment misses, verification flags half the list, and reps waste time on accounts that were never going to buy.

What you get

  • Company domain, company name, industry, employee count
  • Contact name, title, email, email verification status
  • LinkedIn URL, source attribution
  • ICP score and tier
Manual install (npx, ZIP)
Claude Codenpx skills add LeadMagic/gtm-skills --skill list-building -g -a claude-code
Claude Code (degit)npx degit LeadMagic/gtm-skills/skills/prospecting/list-building#main ~/.claude/skills/list-building
Claude.ai / desktopZip the folder and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md6.9 KB
Read SKILL.md here
LeadMagic/main1 file shown
SKILL.md
Show the full text173 lines

List Building

Overview

A qualified prospect list is the foundation of every outbound motion. Build it wrong and everything downstream fails — enrichment misses, verification flags half the list, and reps waste time on accounts that were never going to buy.

This skill covers building clean, qualified lists from multiple sources, applying ICP filters early (before expensive enrichment), and maintaining list hygiene. The core principle: qualify first, enrich deep later. Filtering out non-fits before running enrichment cuts costs by 30-40%.

When to Use

  • "Build a list of VP Sales at Series B SaaS companies"
  • "Find target accounts in the fintech space"
  • "Create a prospect list from this conference attendee file"
  • "Scrape local businesses from Google Maps for SMB outreach"
  • "Build a target account list for our ABM campaign"

Authoritative Foundations

List building follows the Ziellab framework: filter first, enrich second. For phone-led outbound, add Joey Gilkey Phone Intent scoring after ICP filter — prioritize P1 contacts before expensive rep time. Pair pain-based segments (Jordan Crawford PQS) with disposition-driven list iteration (Gilkey Disposition Science). → references/joey-gilkey-bucketing.md

Clay's native table architecture supports this naturally — company enrichment runs first, ICP filters gate the contact enrichment, and only qualified accounts proceed to email and phone waterfalls.

Prerequisites

  • ICP defined (use icp-scoring first if not yet defined)
  • Source data: can start from a domain list, LinkedIn Sales Nav export, conference attendee list, Google Maps scrape, or industry directory
  • Access to Clay or equivalent enrichment platform

Step-by-Step Process

Phase 1: Source Selection

Choose sources based on the target segment:

Source Best For Data Quality
LinkedIn Sales Nav B2B, any industry High — verified profiles
Apollo Search US B2B, all sizes High — 270M+ contacts
Claygent web search Founders, execs, niche Medium — web-sourced
Google Maps scrape Local SMB Medium — needs enrichment
Conference speaker lists Industry leaders Very high — curated
Crunchbase Funded startups High — funding-verified
GitHub Dev tools, tech High — public activity
Job boards (Lever, Greenhouse) Growing companies High — active hiring signal
Phase 2: Company-Level Enrichment

Before finding contacts, enrich company data:

  1. Import domains into Clay
  2. Run company enrichment (Clay native or Clearbit)
  3. Apply ICP filters: company size, industry, geography, funding stage
  4. Only companies passing ICP filters proceed to contact finding

This gate typically removes 40-60% of the initial list — those credits are saved on contact enrichment.

Phase 3: Contact Discovery

For qualified companies, find relevant contacts:

  1. Define target titles and seniority
  2. Run people search (Apollo, Clay People, or LeadMagic People Search)
  3. Filter by title match and seniority
  4. Target 2-5 contacts per account for multi-threading
Phase 4: List Quality Scorecard

Grade every list across 8 dimensions before uploading to a sequencer:

Dimension Pass Criteria
Domain validity All domains resolve
ICP fit 80%+ match defined ICP
Title relevance 70%+ match target titles
Email coverage 85%+ have verified email
Email verification 98%+ verified valid
Duplicate rate Under 3%
Geographic fit 90%+ in target regions
Company size fit 80%+ in target range

Lists scoring below 70% across dimensions should be reworked before sending.

Output Format

Deliver a CSV with:

  • Company domain, company name, industry, employee count
  • Contact name, title, email, email verification status
  • LinkedIn URL, source attribution
  • ICP score and tier

Quality Check

  • ICP filters applied before contact enrichment
  • All emails verified (verification status column populated)
  • Duplicates removed (match on email + company)
  • List quality scorecard completed
  • Companies source-attributed
  • Separate company and person tables maintained (not merged)

Common Pitfalls

  1. Enriching before filtering. Running $0.15-0.40/contact enrichment on records that fail ICP wastes 30-40% of budget. Filter first always.

  2. One giant table. Combining company and person data in a single table creates duplication and makes re-enrichment impossible. Separate tables with domain as the join key.

  3. No list quality baseline. Sending to an unscored list means you can't diagnose why reply rates are low. Score every list before launch.

  4. Stale data acceptance. A list built 6 months ago has 12-18% decay. Re-verify and re-enrich before launching any campaign on old data.

  5. Single-source dependency. One source never covers your full TAM. Cross-reference at least two sources and reconcile differences.

Execution Artifacts

  • references/framework-notes.md — Named frameworks and reference tables
  • templates/output-template.md — Deliverable shell for agent output
  • scripts/check-output.py — Lightweight deliverable validator
  • references/cold-calling-experts-index.md — Phone Intent + bucketing router
  • references/joey-gilkey-bucketing.md — Phone Intent + disposition list diagnostics
  • references/jordan-crawford-blueprint-gtm.md — PQS pain-based segments
  • icp-scoring: Define the ICP criteria this skill filters against
  • lead-finding: Find individual contacts at target companies
  • lead-enrichment: Enrich contacts after list is built
  • clay-automation: Full Clay workflow for automated list building
  • sales-navigator-prospecting: Morgan Ingram filter-specific Sales Nav workflow after list criteria are set
1---
2name: list-building
3description: >-
4 Build qualified B2B prospect lists using Clay, LinkedIn Sales Navigator, and
5 multi-source discovery. Use when the user wants to build a prospect list,
6 create a target account list, find companies matching an ICP, scrape lead
7 sources, or compile a list for outbound. Triggers on: "build a list", "prospect
8 list", "target accounts", "find companies", "scrape leads", "list building",
9 "who should we reach out to", or any request to compile prospect data.
10license: MIT
11compatibility: Claude Code, Codex, GitHub Copilot, Cursor, Gemini CLI, OpenCode, Goose, Hermes, Windsurf, Zed
12metadata:
13 version: "1.0.0"
14 author: LeadMagic
15 category: prospecting
16 tags: [list-building, prospecting, clay, leads, targeting]
17 related_skills: [icp-scoring, lead-finding, lead-enrichment, clay-automation, sales-navigator-prospecting]
18 frameworks:
19 - "Clay Waterfall Architecture"
20 - "Ziellab Lead Quality Framework"
21 - "Aaron Ross — Predictable Revenue"
22 - "Jordan Crawford — Pain-Qualified Segments (PQS)"
23 - "Joey Gilkey — Phone Intent & Disposition Science (list prioritization)"
24---
25 
26# List Building
27 
28## Overview
29 
30A qualified prospect list is the foundation of every outbound motion. Build
31it wrong and everything downstream fails — enrichment misses, verification
32flags half the list, and reps waste time on accounts that were never going
33to buy.
34 
35This skill covers building clean, qualified lists from multiple sources,
36applying ICP filters early (before expensive enrichment), and maintaining
37list hygiene. The core principle: qualify first, enrich deep later. Filtering
38out non-fits before running enrichment cuts costs by 30-40%.
39 
40## When to Use
41 
42- "Build a list of VP Sales at Series B SaaS companies"
43- "Find target accounts in the fintech space"
44- "Create a prospect list from this conference attendee file"
45- "Scrape local businesses from Google Maps for SMB outreach"
46- "Build a target account list for our ABM campaign"
47 
48## Authoritative Foundations
49 
50List building follows the Ziellab framework: filter first, enrich second.
51For **phone-led** outbound, add Joey Gilkey **Phone Intent** scoring after ICP
52filter — prioritize P1 contacts before expensive rep time. Pair pain-based
53segments (Jordan Crawford PQS) with disposition-driven list iteration
54(Gilkey Disposition Science). → `references/joey-gilkey-bucketing.md`
55 
56Clay's native table architecture supports this naturally — company enrichment
57runs first, ICP filters gate the contact enrichment, and only qualified
58accounts proceed to email and phone waterfalls.
59 
60## Prerequisites
61 
62- ICP defined (use icp-scoring first if not yet defined)
63- Source data: can start from a domain list, LinkedIn Sales Nav export,
64 conference attendee list, Google Maps scrape, or industry directory
65- Access to Clay or equivalent enrichment platform
66 
67## Step-by-Step Process
68 
69### Phase 1: Source Selection
70 
71Choose sources based on the target segment:
72 
73| Source | Best For | Data Quality |
74|---|---|---|
75| LinkedIn Sales Nav | B2B, any industry | High — verified profiles |
76| Apollo Search | US B2B, all sizes | High — 270M+ contacts |
77| Claygent web search | Founders, execs, niche | Medium — web-sourced |
78| Google Maps scrape | Local SMB | Medium — needs enrichment |
79| Conference speaker lists | Industry leaders | Very high — curated |
80| Crunchbase | Funded startups | High — funding-verified |
81| GitHub | Dev tools, tech | High — public activity |
82| Job boards (Lever, Greenhouse) | Growing companies | High — active hiring signal |
83 
84### Phase 2: Company-Level Enrichment
85 
86Before finding contacts, enrich company data:
87 
881. Import domains into Clay
892. Run company enrichment (Clay native or Clearbit)
903. Apply ICP filters: company size, industry, geography, funding stage
914. Only companies passing ICP filters proceed to contact finding
92 
93This gate typically removes 40-60% of the initial list — those credits
94are saved on contact enrichment.
95 
96### Phase 3: Contact Discovery
97 
98For qualified companies, find relevant contacts:
99 
1001. Define target titles and seniority
1012. Run people search (Apollo, Clay People, or LeadMagic People Search)
1023. Filter by title match and seniority
1034. Target 2-5 contacts per account for multi-threading
104 
105### Phase 4: List Quality Scorecard
106 
107Grade every list across 8 dimensions before uploading to a sequencer:
108 
109| Dimension | Pass Criteria |
110|---|---|
111| Domain validity | All domains resolve |
112| ICP fit | 80%+ match defined ICP |
113| Title relevance | 70%+ match target titles |
114| Email coverage | 85%+ have verified email |
115| Email verification | 98%+ verified valid |
116| Duplicate rate | Under 3% |
117| Geographic fit | 90%+ in target regions |
118| Company size fit | 80%+ in target range |
119 
120Lists scoring below 70% across dimensions should be reworked before sending.
121 
122## Output Format
123 
124Deliver a CSV with:
125- Company domain, company name, industry, employee count
126- Contact name, title, email, email verification status
127- LinkedIn URL, source attribution
128- ICP score and tier
129 
130## Quality Check
131 
132- [ ] ICP filters applied before contact enrichment
133- [ ] All emails verified (verification status column populated)
134- [ ] Duplicates removed (match on email + company)
135- [ ] List quality scorecard completed
136- [ ] Companies source-attributed
137- [ ] Separate company and person tables maintained (not merged)
138 
139## Common Pitfalls
140 
1411. **Enriching before filtering.** Running $0.15-0.40/contact enrichment on
142 records that fail ICP wastes 30-40% of budget. Filter first always.
143 
1442. **One giant table.** Combining company and person data in a single table
145 creates duplication and makes re-enrichment impossible. Separate tables
146 with domain as the join key.
147 
1483. **No list quality baseline.** Sending to an unscored list means you can't
149 diagnose why reply rates are low. Score every list before launch.
150 
1514. **Stale data acceptance.** A list built 6 months ago has 12-18% decay.
152 Re-verify and re-enrich before launching any campaign on old data.
153 
1545. **Single-source dependency.** One source never covers your full TAM.
155 Cross-reference at least two sources and reconcile differences.
156 
157## Execution Artifacts
158 
159- `references/framework-notes.md` — Named frameworks and reference tables
160- `templates/output-template.md` — Deliverable shell for agent output
161- `scripts/check-output.py` — Lightweight deliverable validator
162- `references/cold-calling-experts-index.md` — Phone Intent + bucketing router
163- `references/joey-gilkey-bucketing.md` — Phone Intent + disposition list diagnostics
164- `references/jordan-crawford-blueprint-gtm.md` — PQS pain-based segments
165 
166## Related Skills
167 
168- **icp-scoring**: Define the ICP criteria this skill filters against
169- **lead-finding**: Find individual contacts at target companies
170- **lead-enrichment**: Enrich contacts after list is built
171- **clay-automation**: Full Clay workflow for automated list building
172- **sales-navigator-prospecting**: Morgan Ingram filter-specific Sales Nav workflow after list criteria are set
173 
View all files on GitHub →

Details

License
MIT
Stars on the repo
★ 62
Checked
Source
LeadMagic/gtm-skills ↗
Creator
LeadMagic · 129 listings
View creator

Similar skills

See all →
SkillAI Sales Team Orchestratorzubair-trabzada/ai-sales-team-claude · by zubair-trabzadaYou are a comprehensive AI sales intelligence and outreach system for Claude Code. You help founders, sales teams, agency owners, and…★ 1.4k GitHub starsSkillCold Email Automationgrowthenginenowoslawski/coldoutboundskills · by growthenginenowoslawskiAutonomous cold email campaign launcher. Takes one target company domain, scrapes their website, generates an ICP with Claude, pulls matching leads via Prospeo, enriches emails + company descriptions, personalizes each lead with parallel Claude Code Task sub-agents (A/B/C variants), and uploads as a live Smartlead campaign. Uses local JSON files for state (no database required). Use for automated daily campaign launches after you have an initial `client-profile.yaml` from /icp-onboarding. Triggers on "auto-research", "launch an automated campaign", "daily campaign", "run the research loop".★ 736 GitHub starsSkillABM Campaign Playbookexplorium-ai/gtm-skills · by explorium-aiABM campaign skill for Claude Code: run a full Account-Based Marketing campaign end-to-end — from ICP definition to live LinkedIn Ads. Builds targeted account lists with Vibe Prospecting, enriches and scores companies with real-time B2B data, generates personalized ad creatives with Claude Code and Figma, pushes matched audiences to LinkedIn Ads, and monitors campaigns daily at scale. The complete GTM skill for AI-driven account-based marketing in Claude Code, Codex, Hermes-Agent, and OpenClaw. No agency needed.★ 197 GitHub starsSkillDecision-Maker Shortlistexplorium-ai/gtm-skills · by explorium-aiContact data skill for Claude Code and Codex: build a ranked shortlist of decision-makers and contacts at a target company for outbound prospecting, deal acceleration, or renewal/expansion plays. Returns verified contact data including email, phone, LinkedIn profile, title, seniority, and department. Provide a company name or domain plus optional seniority focus or use case. Use for contact data enrichment, LinkedIn profile lookup, and building outbound contact lists. Works in Claude Code, Codex, Hermes-Agent, and OpenClaw.★ 197 GitHub starsSkillAccount Fit Scorerexplorium-ai/gtm-skills · by explorium-aiLead scoring and buying signals skill for Claude Code and Codex: rank a list of accounts by ICP fit, buying intent, real-time trigger events, and workforce momentum. Returns composite score (0-100), tier (A/B/C), and a 'why now' signal per account. Use for account-based selling, ABM list prioritization, territory planning, signal-based selling, and buyer-intent ranking. Triggers on 'score these accounts', 'rank by ICP fit and intent', 'prioritize this account list', 'which accounts have the strongest buying signals', 'ICP scoring', 'account prioritization'. Works in Claude Code, Codex, Hermes-Agent, OpenClaw, and Claude Cowork.★ 197 GitHub starsSkillApollo Hyper Orchestratorhyperfx-ai/marketing-skills · by hyperfx-aiRun end-to-end B2B cold-email outreach through the Hyper MCP — enrich prospects with Apollo, scrape per-prospect signals from company sites and LinkedIn, draft personalized emails using proven hook frameworks, send via Gmail with safe defaults, and route replies into labeled folders. Use when the user wants to write cold emails, run an outbound sequence, prospect a list, build a follow-up cadence, "reach out to leads," or asks why nobody is replying to their cold emails.★ 90 GitHub stars

More from LeadMagic

SkillFirst-Party Analytics SetupLeadMagic/gtm-skills · by LeadMagicSet up first-party tracking and analytics — website pixels, conversion tracking, UTM architecture, cookie consent, server-side tagging vs client-side, 1P vs 3P data strategy, and identity resolution. Use when setting up tracking, implementing pixels, building attribution, or preparing for privacy-first measurement. Triggers on: "pixel", "tracking", "conversion tracking", "first-party data", server-side tagging", "UTM", "cookie consent", "1P vs 3P", "identity resolution", or any tracking implementation request.★ 62 GitHub starsSkillStrategic Account MarketingLeadMagic/gtm-skills · by LeadMagicRuns strategic 1-to-1 ABM for 5-15 high-value accounts: account plans, custom microsites, executive engagement, direct mail, and board-level connections. Use when a named enterprise account justifies bespoke content and executive time, or when the user needs a strategic account plan. Triggers on: "1-to-1 ABM", "strategic ABM", "custom ABM", "key account marketing", "named account".★ 62 GitHub starsSkillCluster Account MarketingLeadMagic/gtm-skills · by LeadMagicRuns ABM at scale (1-to-few) for 15-50 clustered accounts: industry or persona clusters, semi-custom campaigns, and cluster-level content. Use when named-account ABM needs to reach more accounts without bespoke work per account. Triggers on: "1-to-few ABM", "ABM scale", "cluster ABM", "industry ABM".★ 62 GitHub starsSkillProgrammatic Account TargetingLeadMagic/gtm-skills · by LeadMagicRuns programmatic 1-to-many ABM for 50-200+ accounts: automated personalization, scaled outbound, intent-based targeting, and lookalike expansion. Use when ABM coverage must grow without adding headcount or when the user wants automated account-based outreach. Triggers on: "1-to-many ABM", programmatic ABM", "scaled ABM", "automated ABM".★ 62 GitHub starsSkillAccount Strategy DesignerLeadMagic/gtm-skills · by LeadMagicDesigns an account-based marketing program: tier selection, account scoring, channel orchestration, BDR alignment (account-based sales development), and a measurement framework. Use when the user is launching or redesigning ABM, choosing between 1-to-1, 1-to-few, and 1-to-many, or building a target account program. Triggers on: "ABM strategy", "account based marketing", "ABM playbook", "design ABM", "target accounts", "ABSD", "account based sales development", "Lars Nilsson".★ 62 GitHub starsSkillTarget Account SelectorLeadMagic/gtm-skills · by LeadMagicBuilds and tiers a target account list: fit and intent scoring models, tier assignment, and TAM segmentation. Use when the user needs to decide which accounts to target, score or tier an account list, or prioritize a TAM for ABM or outbound. Triggers on: "account selection", "target account list", "tier accounts", "prioritize accounts", "TAM segmentation".★ 62 GitHub stars