log in sign up now
Attio Campaign Segment Builder back to library
~ / library / Prospecting / attio-campaign-segment-builder

Attio Campaign Segment Builder

Turn a targeting brief like "VP+ Fintech, 200-1000 employees" into an Attio list, matching existing records first and topping up with net-new people from MoltSets.
  • Build a campaign list of VP+ Fintech contacts at 200-1000 employee companies, top up from MoltSets if needed
  • I need 500 Director+ Marketing contacts at mid-market SaaS companies for a campaign

What this skill does

Builds a campaign-ready list against a plain-English brief. It translates the brief into title, seniority, industry, and company size filters, matches against your existing Attio person records first, and only pulls net-new people from MoltSets to make up the shortfall to your target list size. Existing records are never duplicated, and the output is a single Attio list sized to the brief.

Chain

Targeting brief (title / seniority / industry / size / target count)
  to attio/query-records                (existing people matching the brief)
  to compare match count against target list size
  to MoltSets:
      search_people                     (title/seniority/department + industry + employee_range, if shortfall)
  to dedupe candidates against existing Attio records
  to linkedin_to_best_email             (fill email gaps on net-new candidates)
  to attio/create-record                (create net-new person records)
  to attio/add-list-entry               (add existing + net-new records to the target list)

Inputs

  • Targeting brief - title/seniority, department, industry, employee range, and any other firmographic filter
  • Target list size - how many total records the campaign needs
  • Existing-record priority - whether to use existing Attio records first, always, or only above a certain match quality
  • List name - the Attio list the result should be saved to

How it works

  1. Parses the brief into structured filters: title or seniority, department, industry, and employee range
  2. Searches existing Attio person records against those filters first
  3. If the existing match count falls short of the target list size, runs search_people in MoltSets with the same filters to source net-new candidates
  4. Dedupes the candidates against existing Attio records by email and domain plus name
  5. Runs linkedin_to_best_email on any net-new candidate missing an email
  6. Creates the net-new person records in Attio and adds both existing and net-new records to the named list

Output

Name Company Title Seniority Industry Source Existing/Net-New Added to List
Target list size:            X
Existing matches used:       X
Net-new candidates sourced:  X
Net-new added to Attio:      X
Final list size:             X
MoltSets tokens used:        X

Tips

  • Requires the Attio MCP (mcp.attio.com) and the MoltSets MCP connected in the same client
  • Prioritising existing Attio records first keeps token spend down and avoids working an account you already have a relationship with
  • If the brief is vague on seniority, run a small sample first and confirm the mapping before sourcing the full shortfall
  • A per-company cap keeps a single large account from dominating the list at the expense of coverage
  • Attio lists can hold a mix of standard and custom object records, so this works for non-person target lists too if your brief calls for it
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
// connectionAttio, Claude Chat
// got a skill of your own? Submit it to the library