All work
2025/Demo build/Self-initiated · B2B insurance brokerages

Prospecting Copilot

Daily lead-gen + AI cadence drafting for a single SDR.

mendiapp.app/today
Prospecting Copilot dashboard screenshot

Overview

A self-initiated single-tenant B2B prospecting assistant. Generates qualified US prospects daily, enriches them with C-suite contacts and recent news, and AI-drafts personalized 5-step email cadences. Operator copies drafts and sends from their own inbox. Designed for an insurance brokerage I'd been talking to about their SDR workflow.

Highlights

  • On-demand prospect generation via Apollo.io (manual trigger, no cron)
  • Bulk CSV import with duplicate detection
  • Claude Sonnet 4.6 drafting 5-step cadences with tone fidelity
  • News timeline per prospect (Tavily) — every email references something recent
  • Pipeline tracking with send-by reminders + meeting notes
  • Auto re-engagement cadences at Day +90

The problem

The pattern I was solving for: an SDR builds a prospect list in Excel, hand-checks news in 12 tabs, and ChatGPT-s each email separately. Each prospect takes 30+ minutes; voice consistency across emails is a coin flip; nothing ties news to outreach. The work is high-leverage, but the execution destroys the week.

Approach

  1. 01Locked the architecture to a single user — auth surface stays minimal, sign-up is disabled at the provider level.
  2. 02Built a tone system: writing-sample inputs train the prompt; cadence templates enforce per-step rules (peer-list parentheticals, lowercase subjects, no CTA on Step 3).
  3. 03Wired Apollo for prospect + contact data, Tavily for news, Claude for drafting. Every external call writes to a usage_events audit table so cost and credit burn are visible.
  4. 04Append-only audit tables (discovery_runs, usage_events, error_events) — no row is ever updated, so the timeline is provable.
  5. 05All workflows user-triggered. No cron, no background queue. Cost predictability mattered more than automation theater.

Outcome

  • Designed to compress a 30+ minute manual prospect-research cycle to a 10-minute review-and-send.
  • Voice consistency designed in via writing-sample tuning and per-step cadence rules — output reads as one consistent author, not five different ChatGPT runs.
  • Apollo + Anthropic spend visible in a single dashboard — usage-event audit log makes cost predictable from day one.

Security

  • Per-IP and per-email sliding-window rate limiting on login (10 IP / 5 email failures over 15 min)
  • Per-request CSP nonce middleware + HSTS + strict Permissions-Policy
  • All inputs Zod-validated; all queries parameterized via Drizzle
  • Failed-login + error events logged to dedicated audit tables
  • Admin-only debug endpoints kept off the navigation

The full picture

mendiapp.app/prospects/[slug]/cadence
Inside a prospect — Claude drafts the full 5-step cadence with tone fidelity, news context, and per-step send-by dates the operator copies into their own inbox.
Inside a prospect — Claude drafts the full 5-step cadence with tone fidelity, news context, and per-step send-by dates the operator copies into their own inbox.

Stack

Next.js 16React 19TypeScriptDrizzle + Neon PostgresNextAuth 5Claude Sonnet 4.6 (AI SDK)Apollo.ioTavilyTailwind v4shadcn/ui

Got something similar?

Let’s talk through your version of this.

Book a 30-min call