← All work
Production2026, v2 in SeptemberPartner recruitment pipeline

B2B Lead Scoring Agent

Turns a company name in Notion into an enriched, scored partner candidate with a ready-to-read brief.

216prospects enriched and scored in production
1–100fit score with persona and written brief
3independent locks protecting live deals

The need

Partner prospecting was done by hand by a co-founder, searching LinkedIn profile by profile. About 20 hours a week produced only 10–15 potentially qualified prospects, with generic outreach messages and no structured tracking. It was a direct bottleneck on the growth of the partner network.

What I owned

The design and the build of the pipeline, its migration to production, and its documentation.

The solution

The sales team never leaves Notion, which is the database, the interface and the CRM at once. A director adds a card, asks for a run in a chat, and each prospect comes back with verified company data, a persona, a score from 1 to 100 and a qualification report on its own page.

Trigger
Card added in NotionRequest in a chat
Phase 1: enrich (deterministic)
PappersSIRENE as free fallbackGoogle PlacesSIREN matcher
Phase 2: qualify (AI judgment)
Gap-fill from web and LinkedInParallel sub-agentsPersona and score
Written back to Notion
11 enrichment fieldsQualification reportSummary card
A resumable pipeline. Two fields on each Notion page decide what is eligible, so running it twice never repeats work.

Key modules

Enrichment

Fully deterministic, with no model calls. A cascade of sources gives legal identity, location, financials and reputation, and degrades gracefully when the paid source is down.

SIREN matcher

Refuses to guess. Attaching the wrong company with the same name would stick, because human-entered values are never overwritten, so an empty flagged field is better than a plausible wrong one.

Qualification

Sub-agents work in batches of 5 with 8 running in parallel, fill the missing data, assign one of three personas, and write a score and a report.

Protected stages

Cards from "Contacted" onward are live sales work and are never touched. The rule is enforced in the query filter, in a shared list, and in a check that raises an error before every write.

How it was built

The move to production was sequenced on purpose: 14 local tasks first, then changes to the real database one by one, each validated before the next. A complete snapshot of all 374 pages, including page bodies, was taken before the first change, with targeted backups before every destructive step.

Version 2 simplified the system deliberately: no scheduled task, no test database, one schema and one code path, and a first phase with no AI at all.

Results

  • 216 prospects enriched and qualified in production, on the real database.
  • A rough prospect name becomes a full candidate profile with no manual research.
  • The value targets set for the wider project are 150–200 leads a month against 10–15 today, about 0 hours of weekly prospecting against 20, and a direct tool cost of about 0.59 per qualified lead. They depend on automated lead discovery, the next phase of the project.