Competitor ABM

From a competitor's customer list to a 30-day ABM playbook

πŸ“… June 3, 2026 ⏱ ~1 hour πŸ‘€ Mihailo Skendzic
β–Ά Watch the recording
Clay Bootcamp
Level up your GTM stack
Learn Claude Code in two weeks
Two weeks, hands-on, small group. Build pipelines like this yourself.

Guest Speaker

Meet Mihailo

Mihailo Skendzic
Mihailo Skendzic
GTM Engineer, Fast Forward

Mihailo started out as an SDR, frustrated by manual processes and cold calling at the organizations he worked at. After discovering the GTM engineering space, he joined Clay Bootcamp and hasn't stopped building since. He's a Clay Bootcamp alumnus and now the GTM Engineer at Fast Forward, where he uses Claude Code, custom tooling, and his own open-source MCP server to run research and outreach pipelines his teammates couldn't imagine doing by hand.

Connect on LinkedIn

What was covered

The full pipeline in four moves

πŸ”
Pain Point Mining
Scraped G2, Reddit, and Capterra to build a library of 8 competitor pain point clusters from real customer reviews.
🎯
Account Filtering
Pulled 50 competitor customers from BuiltWith's free tier, then filtered down to companies using the tool for customer success and onboarding.
πŸ“„
Evidence Collection
Crawled target company websites to find embedded competitor videos, then generated screenshot PDFs as proof, URL by URL.
πŸ—ΊοΈ
ABM Playbook
Mapped buying committees via LinkedIn and generated a 30-day multi-thread outreach sequence with personalized copy per decision maker.

The tool at the centre

Potter MCP

21 tools Β· Open source

Potter is Mihailo's own open-source MCP server, built to replicate some of what Clay Agents do inside Claude Code. He spent 7 to 8 days building it from scratch after Brandon Guerrero suggested he try. It connects to Apify, FireCrawl, and BrowserBase to power LinkedIn research, web scraping, browser automation, and screenshot capture, all callable from Claude Code by name.

Research Person Research Company Find Decision Maker Summarize LinkedIn Posts Extract Design Kit + JSON extraction from any website
Apify
LinkedIn scraping, profile research, and decision maker mapping
FireCrawl
Full-site crawling, page scraping, and content extraction
BrowserBase (Stagehand)
Browser automation, form interaction, and programmatic screenshots
View Potter MCP on GitHub β†—

What was built

Step by step

1
Build the pain point library
Scraped G2, Reddit, Capterra, and other review sites using Potter's FireCrawl integration to extract real complaints from Loom customers. Claude grouped them into 8 distinct pain point clusters, including recording crashes, upload failures, audio sync issues, a slower desktop app after the Atlassian acquisition, and video quality inconsistency. This library becomes the copy source for all outreach later.
2
Find and filter target accounts
Pulled the first free page of BuiltWith (around 50 companies) to get a list of current Loom customers. Claude then visited each company's website to reason over whether they use Loom for customer success or onboarding specifically. Of the 50, two qualified: Loop (a merchant success platform) and PlanHat.
3
Crawl websites and generate evidence PDFs
For each qualifying account, Claude ran parallel sub-agents to crawl all pages and find where Loom videos were embedded as iframes. Loop had 71 pages embedding 84 Loom videos across 300 crawled pages. PlanHat had 3 pages with 4 videos. Claude then used Playwright to screenshot up to 5 evidence pages per company, bundled with URLs, into a PDF, so there's visual proof to reference without trusting Claude's word alone.
4
Map the buying committee
Used Potter's Find Decision Maker tool to pull LinkedIn profiles from each target company and map out the org chart. For Loop, Claude identified five key contacts including a champion (Michael), a VP of Merchant Success (Chaya), and three others, each linked directly to their LinkedIn profile. Claude also used the Extract Design Kit tool to pull Loop's brand colors and fonts to replicate their style in the output page.
5
Generate the 30-day ABM playbook
Claude compiled everything into a styled HTML page per account: matched pain points from the library, embedded screenshot evidence, displayed the decision maker map with LinkedIn links, and wrote a 30-day multi-thread outreach sequence. Day 1 is connection requests to the champion and VP. Week 2 is a DM after acceptance. Week 3 escalates to the CEO if both earlier contacts reply. Each step includes draft copy personalized to the account's specific Loom usage.

Get started

Run it yourself

Clone the session repo, add your three API keys, and run the five prompts end-to-end. The README walks through each step and the pain point library is pre-built so you skip the expensive FireCrawl scrape on first run.

# Clone the session repo
$ git clone https://github.com/Mihailo2501/cc-in-the-wild-competitor-pain-abm
$ cd cc-in-the-wild-competitor-pain-abm && npm install
# Also install Potter MCP (see its README for Claude Code config)
$ git clone https://github.com/Mihailo2501/potter-mcp
# Add your three API keys to your environment
APIFY_API_KEY=your_key
FIRECRAWL_API_KEY=your_key
BROWSERBASE_API_KEY=your_key
# Then run the 5 prompts from the repo in Claude Code
# Full cost estimate: ~$3 in Apify + FireCrawl credits per run

Frameworks

The mental models behind it

Competitor customers are warm prospects
They're already paying for a solution in your category. Target them with documented pain points from their tool's own review sites, and the opening is already written for you.
Verify before you trust
Claude can hallucinate. Building screenshot evidence into the pipeline means you see the actual page, not just Claude's claim that a Loom video exists there. Human in the loop by design.
Sequential steps, each feeding the next
Pain library feeds the copy. Customer filter feeds the crawl targets. Evidence feeds the playbook. Run steps out of order and the outputs lose coherence.
Know your scale ceiling
Context window fills up fast with screenshots, crawl data, and tool outputs. Potter currently works well for 50 to 100 accounts per session. For 1,000 records, reach for Clay instead.

Q&A Highlights

Questions from the room

Can you run this at scale, like 1,000 accounts?
Not yet with Potter as it stands. The context window fills up too fast with screenshots, crawl outputs, and tool responses. Mihailo is working on a deterministic CLI layer so individual commands can process prospects in batches without bloating the main context. For now, 50 to 100 accounts per session is the practical ceiling. Skip the screenshots if you need to push that number up.
How much does this cost to run?
The full demo run costs roughly $3 in Apify and FireCrawl credits. Most people run Claude Code on a subscription, so there's no per-token charge on that side. A single Find Decision Maker call would be around $0.10 in API pricing. Apify costs are cheap for LinkedIn lookups. The screenshots are the most expensive part, so dropping those cuts cost significantly if you don't need visual proof.
How would you improve Potter to handle more scale?
Build a CLI on top of it with deterministic commands, where each command runs a small focused agent task on a batch of records, rather than stuffing everything into one long Claude Code session. That separates the reasoning from the context window ceiling. Sub-agents are another option, and they do help, but they add LLM reasoning overhead where a deterministic CLI command wouldn't.
Is the ABM playbook generated at the same time as the evidence PDF?
No, they're sequential. The evidence PDF comes first since the crawl data and screenshots feed into the buying committee mapping. The buying committee map then feeds into the playbook. Running them out of order loses the personalization that makes the output useful.
When would you actually use this in a real engagement?
When you want to target a competitor's existing customers with their known pain points. In a real workflow, Mihailo wouldn't bother generating the HTML page or evidence PDF. The CSV output is enough. The visual outputs here were added for the session so attendees could see what Claude was actually finding.

Tools mentioned

What was used

Potter MCP
Custom MCP server
Claude Code
AI coding agent
Apify
LinkedIn scraping
FireCrawl
Web scraping
BrowserBase
Browser automation
BuiltWith
Tech stack lookup
Playwright
Browser tool built into Claude Code, activated to take screenshots
G2
Review scraping
Capterra
Review scraping
Pluxx
Turns MCPs into native plugins

Resources

Everything from the session

πŸŽ₯
Session recording
Full 1-hour walkthrough with Q&A
β†—
πŸ“¦
Session repo
github.com/Mihailo2501/cc-in-the-wild-competitor-pain-abm
β†—
🧰
Potter MCP
github.com/Mihailo2501/potter-mcp Β· the open-source MCP server
β†—
πŸŽ“
Claude Code cohort
claudecode.claybootcamp.com Β· two weeks, hands-on, small group
β†—
πŸ”—
Pluxx
pluxx.dev Β· shared in chat by Brandon Guerrero
β†—
Clay Bootcamp

Build pipelines like this yourself

Two weeks, hands-on, small group. The Claude Code cohort at Clay Bootcamp takes you from zero to shipping real GTM workflows.

Join the cohort β†—

Stay in touch

Questions about Clay Bootcamp?

Mihailo Skendzic
Mihailo Skendzic
GTM Engineer, Fast Forward
LinkedIn
Heather Melton
Heather Melton
Head of Community Strategy, Clay Bootcamp
LinkedIn