Great question. I split this into two distinct jobs rather than trusting a single LLM call to both identify intent and validate the contact.
Job one: use Claude purely for summarising public intent signals. Feed it scraped trigger events - funding announcements, leadership changes, SOC 2 certifications, job postings with specific titles. Claude is solid at distilling noisy data into a signal score. But it's terrible at deterministic truth.
Job two: identity resolution stays manual or semi-automated with an enrichment step. That's the brittle part. Before anyone hits an outbound list, I run three checks:
- Company fits ICP - verified via Crunchbase or LinkedIn Sales Navigator.
- Role matches target persona - cross-referenced with title patterns and seniority.
- Recent trigger is real - confirmed from a primary source, not a hallucinated summary.
- Source credibility - e.g., GSC data > scraped directory.
Skipping that step means you'll burn CAC on junk leads that look hot in Claude's output but fail on LTV. Keep the LLM as a signal aggregator, not a decision maker.