The problem this solves
A company list is half a prospecting job. The other half is the person: the VP or Director of Marketing who owns the budget your product touches, with an address that will actually land. Teams usually solve this in two disconnected tools - a contact database for the name, a verifier for the address - and then hand-build the import file. Titles are inconsistent across companies, one in five addresses is wrong or stale, and the import creates duplicate contacts on top of records that already exist.
Verification is the step that gets skipped when the deadline is close, and it is the step that protects the sending domain. A list with a 12 percent bounce rate damages deliverability for every sequence that follows it, including the ones that were built carefully. Putting verification inside the same mission as the people search means every contact that reaches HubSpot has already been checked, and the ones that failed are reported instead of silently included.
How the mission runs
- Read list <name> and define the target title. The Prospecting Agent loads list <name> and interprets 'VP or Director of Marketing' as a seniority-and-department search rather than an exact string, so 'Head of Marketing', 'Marketing Director' and 'VP Growth Marketing' at smaller companies all qualify. Where a company has several matches, the most senior person in the marketing function is chosen and the runner-up is noted.
- Find the person and their profile. People search returns the name, current title, LinkedIn URL and location for the matched person at each company. Contacts whose current employer no longer matches the company on the list are dropped, which removes the most common source of bounced outreach: people who moved six months ago.
- Find and verify the work email. The email finder produces a work address for each contact and verification runs on every one. Deliverable addresses are kept; catch-all domains and risky results are flagged with their status rather than dropped, so you decide whether to include them in a sequence with tighter bounce thresholds.
- Stage the HubSpot static list. The agent matches each contact against HubSpot by email and domain, updates existing contacts instead of creating twins, and creates a static list named <name> - marketing leaders. The batch is presented for review with counts of creates, updates and skips before anything is written.
The prompt
This is the exact objective the agent receives. Swap the obvious placeholders for your own domain, segment or channel and run it as-is from the console, Slack, or the API.
What comes back
A HubSpot static list called <name> - marketing leaders containing one marketing leader per company on list <name>, each with title, LinkedIn URL, work email and a verification status property. A short report shows how many companies produced a contact, how many addresses verified as deliverable, how many were catch-all or risky, and which companies had no findable marketing leader.
Make it yours
- Change the function: CFO and VP Finance, Head of Sales, VP Engineering or Head of People all work with the same seniority logic.
- Ask for two contacts per company - the leader and their most senior direct report - to avoid single-threading the account.
- Send the output to Pipedrive, Attio or Zoho CRM instead, or to a Google Sheet when the list needs a human pass before it reaches the CRM.
Frequently asked questions
What happens to companies where no marketing leader can be found?
They are listed separately in the report with the closest match the agent could find, such as a founder or a general manager. You can accept those substitutes with one instruction or leave the companies for a later pass.
Will catch-all addresses be pushed to HubSpot?
They are included with a catch-all status so you can filter them in HubSpot. If you prefer a strict list, say 'deliverable only' in the prompt and the agent leaves the rest in the report.
Does this overwrite fields on contacts that already exist in HubSpot?
Existing contacts are updated only where the field is empty or where the new title is more recent, and every proposed update appears in the review batch before it is applied.