NewClaude can drive a session, and a phone can take one over

Automate the web in a real browser.
Leads, logins, agents.

Scrappy gives your code a real Chrome session that sites treat as a person — residential exit, matching timezone, logins that still work tomorrow. Drive it from the API, from MCP, or let Claude operate it, and take over yourself when a page asks for a human. The whole lead pipeline runs on the same browser.

No card needed.

Session live203.0.113.24
ExitAmerica/Chicago
Real Chrome
Headful, on residential exits, with a timezone that matches the IP.
57 browser tools
The whole cloud browser, callable by your agent over MCP.
400+ endpoints
Leads, sources, jobs, campaigns and sessions over one REST API.

What a session looks like

Your agent reads the page, clicks by reference, and the leads land verified.

directory.example.com/agents?city=chicago

Find an agent

214 results in Chicago, IL

ref=e14
DW

Dana Whitfield

Broker, Lakeview Realty

MO

Marcus Oyelaran

Agent, Northside Homes

PR

Priya Raman

Team lead, Harbor & Pine

TA

Tom Aldridge

Agent, Aldridge Group

SM

Sofia Marchetti

Broker, Marchetti Co.

WL

Wen Li

Agent, Eastgate Realty

Cloud browser

A browser your code can drive, and you can take over.

Every session is real Chrome on a residential connection. Automate it over the API or MCP, watch it live, and step in yourself for the few challenges nothing solves.

Tour the cloud browser
headful · 1920×1080
exit 203.0.113.24 · America/Chicago

Real Chrome, seen as a person

Headful Chrome behind a residential exit, with the timezone and location that address implies. Sites that turn away headless browsers and datacenter IPs behave the way they do for a visitor.

Page, as your agent reads it

main "Find an agent"
searchbox "City or ZIP"e4
list "Results"
link "Dana Whitfield"e14
link "Marcus Oyelaran"e15
link "Priya Raman"e16
button "Next page"e31

Reads the page like a screen reader

Roles, names and state come back as a tree. Click or type against a ref instead of a selector that breaks on the next re-render.

claudetool_useread_page
scrappytool_result42 elements, 9 refs
claudetool_useleft_click ref_14
scrappytool_resultclicked · tab unchanged
claudetool_usefile_upload
scrappywaitingneeds your approval

Claude can drive it directly

Post Claude's browser-toolset calls to one endpoint and send back what it returns. Uploads and other risky steps can wait for a person to approve.

Logins that still work tomorrow

Save a signed-in session as a profile. Each one keeps its own exit IP, and a webhook tells you the moment a site signs it out.

Take over from your phone

One finger is the mouse, two fingers pan and zoom, and a keyboard button types into the remote page. Enough to clear a sign-in wall from a text message.

license.pdf

uploaded from your device

export-chicago.csv

download · kept with the session

session.mp4

recording · 02:14

Files, both directions, and video

Uploads go through your own file picker. Downloads stay with their session. Any session can record itself to MP4, watched or not.

POST /sessions/{id}/batch

01navigate
02wait_for_function
03fill_form
04click
05read_page
06screenshot

up to 25 steps, one round trip

25 actions in one call

Batch a whole flow into a single request, and wait on the page's own scripts or any condition you name before the next step runs.

CAPTCHAs clear themselves

A challenge on a page your agent just opened is solved and the page carries on, inside a spend cap you set. Press & Hold walls and account checks still want a person — take over and clear those.

app.example.com says

Leave without saving?

CancelOK

error.dialogOpen confirm

POST/dialog { action: "dismiss" }

A stuck tab says why

A native dialog freezes a tab without a word. Scrappy names it in the error, lets you answer it, and replaces the tab as a last resort, keeping the session signed in.

The pipeline

From a sentence to a sent campaign.

Five steps, each one usable on its own. Start anywhere, stop anywhere, or let a deal campaign run the whole line.

  1. 01

    Find sources

    Describe who you want. Scrappy finds the directories and sites that list them.

  2. 02

    Scrape

    A cloud browser walks each one, pagination and logins included.

  3. 03

    Verify

    Every email goes through syntax, domain and mailbox checks.

  4. 04

    Match

    Rules or AI score each profile against your criteria.

  5. 05

    Send

    Export, sync by webhook, or start a warmed-up campaign.

Lead generation

Everything between a website and a reply.

Discovery, extraction, validation, scoring and outreach in one place, with an AI agent that can run any of it for you.

Leads out the other end

Pages go in, structured contacts come out: names, roles, emails, phones and whatever fields your own profile type defines.

Independent real estate brokers in Chicago
01illinoisrealtors.example/directory96%
02chicagoagents.example/find91%
03midwestbrokers.example/members84%

AI source discovery

Describe the audience in a sentence and get back the directories worth scraping, ranked by fit.

Emails that are real

Tiered validation catches bad syntax, dead domains, catch-alls, disposable addresses and spam traps before you send.

Harbor & Pine94
Lakeview Realty88
Northside Homes71
Eastgate Realty52

Deal campaigns and matching

Set the criteria once. Scrappy finds sources, ranks accounts and scores every profile with filters, weights or an AI read.

wk 1
wk 2
wk 3
wk 4
wk 5

Outreach with a warmed domain

A five-week ramp with DNS checks and automatic pauses, then AI sequences, reply intent and follow-ups through AngelSend.

Which brokers from last week's scrape have a valid email?

search_leads { emailStatus: "VALID" }

43 of 61. Want them exported, or sent to a campaign?

An agent that does the clicking

Ask in plain language. The built-in Claude agent searches, updates and exports, and asks before anything that costs credits.

Built for teams and compliance

The parts a growing team asks for on day ninety are already here.

  • Organizations and scoped API keys
  • HMAC-signed webhooks with retries
  • GDPR consent, export and erasure
  • Audit logging
  • LinkedIn enrichment and accounts
  • Suppression lists and proxy profiles

Developers

Everything the dashboard does, your code can do.

A REST API, a typed SDK and an MCP server. Wire Scrappy into your stack, or hand the whole platform to an agent as tools.

1import { ScrappyBrowser } from "@willpschulz/scrappy";23// Server-side only — never expose your API key in the browser4const browser = new ScrappyBrowser({ apiKey: process.env.SCRAPPY_API_KEY! });56// Drive a real cloud browser7const session = await browser.createSession();8try {9  await session.navigate("https://directory.example.com/listings");10  await session.waitForNetworkIdle();1112  const html = await session.scrape();13  const shot = await session.screenshot();1415  // Embed a live, interactive view in your own app16  const { viewerUrl } = await session.createViewerToken();17} finally {18  await session.release();19}
  • 400+ endpoints

    Full REST API covering leads, sources, jobs, campaigns, profiles, and a cloud browser you can drive click by click.

  • MCP server

    Point your own AI agent at Scrappy over MCP and it gets the whole platform as tools — including the browser, which it can read as an accessibility tree and act on by reference rather than by guessing selectors.

  • Scoped API keys

    Enterprise API keys with scoped permissions and rate limiting per key.

  • Webhooks

    HMAC-signed events for jobs, new leads and exports, and for browser sessions: when one ends, and when a site signs a saved login out.

  • Streaming

    Server-sent events for pipeline progress, AI chat responses, and live notifications.

Pricing

Buy credits. Spend them on what you use.

No seats and no monthly minimum. A scrape, a validation and a browser minute each cost a fixed number of credits.

credits per scrape
10
credit per email validated
1
credits per markdown export
5
credits per browser session
5+1/min

Starter

Perfect for trying out Scrappy

$9one-time

500 credits · $1.8 per 100

Get Starter
  • 500 credits
  • ~50 scraping jobs
  • Cloud browser — 5 credits + 1/min
  • Email validation
  • CSV & JSON exports
  • AI source discovery
  • Email support

Growth

Most picked

For growing teams

$29one-time

2,000 credits · $1.5 per 100

Get Growth
  • 2,000 credits
  • ~200 scraping jobs
  • Cloud browser — 5 credits + 1/min
  • AI chat agent
  • Deal campaigns
  • AngelSend integration
  • Webhooks & API access
  • Priority support

Scale

For high-volume users

$79one-time

6,000 credits · $1.3 per 100

Get Scale
  • 6,000 credits
  • ~600 scraping jobs
  • Cloud browser — 5 credits + 1/min
  • Everything in Growth
  • Organizations, roles & IP allowlist
  • API keys & source templates
  • Proxy profiles & suppression lists
  • Weekly lead targets per source

Not ready to buy? Start with 100 free credits, no card needed. Or see how Scrappy compares with the tools it replaces.

Questions

Asked often. Answered plainly.

Something else? Write to us.

Scrappy is two things on one platform: a cloud browser, and a lead pipeline built on it. The browser is real Chrome running in the cloud that your code, your AI agent or you can drive — it stays signed in between runs, and you can watch it live and take over when a site wants a human. On top of it sits the lead side: source discovery, contact extraction, email validation, deal campaigns, matching and outreach, with an AI chat agent that can run any of it for you.

Every session is a real, headful Chrome window in the cloud on a residential connection, with its timezone taken from its exit IP so the two never disagree. You can drive it from the REST API, from 57 browser tools over MCP, or with Claude’s own browser toolset, and open a live viewer to click and type yourself from a laptop or a phone. Saved logins are pinned to their own exit IP, so a session that signed in last week still works today. A session costs 5 credits to start and 1 credit per minute.

Scrappy uses a simple credit-based pricing model. Each action costs a set number of credits: scraping jobs cost 10 credits, email validation costs 1 credit, and markdown exports cost 5 credits. You only pay for what you use — no subscriptions or hidden fees.

No! You get 100 free credits when you sign up, no credit card required. This lets you try out all of Scrappy's features before deciding to purchase more credits.

Our multi-tier validation system checks syntax, domain validity, and mailbox deliverability. Most users see bounce rates drop to under 2% after using our validation. We detect spam traps, catch-all domains, and disposable email addresses.

AI Source Discovery uses Perplexity AI to find relevant websites based on your target audience and keywords. Instead of manually searching for prospects, describe who you're looking for and we'll find websites, directories, and databases that match your criteria.

The AI Chat Agent is a Claude-powered assistant built into the dashboard. You can ask it to search leads, update records, check job statuses, get analytics, and manage your sources using natural language. It executes tool calls in real-time and streams responses.

Deal Campaigns use AI to automate your deal flow. Define your target criteria, and Scrappy will discover relevant sources, rank accounts by fit, and suggest matching rules — all powered by AI. You can track campaign status from DRAFT through ANALYZING to COMPLETE.

Yes, through our AngelSend integration. You can export leads, send bulk emails, generate AI-powered email sequences, analyze reply intent, auto-generate follow-ups, and audit for spam triggers — all from within Scrappy. Email warmup is also built in with a 5-week progressive ramp.

Scrappy works with most public websites. Our cloud browser handles JavaScript-heavy sites and dynamic content. You are responsible for respecting each site's terms of service and robots.txt. Scrappy checks robots.txt and reports the result, but it does not block a source you have configured.

You can export your leads as CSV (for spreadsheets and most CRMs), JSON (for developers and custom integrations), or clean Markdown (for documentation and content). You can also sync leads to external systems via webhooks and data destinations.

Scrappy gives you tools to help you meet GDPR obligations: consent records with history, data export, account deletion, suppression lists, and audit logging. It does not make your use of the data compliant by itself — for the contacts you collect, you are the data controller. Scrappy does not hold a SOC 2 report. See the privacy policy at /privacy for how we handle data.

Yes. Scrappy provides a comprehensive REST API with 380+ endpoints covering leads, sources, jobs, profiles, campaigns, email validation, webhooks, and more. Enterprise users can generate API keys for programmatic access. Full API docs are available at /docs/api. There is also a hosted MCP endpoint and a TypeScript SDK for cloud browser control.

Team features include organizations with roles and an IP allowlist, scoped API keys, reusable source templates, proxy profile configuration, email suppression lists, data destination syncing, weekly lead targets per source, and automatic selector healing for broken scrapers. Single sign-on (SAML/OIDC) and SCIM are planned and not available yet.

Stored credentials and saved logins are encrypted at rest. We also use rate limiting, account lockout protection, HMAC-signed webhooks, and audit logging. We do not sell personal data. Scrappy has not been through a SOC 2 audit; the privacy policy at /privacy lists the service providers that process data for us.

Start

Go get them. The first 100 credits are on us.

Enough for ten scrapes or a first hour in the cloud browser. No card, no call, no minimum.

The open webOne session away