log in sign up now
Build an Outbound Prospect List back to library
~ / library / Prospecting / build-an-outbound-prospect-list

Build an Outbound Prospect List

Define an ICP, search for matching prospects, enrich with contact data, and export a ready-to-use outbound list - end to end. Every email returned is graded A-F for deliverability risk, and you pick which grades to keep.
  • Build an outbound list of RevOps leaders at US SaaS companies with 50-500 employees
  • Define an ICP of marketing directors at fintech startups and build a prospect list with emails
  • Create a targeted prospect list matching my ICP and enrich everyone with contact data

What this skill does

Full end-to-end ICP-to-contact-list workflow. Define your ICP, search for people by company and people attributes (industry, domain, seniority, department, country), enrich the gaps with business email and mobile, and get a clean exportable list ready for outreach.

Before searching, the skill gates on input quality - if nothing scopes the search, it asks for more detail rather than burning credits on a vague search.

Chain

company + people ICP criteria
  to search_people  (find matching people)
  to linkedin_to_business_email     (per-URL parallel calls - business emails)
  to linkedin_to_mobile_phone              (batch array - mobile, optional)

Inputs - at least one filter

Field Param Example
Free-text (name / role / company) query "Jane Smith", "VP Sales", "Stripe"
Company name company "Stripe", "HubSpot"
Exact domain company_domain "stripe.com"
Industry industry "Information Technology", "Finance and Banking"
Seniority seniority "Director", "VP", "C Suite"
Department / functional area department or functional_area "Sales", "Marketing", "Engineering"
Country country "United States"
Target count - "50 contacts", "100 records"

How it works

  1. Confirms at least one filter is present - prompts if under-specified
  2. Runs a free credit check and estimates total cost
  3. Probe search on 1 result to verify quality before scaling
  4. Paginates to target count (25 results per call)
  5. Deduplicates, then enriches - email as per-URL parallel calls, phone as one batch array call
  6. Outputs exportable table

Output

Name Title Company Country LinkedIn Business Email Risk Mobile
Prospects found:   X
Business emails:   X/N (XX%)
Mobile numbers:    X/N (XX%)
Credits used:      ~XXX

Email risk scores:
  A: X   B: X   C: X   D: X   F: X
  kept (accepted grades):  X
  filtered (excluded):     X

Search filters

search_people filters on query, company, company_domain, country, state, city, seniority, department or functional_area, industry, linkedin_industry, naics_code, employee_range, and revenue_range.

  • Filters are free precision - execution cost comes from the free-text query, so a filters-only search runs ~40x cheaper and lands more precisely. A bare query is never the right shape; at minimum it gets country attached (~99% fill rate).
  • Size and revenue apply to the person's current employer - "VPs at 51-200 employee software companies" is one call, not a company search followed by a people search.
  • Three industry vocabularies - broad industry buckets, LinkedIn's ~150 niche labels, or a NAICS code at any depth. Shortening the code widens the net.
  • Sparse filters are the usual cause of a thin result set - seniority/industry/department are ~60% filled and naics_code/linkedin_industry ~50%, and every filter is exact-match, silently dropping records where the field is empty.
  • Sizing is free - count_only: true returns a match count without fetching data or charging tokens, and every response carries results.total to read before paginating.

Company-side filters

search_companies filters on query (company name only), domain, industry, linkedin_industry, naics_code, employee_range, revenue_range, country, and state.

  • domain beats free text every time - exact match, and full URLs are normalised automatically, so https://www.acme.com/about needs no cleanup first.
  • Filters are free precision - a filters-only search runs ~40x cheaper than one carrying free text, and most firmographic work needs no query at all.
  • Industry vocabularies overlap - the same company can sit under "Information Technology" or "Computer Software", so a thin result is often a neighbouring-value problem rather than a coverage one.
  • Company location is derived from where the team is based, and large multinationals resolve to a single one of their offices - pair location with another filter on enterprise or international targeting.
  • Range values are exact and skewed - "1-10" dominates employee counts, "$500k - $1M" dominates revenue, and the legacy "$1 - $1M" band holds far fewer records than its numeric equivalent.

Tips

  • Industry + seniority + department is a strong role-based targeting combination; use company_domain (not domain) to scope search_people to one company
  • If filters produce fewer results than your target, the skill suggests broadening one constraint at a time
  • Every returned email carries an A-F deliverability risk score; you're asked up front which grades to keep, and out-of-range grades are shown and flagged rather than silently dropped
01 Download the .moltsets skill file below
02 Open Claude and go to Settings to Skills
03 Click Add skill and select the downloaded file
04 Open a new chat in Claude
05 Prompt Claude using one of the example prompts or use your own
// difficultyIntermediate
// connectionCSV, Google Sheets, Excel
// got a skill of your own? Submit it to the library