Sequence cleanup: tag bounces and 'not me' replies, then find replacement contacts

Instantly + Prospeo

IntermediateSDRs

Who it's for

SDRs who want bounced leads and 'wrong person' replies cleared out of a campaign, with a replacement contact found at each company instead of losing the account. Instantly can be swapped for lemlist or Smartlead, and Prospeo for Lusha or ZoomInfo.

What you get

Cleanup table and replacement contacts, waiting for approval. Sample output: every company and person in it is fictional.

Campaign: Q4 Ops Leaders (Instantly)
312 leads checked. 14 need cleanup.

Bounced (6), proposed label: bounced
- [email protected], Quarry Lane Analytics (fictional)
- ...5 more

Wrong person (8), proposed label: not-me
- Dana Okafor, Larkspur Freightworks (fictional): "Dana left in August. Try our new ops lead."
- Priya Raman, Mossgate Labs (fictional): "Wrong person, I'm in finance."
- ...6 more

Proposed changes (none made yet):
- Add the label to all 14 and move them out of the campaign to the list 'Cleanup Oct'.

Replacement contacts from Prospeo (searched only, not enriched):
- Larkspur Freightworks: Alex Rivera, Head of Operations. Match: same title the reply pointed to.
- Mossgate Labs: Sam Okoro, Director of Operations. Match: ops title, same domain.
- 4 companies: no clear match. Skipped.

Enriching 2 emails will spend Prospeo credits. Reply 'enrich' to get the emails, then 'add' to put them in the paused campaign 'Q4 Ops Leaders: replacements'.

Time and cost

Estimate About 15–20 minutes per campaign, most of it reviewing replacements.

Assumptions: One campaign of about 300 leads, with 10–15 bounces or 'wrong person' replies and 5–8 replacement searches.

Exact credit costs depend on your plan with each vendor. Check the tool pages before a large run.

MCP servers

Every server is confirmed in: ClaudeCursor

Set up in a chat app

Every server in this recipe is confirmed for Claude. Connect each one, then paste the prompts below into one conversation.

Developer setup

Auth setup and mcp.json for Claude Code and Cursor
  • Instantly: Paste an API key from the vendor's settings into the config (header or URL). There's no browser login, so it works well headless.
  • Prospeo: Sign in with OAuth in your client (run /mcp in Claude Code). Do it once interactively, and the client stores and refreshes the token.

Put this in .mcp.json (Claude Code, project root) or ~/.cursor/mcp.json (Cursor). Swap the example keys for your own, and don't commit real ones. Remove the // comment lines if your client requires strict JSON.

{
  "mcpServers": {
    "instantly": {
      "url": "https://mcp.instantly.ai/mcp",
      "headers": { "Authorization": "YOUR_INSTANTLY_API_KEY" }
    },
    "prospeo": {
      "url": "https://mcp.prospeo.io"
    }
  }
}

Step-by-step prompts

  1. In my Instantly campaign {campaign}, find leads that bounced and leads whose replies say they're the wrong person, have left the company, or point to someone else. Show me a table with the lead, company, reason and the reply line. Skip auto-replies. Don't change anything.
  2. After I approve the table, add the label {label} to those leads and move them out of the campaign to the list {cleanup list}. Show me what you'll change first.
  3. For each company on the list, search Prospeo for one replacement at the same domain: the person the reply named, or the closest match to {target title}. Show me name, title and why they match. Don't enrich yet.
  4. Only after I approve, enrich the people I pick in Prospeo for email only. Then show me the payload to add them to the paused Instantly campaign {replacement campaign}, and add them only after I approve it.

Run it on a schedule (optional)

Where this goes wrong

Gotchas

Download

Get the prompts, guardrails and expected output as one Markdown file. Paste it into a Claude Project or ChatGPT project's instructions, or save it as CLAUDE.md for Claude Code.

Download sequence-cleanup.md

Vendor sites: Instantly. If we join an affiliate program, these links will be labeled as affiliate links.