* feat: add prospecting skill + truelist integration New skill: skills/prospecting/ - SKILL.md (251 lines, well under 500 limit): branch picker for SaaS / B2B / Local SMB, shared 5-phase framework (ICP -> discovery -> qualify -> score -> output), compliance guardrails, tool selection quick-picks, output formats - references/saas-prospecting.md: tech stack signals, funding/hiring triggers, SaaS-specific sources and qualification - references/b2b-prospecting.md: industry/firmographic signals, trigger events, decision-maker mapping, B2B-specific sources - references/local-prospecting.md: 4-tier website status classification, browser-assisted research workflow (generalized from the local-client- prospector pattern), proximity scoring - references/data-sources.md: deep dives on Apollo, Clay, ZoomInfo, Clearbit, Hunter, Snov, Truelist, LinkedIn Sales Nav, BuiltWith, Crunchbase, RB2B, with sequencing recommendations across the three branches - references/compliance.md: CAN-SPAM, GDPR, CASL, platform ToS (LinkedIn, Google Maps, Apollo/ZI/Clearbit), anti-patterns, audit checklist - evals/evals.json: 6 evals (2 SaaS, 2 B2B, 1 Local SMB, 1 deliverability) New integration: - tools/integrations/truelist.md: email deliverability validation (Deliverable / Risky / Undeliverable / Unknown classification) Registry + marketplace wiring: - tools/REGISTRY.md: truelist row + new Email Verification category section - .claude-plugin/marketplace.json: bumped to 2.1.0, prospecting added to plugin description - VERSIONS.md: prospecting 1.0.0 + 2.1.0 changelog entry - README.md: skill table re-synced, prospecting added to ASCII flow under Sales & GTM column All 41 skills pass validation. sync-skills.js is idempotent. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * feat(prospecting): add GitHub stargazers/forks/watchers as discovery channel Net-new in this commit: - tools/clis/github-prospects.js: zero-dep Node CLI with commands stargazers / forks / watchers / user / rate-limit. Pagination via Link header, optional --enrich for full profile data, --with-email / --with-company / --with-blog filters, --format csv|json output, --dry-run preview. Uses GITHUB_TOKEN for 5000/hr rate limit (vs 60/hr unauthenticated). - tools/integrations/github.md: integration guide covering auth, rate limits, endpoints, workflows for SaaS prospecting, compliance notes (public API, not scraping), CLI reference. Skill updates: - skills/prospecting/SKILL.md: added GitHub to the tool selection quick picks and to the tool integrations table. - skills/prospecting/references/saas-prospecting.md: added GitHub to Tier 3 buying signals plus a dedicated "GitHub prospecting pattern (when audience is developers)" subsection with end-to-end workflow. - skills/prospecting/references/data-sources.md: added GitHub deep-dive section between RB2B and Free fallbacks. Registry: - tools/REGISTRY.md: github row in Tool Index, new Developer Intent / GitHub category section. All 41 skills still pass validation. sync-skills.js still no-op. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * refactor(prospecting): apply review suggestions CLI hardening + optimization: - github-prospects.js: encodeURIComponent on username path interpolation (defense in depth; GitHub usernames are restricted enough that this is safe in practice, but good hygiene). - github-prospects.js: refactored enrichUsers to filter inline and support --target N early termination. Previously, --with-email on a 1000-star repo would enrich all 1000 users before filtering down to the ~50 that match. Now you can pass --target 25 to stop as soon as 25 matches are found, saving API quota on restrictive filters. - github.md: documented the new --target flag. Reverse cross-references (so prospecting is discoverable from sibling skills): - cold-email: added prospecting as the natural upstream skill - customer-research: added "Translating customer research into an ICP for outbound" hand-off to prospecting - competitor-profiling: distinguished from prospecting ("this skill does deep research on specific accounts; prospecting builds the initial list") All 41 skills still pass validation. sync-skills.js still no-op. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(truelist): align integration doc with actual OpenAPI spec Source of truth: Truelist-Labs/truelist-openapi (OpenAPI 3.1). The earlier integration doc had inferred (and wrong) endpoint paths, request shapes, and status enum values. Corrected against the published spec: Base URL: https://api.truelist.io Endpoints (real): - POST /api/v1/verify_inline?email=... (sync single, email is query param) - POST /api/v1/verify (async bulk, body: {emails: [...]}) - GET /me (account info) Real email_state enum: - ok, email_invalid, risky, unknown, accept_all (not the inferred "Deliverable / Risky / Undeliverable / Unknown") Real email_sub_state enum: - email_ok, is_disposable, is_role, unknown_error, failed_smtp_check Also corrected: - Truelist has an official MCP server (Truelist-Labs/truelist-mcp) — was marked as MCP unavailable - Truelist has 7 official SDKs (Node, Python, Ruby, PHP, Go, Java, .NET) + framework integrations (Django, Laravel, Next.js, Rails, React, Svelte, Vue, WordPress) — was marked as SDK unavailable - Native integrations with Mailchimp, Klaviyo, HubSpot, Zapier, Make, n8n, Clay, Salesforce, ActiveCampaign, Brevo, ConvertKit, Drip, BigCommerce, Go High Level — was unlisted - Rate limits: 10 req/s per endpoint (was unspecified) Files updated: - tools/integrations/truelist.md: full rewrite against spec - tools/REGISTRY.md: MCP and SDK columns now show ✓ for truelist; classifier note in the Email Verification section reflects real enum values - skills/prospecting/evals/evals.json: eval #6 expected_output and assertions use real email_state values and mention the MCP server - skills/prospecting/references/data-sources.md: Truelist deep-dive uses real endpoint paths, real enum values, and lists the MCP/SDK ecosystem All 41 skills still pass validation. sync-skills.js still no-op. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * feat(prospecting): add Firecrawl + Browserbase for single-target site research Both tools are programmatic scrapers, but their use in prospecting is strictly bounded: extract content from individual public business sites (the prospect's own website URL), never from the platforms hosting them (Google Maps, LinkedIn, Yelp, Apollo, etc.). This matches the line drawn by the original local-client-prospector reference skill and our own compliance section. New integration docs: - tools/integrations/firecrawl.md: REST + MCP + SDKs (Node/Python/Go/Rust); scrape / map / crawl / extract / search endpoints; explicit "when NOT to use" section listing the prohibited platforms. - tools/integrations/browserbase.md: real Chromium via Playwright/Puppeteer or Stagehand (AI-friendly natural-language extraction); session recordings; useful when rendering or interaction is required. Prospecting skill updates: - SKILL.md: added Firecrawl + Browserbase to tool selection quick picks and tool integrations table. - references/data-sources.md: new "Firecrawl / Browserbase (single-target site research)" section between RB2B and Free fallbacks. Includes the compliance line inline so the framing isn't lost. - references/local-prospecting.md: optional "programmatic verification" paragraph in the browser research workflow — once you have a candidate's URL from manual Maps discovery, you can hit it programmatically. - references/compliance.md: anti-pattern #1 now explicitly clarifies that Firecrawl/Browserbase are fine for the prospect's own website but not for the platforms hosting prospects. Registry: - tools/REGISTRY.md: firecrawl + browserbase rows in Tool Index, new "Site Scraping (single-target only)" category section with the compliance framing in the agent recommendation. All 41 skills still pass validation. sync-skills.js still no-op. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
11 KiB
Prospecting Data Sources
Tool selection guide for prospecting across all three branches.
Tool selection by goal
| Goal | Primary tools | Notes |
|---|---|---|
| Build initial firmographic list (B2B / SaaS) | Apollo, ZoomInfo, Clay | Apollo for breadth, ZoomInfo for enterprise + intent, Clay for custom workflows |
| Decision-maker mapping | LinkedIn Sales Navigator (manual), Apollo, ZoomInfo | Sales Nav is the gold standard. Never bulk scrape it. |
| Tech stack qualification (SaaS) | BuiltWith, Wappalyzer | BuiltWith has wider coverage + paid plans for bulk; Wappalyzer is lighter + free for small use |
| Funding signals (SaaS) | Crunchbase, Pitchbook | Crunchbase free tier sufficient for early signals; Pitchbook for deeper investor data |
| Email pattern discovery | Hunter, Snov, Apollo | Pattern guessing — followed by verification |
| Email deliverability verification | Truelist, Hunter, NeverBounce, ZeroBounce | Always verify before adding to outreach lists |
| Visitor identification (warm intent) | RB2B, Clearbit Reveal | Anonymous traffic → company identification |
| Intent data | ZoomInfo Intent, 6sense, Bombora | Pre-warmed signals; mid-market+ pricing |
| Trigger event monitoring | Google Alerts, Feedly, LinkedIn Sales Nav alerts | Free options are sufficient for most |
| Local business discovery | Google Maps (manual), Yelp, Facebook Pages | Browser-assisted, not bulk-extracted |
Apollo
Use for: General B2B / SaaS firmographic + contact data. Best starting point if you don't already have a list.
Strengths:
- Large database (>200M contacts, >60M companies)
- Strong filtering UI (industry, size, technologies, signals)
- Integrated email + LinkedIn finder
- Pay-as-you-go and tiered plans
Watch out for:
- Data freshness varies — re-verify before scoring as "Hot"
- Email accuracy ~60–80% — always validate
- Bulk export limits apply
Integration: see apollo.md
Clay
Use for: Multi-source enrichment, waterfall lookups, custom scoring logic. When list quality matters more than list size.
Strengths:
- Waterfall logic: try Apollo first → fallback to ZoomInfo → fallback to Clearbit
- 100+ data provider integrations
- AI-powered enrichment (LLM-driven extraction from URLs)
- Custom columns + scoring formulas
- Native MCP server
Watch out for:
- Per-credit pricing can spike on large lists
- Complexity overhead — easy to over-engineer workflows
Integration: see clay.md
ZoomInfo
Use for: Enterprise B2B + intent data. Mid-market+ buyer profiles.
Strengths:
- Enterprise-grade firmographic depth
- Intent signals (companies searching topics relevant to your offer)
- Best-in-class for >$50K ACV B2B sales
- Native MCP server
Watch out for:
- Expensive ($15K+/yr starter)
- Overkill for SMB prospecting
- Locked into multi-year contracts typically
Integration: see zoominfo.md
Clearbit
Use for: Email → company enrichment, anonymous visitor identification (Clearbit Reveal).
Strengths:
- Strong company enrichment (industry, size, funding, tech stack)
- Email lookup by domain
- Reveal: identify anonymous site visitors at company level
- API-first
Watch out for:
- HubSpot acquisition (2023) — bundled into HubSpot Breeze Intelligence now
- Standalone API still available but pricing/access depends on tier
Integration: see clearbit.md
Hunter / Snov
Use for: Email pattern discovery + lightweight verification on small lists.
Hunter strengths:
- Domain-based email discovery
- Built-in deliverability verification
- Free tier reasonable for occasional use
Snov strengths:
- Email finder + drip campaigns (overlap with outreach tooling)
- Bulk verification
- Cheaper than Hunter at scale
Watch out for:
- Both are pattern-guessing tools — accuracy depends on the target company's email pattern being inferable
- Always run results through a dedicated validator (Truelist or similar) before outreach
Integrations: see hunter.md, snov.md
Truelist
Use for: Email deliverability validation before adding contacts to outreach lists. Critical safety step.
Strengths:
- Single-email sync verification (
/api/v1/verify_inline) + bulk async (/api/v1/verify) - Returns
email_state(ok / email_invalid / risky / unknown / accept_all) +email_sub_state(email_ok / is_disposable / is_role / unknown_error / failed_smtp_check) + did-you-mean typo suggestions - Catches catch-all domains, role accounts, spam traps, disposable providers
- Official MCP server for agent-driven workflows (Claude, Cursor, VS Code)
- Official SDKs in 7 languages + framework integrations (Django, Laravel, Next.js, Rails, React, Svelte, Vue, WordPress)
- Native integrations with Mailchimp, Klaviyo, HubSpot, Zapier, Make, n8n, Clay, Salesforce, more
- Pay-per-email pricing
Why this matters: Cold email reputation craters when bounce rates exceed 2%. Validating before sending is non-negotiable. Apollo/ZoomInfo/Hunter data is often 60–80% accurate — Truelist catches the rest.
Integration: see truelist.md
LinkedIn Sales Navigator
Use for: Manual decision-maker discovery. The gold standard for B2B / SaaS prospecting but only when used as a research tool.
Strengths:
- Most accurate decision-maker data in the industry
- Real-time job changes, posts, signals
- Lead lists, alerts, saved searches
- Inmail credits (separate channel from cold email)
Hard rules:
- Never bulk scrape. LinkedIn aggressively bans scrapers. Account ban risk is real and permanent.
- Use Sales Nav as a research interface — open profiles, read, take notes, capture key data manually.
- Apollo and other tools claim LinkedIn data via partnerships / public mirroring — verify the source legitimacy before assuming compliance.
Integration: no MCP or API access at consumer level. Manual research only.
BuiltWith / Wappalyzer
Use for: Tech stack qualification (SaaS branch).
BuiltWith:
- ~50K+ technologies tracked
- API + bulk lookups (paid)
- Historical data (when stack changed)
Wappalyzer:
- Free browser extension; paid API
- Lighter coverage than BuiltWith
- Faster for one-off lookups
Cross-reference both for high-confidence tech stack signals.
Crunchbase
Use for: Funding signals (SaaS branch).
Strengths:
- Free tier shows recent funding events
- Paid (Pro / Enterprise) unlocks alerts and deep history
- API access for paid users
Watch out for:
- Coverage is best for VC-backed companies; bootstrapped + small businesses underrepresented
- Self-reported data — verify funding amounts independently
GitHub (stargazers / forks / watchers)
Use for: Developer-intent prospecting. Especially powerful for dev-tool SaaS — stargazers of competitor or category-defining repos are in-market signal.
Strengths:
- Public API, no scraping concerns
- High signal quality (a starred repo = explicit interest)
- Forks are an even stronger signal (intent to modify, not just bookmark)
- Bundled
github-prospects.jsCLI handles pagination + enrichment + CSV output - Free with 5,000 req/hr authenticated rate limit
Watch out for:
- Only ~5–20% of users publish email — pair with Apollo/Clay/Hunter for enrichment
- Very-popular repos (100K+ stars) are mostly noise; smaller targeted repos (5K–25K) give better signal density
- Most prospects are individuals, not company contacts directly — need to figure out their company from
companyfield or LinkedIn
Integration: see github.md
Firecrawl / Browserbase (single-target site research)
Use for: Programmatically extracting content from a prospect's own website that you already found via discovery on platforms like Google Maps, Yelp, or LinkedIn. Not for scraping those platforms themselves.
Firecrawl
- Best for: "Just give me the page as markdown" — Local SMB website status checks, B2B company about/team page extraction, structured field extraction
- Strengths: Low overhead, returns clean LLM-ready markdown, handles most JS-rendered sites, has an MCP server
- API + MCP + SDKs: Node, Python, Go, Rust
Browserbase
- Best for: When you need real Chromium — JS-heavy pages, cookie consent dialogs, form submission to reach a contact page, session state
- Strengths: Full browser control via Playwright/Puppeteer; Stagehand provides AI-friendly natural-language extraction; session recordings for debugging
- API + MCP (Stagehand) + SDKs: Node, Python
Critical compliance line
Both tools can technically point at any URL. The hard rule:
- ✓ OK: extracting content from a single business's own website (
joescoffeeshop.com) that you found through manual discovery - ✗ NOT OK: pointing them at
google.com/maps, LinkedIn search results, Yelp listings, or any platform whose ToS prohibits bulk extraction
Discovery happens on platforms (manual browser-assisted research). Extraction happens on individual public business sites.
Integrations: see firecrawl.md, browserbase.md
RB2B / Clearbit Reveal
Use for: Identifying anonymous site visitors as warm intent signals.
Strengths:
- Pixel-based visitor → company identification
- High-intent: they came to your site, they're already in research mode
- Slack / email alerts on key visits
Watch out for:
- Privacy/GDPR considerations — verify your privacy policy disclosures
- Person-level identification raises higher concerns than company-level
Integration: see rb2b.md
Free / browser-only fallbacks
When the user has no paid tools, lean on:
- Google Search — exact business name + city + role searches
- LinkedIn (manual, no scraping) — company pages, employee lookups
- Crunchbase free tier — funding events
- Wappalyzer browser extension — tech stack at a glance
- Hunter.io free tier — 25 lookups/month
- Google Maps — for Local SMB discovery
- Business websites + About pages — primary source for any claim
- News sites + press releases — trigger event monitoring via Google Alerts
Slower than tooled-up workflows, but produces high-quality smaller lists if the user is willing to do the work.
Sequencing recommendations
A typical full-stack prospecting workflow:
- Define ICP from product-marketing context (no tools needed)
- Initial list from Apollo or ZoomInfo (firmographic filter)
- Enrich with Clay (waterfall: tech stack, funding, trigger events)
- Decision-maker mapping in LinkedIn Sales Nav (manual)
- Email pattern discovery with Hunter or Apollo's built-in
- Email validation with Truelist before final list
- Hand off to cold-email skill for outreach copy
Adapt this sequence based on which tools the user actually has.