Self-hosted & MIT
The core engine is MIT open source. Deploy with one command, own your stack end-to-end, and keep your data on your own hardware — no vendor lock-in, no usage tax.
- docker compose up
- your infra, your data
- 100+ files MIT

MIT open-source web scraping and browser automation with a 15-tier anti-bot fallback, stealth browsing, and x402 pay-per-call. Built for data teams and AI agents — API-key and x402-gated, no credit cards, no SaaS lock-in.
15 data domains76 MCP toolsmulti-chain x402
runs on :8005 · FlareSolverr on :8192 · one command to local
{
"url": "https://store.example/product",
"status": 200,
"took_ms": 1843,
"bypass": "flaresolverr",
"title": "AeroLite Runner — $129",
"price": { "amount": 129.00, "currency": "USD", "in_stock": true },
"metadata": {
"description": "Ultra-light racing shoe, 218g.",
"og_image": "https://store.example/img/aerolite.jpg",
"canonical": "https://store.example/product/aerolite-runner"
},
"markdown": "# AeroLite Runner — $129\n\nUltra-light racing shoe, 218g.\n\n- Carbon plate\n- 4mm drop\n- In stock: M / L",
"links_found": 47,
"tier_used": 3
}curl -X POST https://api.pryscraper.com/v1/scrape \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'First 100 calls free during beta
“We replaced three scraping vendors with one self-hosted Pry instance. The 15-tier anti-bot fallback alone cut our failure rate from 12% to under 1%.”
“My agents pay per call in USDC over x402 — no API keys to rotate, no monthly invoices. Wiring Pry into the MCP toolchain took an afternoon.”
“Self-hosting means our scraped data never leaves our infrastructure. That made the compliance review trivial compared to SaaS scrapers.”
Built on
Why Pry
The core engine is MIT open source. Deploy with one command, own your stack end-to-end, and keep your data on your own hardware — no vendor lock-in, no usage tax.
Camoufox, TLS-fingerprint randomization, and six behavioral JavaScript scripts make automated traffic look human. Escalates from cheap direct requests to a full stealth browser automatically.
Gate any endpoint behind HTTP 402. Agents and users pay per call in USDC on Base, Ethereum, Arbitrum, Optimism and Polygon, plus SOL/USDC/USDT on Solana — settled on-chain. No subscriptions, no Stripe, no KYC.
Capabilities
Direct HTTP → TLS fingerprint → cloudscraper → FlareSolverr → undetected → Camoufox → Playwright → Googlebot → Tor → premium proxies → archive/cache fallbacks. Escalates 15 rungs until it gets through.
bypassCloudflare: trueClean, sanitized markdown output designed to drop straight into your model's context window. Scrape any URL to text in one call.
POST /v1/scrapeExtract structured data with a JSON Schema, with optional LLM fallback and chunking for long documents. Schema.org / JSON-LD included.
POST /v1/extractAnalyze images with free OpenRouter vision models and automatic 5-model fallback. Ask a question, get an answer about the pixels.
POST /v1/visionStep-based automation for login flows and form fills, plus save-and-restore persistent browser sessions across runs.
POST /v1/automateWatch pages for change, diff two snapshots, and schedule cron monitors with webhook + Slack delivery when content shifts.
POST /v1/watch · /v1/diffParse PDF, DOCX, images (OCR), CSV and JSON into text. Scanned documents included.
POST /v1/parseSix CAPTCHA providers with automatic fallback across them — retry until the challenge clears.
POST /v1/auth/captchaWhat Pry can do
From Cloudflare-protected pages to crypto launches to local listings — one self-hosted engine with a pay-per-call layer for agents. Every card ships verified endpoints; an agent-ready x402 + MCP layer (76 tools across 33 categories) sits on top.
the money-printer
Multi-sportsbook odds, arbitrage + +EV, player props, injuries and live in-play — a penny a scan, pay-per-call, no subscription. A month of scans still costs less than one OddsJam subscription.
/v1/sports/odds/v1/sports/arbitrage/v1/sports/plus-ev/v1/sports/props/v1/sports/liveper scan
$0.01
pay-per-call · no subscription
Extract any public page — even behind Cloudflare, DataDome or bot walls — as clean markdown or structured JSON.
/v1/scrapeDrive real browsers through login flows and form fills; capture full-page screenshots on demand.
/v1/automate · /v1/screenshotParse PDFs, DOCX, scanned images (Tesseract OCR), CSV and JSON into clean text and structured data.
/v1/parse · /v1/ocr/extractToken launches, CEX listing signals, and rug/honeypot security checks with risk scores.
/v1/crypto/token-launches · /v1/crypto/cex-listingsAmazon, Walmart and TikTok Shop product data — price, availability, reviews and trending.
/v1/marketplace/amazon/search · /v1/marketplace/tiktok/trendingCourt dockets, SEC filings, sanctions lists and corporate registries — extracted and monitored.
/v1/legal/dockets/search · /v1/legal/sec/searcheBay, Shopify, Etsy and AliExpress product and platform data — the long tail beyond the majors.
/v1/commerce/search · /v1/commerce/platformsProperty listings, price history and parcel-level market data from major platforms.
/v1/realestate/searchJob postings across Greenhouse, Lever, Workday and other ATS systems — plus salary data.
/v1/jobs/search · /v1/jobs/salary/{company}Flight prices, hotel rates and availability — without GDS fees.
/v1/travel/flights/search · /v1/travel/hotels/rates112 sportsbooks across 5 categories (US, offshore, EU, UK, Asian), scraped directly via intelligent fallback — more sources than any other odds service, no paid odds API. Plus arbitrage, +EV, props, injuries and live in-play — flat $0.01/scan.
/v1/sports/books · /v1/sports/odds · /v1/sports/arbitrageClinical trial search, drug pricing and insurance quotes — structured, monitorable data.
/v1/health/trials/search · /v1/health/drug/{drug}SERP positions, AI Overview presence, and ad-spend intelligence.
/v1/attention/serp · /v1/seo/analyzeGoogle Maps and Yelp listings, reviews, ratings and hours.
/v1/local/places/search · /v1/local/reviews/{place_id}Procurement notices, recalls, patents and trademarks — searchable and monitored.
/v1/gov/procurement/search · /v1/ip/patents/searchExpose any domain to AI agents over MCP (76 tools across 33 categories), billed per call in crypto — API-key + x402 gated, no credit card, no KYC.
/v1/x402/* · MCPActor Store
Every Pry capability ships as a store-ready Apify Actor with pay-per-event billing — you're charged per item processed, never for idle time.
Universal scrapers, site crawlers, SERP extraction, screenshots behind WAFs.
Change detection, news feeds, price watchers, ToS/policy diffs, dark-web watches.
Sanctions screening, CVE advisories, legal and public-records monitoring.
Token launches, CEX listing signals, DeFi yields, rug/honeypot scans.
App store ranks, ticket resale, sports odds, prediction markets, EV stations.
AI model pricing, GPU cloud prices, insurance rates, travel and hotel rates.
LLM corpus building, document parsing, lead harvesting, SEO audits.
Crypto market intelligence
Token launches, CEX listing/delisting signals, and rug/honeypot security scans with risk scores — for sniper bots, trading agents, and security tooling.
/v1/crypto/token-launches/v1/crypto/cex-listings/v1/crypto/token-security/{chain}/{address}Agent-ready
A full MCP server over three transports, a GPT Action manifest, and a SKILL.md — plug Pry into Claude, Cursor, or Hermes in one line. Remote agents point athttps://api.pryscraper.com/mcp/ and authenticate with an API key.
stdio
pry mcp serve — local, zero-config
HTTP
/mcp/ — streamable HTTP (canonical)
SSE
/mcp/sse — streaming events
one-line config
claude mcp add pry -- pry mcp serve"pry": {"command": "pry", "args": ["mcp", "serve"]}hermes mcp connect pry --stdioA ready-made skill file that teaches any agent how to scrape, extract and monitor with Pry — drop it in and go.
Expose Pry as a custom GPT Action for ChatGPT — scrape the web from inside a conversation, priced per call via x402.
Deploy once. Gate /v1/scrape behind x402. Every agent that calls it pays you — in crypto, settled on-chain.
No subscriptions. No Stripe. No KYC.
docker compose up — Pry serves /v1/scrape on your box or ours.
Wrap /v1/scrape in x402. Every call returns 402 with a price.
Agents pay per call in USDC on-chain. No account, no signup.
Facilitator verifies + settles. You receive crypto, instantly.
> POST /v1/scrape
< 402 Payment Required
x402-version: 1
accepts: USDC@base, USDC@arbitrum,
USDT@optimism, SOL@solana,
USDC@polygon, USDC@ethereum
> PAYMENT-SIGNATURE: eyJhbGci...
< 200 OK
PAYMENT-RESPONSE: settled
tx=0x7f3a…, block=18234102Coinbase · PayAI · Cloudflare facilitators, with EIP-7702 self-verify fallback.
/v1/scrape/v1/screenshot/v1/extract/v1/crawl/v1/stealth_browserUSDC on Base · Ethereum · Arbitrum · Optimism · Polygon · SOL/USDC/USDT on Solana.
Compare
The honest scoreboard. Full deep-dives on our Crawl4AI, Firecrawl, ScrapingBee and Oxylabs pages.
| Capability | pry | Crawl4AI | Firecrawl |
|---|---|---|---|
| Self-hosted | ✓MIT core | ✓Apache-2.0 | ✓open source |
| Stealth engine | ✓Camoufox + TLS + 6 JS scripts | △basic browser stealth | ✓managed anti-bot |
| Cloudflare bypass | ✓15-tier auto-fallback | △external FlareSolverr | ✓built-in |
| MCP multi-transport | ✓stdio + HTTP + SSE | △stdio | △stdio + HTTP |
| x402 crypto payments | ✓pay-per-call, no KYC | ✗— | ✗— |
| Price | $0free + pay-per-call | $0free | $free tier → subscription |
Code
Same API whether you curl it, drive it from Python, or hand it to an agent.
curl -X POST https://api.pryscraper.com/v1/scrape \
-H "Authorization: Bearer $PRY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"bypassCloudflare": true,
"formats": ["markdown"]
}'Pricing
Self-host free. Pay per call with x402. Buy a bulk pack. Or let us run it for you.
MIT core. Unlimited requests on your own hardware.
Pay crypto per call. No account, no infra, no KYC.
We run it. Managed stealth, proxies, dashboard, SLA — Free, Pro, Team, Enterprise. Pay in crypto via x402 recurring — no KYC.
x402 pay-per-call · basic stealth
priority stealth · residential proxies · standard support
batch · custom templates · priority support
SLA · dedicated · unlimited
Pro $49/mo · Team $199/mo · Enterprise custom — no live checkout yet, email us.
Scrape packs · bulk credits
Prepaid credit packs for high-volume and scheduled work — one top-up, discounted per-call economics, no per-request x402 round-trip. Perfect for cron monitors, agents and batch jobs.
Pay in crypto (USDC/USDT/SOL) · no KYC · credits roll over month to month
Pay with — multi-chain, multi-asset
BaseEthereumArbitrumOptimismPolygonSolanaUSDCUSDTSOLUSDC across Base · Ethereum · Arbitrum · Optimism · Polygon · SOL/USDC/USDT on Solana · no card required
Core is MIT. The stealth / anti-detection module is source-available under BSL 1.1 — free for personal, OSS and 90-day evaluation use; commercial license for production. See the license.
Cloud hosting
A managed Pry instance — stealth browsers, proxy pool, dashboard, SLA. Sign up with a crypto payment, no account or KYC needed.
For solo operators and agents running steady scrapes.
For teams and cron fleets with real volume.
Dedicated capacity, SLA, and unlimited scale.
Payment — crypto via x402
Pay with USDC on Base, ETH on Ethereum, or SOL on Solana — no account needed. Create an invoice, pay from any wallet, get your API key instantly.
POST /v1/hosting/signup { "plan": "pro" }See the full signup flow →FAQ
Scraping publicly available data is generally legal, but you must respect each site's terms of service, robots.txt, copyright, and privacy laws like GDPR/CCPA. Pry ships compliance tooling — consent recording, deletion requests, retention policies and audit logs — so you can build responsibly. Use it for legitimate purposes, keep rate limits civil, and don't hoover up personal data.
x402 is the HTTP 402 Payment Required standard, native to crypto. When a client hits a gated endpoint, Pry replies 402 with a price and the assets it accepts — USDC on Base, Ethereum, Arbitrum, Optimism and Polygon, and SOL/USDC/USDT on Solana. The client pays on-chain, a facilitator (Coinbase, PayAI or Cloudflare) verifies and settles the payment, and Pry returns your data. No signup, no KYC — the payment itself is the credential. High-volume users can instead buy a bulk scrape pack to skip the per-call round-trip and get discounted credits.
Self-host if you want full control, zero cost, and data that never leaves your infrastructure. Choose the hosted subscription if you'd rather not operate FlareSolverr, browsers, and proxies yourself — we run managed stealth, a residential proxy pool, dashboards and an SLA. The x402 pay-per-call lane sits in the middle: your code, our per-call billing.
Pry uses a 15-tier adaptive fallback ladder — direct HTTP with smart headers, TLS fingerprint randomization, cloudscraper, FlareSolverr, undetected Chrome, Camoufox stealth Firefox, Playwright, Googlebot mimicry, cookie pre-warming, behavioral biometrics, Tor, premium proxies, archive.org, Google Cache and a text-only fallback. It works on a large share of protected sites, but no scraper bypasses everything forever; specific sites and detection changes vary. The ladder is designed to try cheaper tiers first and only escalate when blocked.
The core engine is MIT open source and free to self-host, forever, with unlimited requests. The stealth/anti-detection module is source-available under BSL 1.1 — free for personal use, non-commercial open source, and 90-day evaluation, with a commercial license for production. Hosted tiers are optional. No dark patterns: the free tier is genuinely free.
Natively. Pry ships a spec-compliant MCP server over stdio, streamable HTTP and SSE — the hosted endpoint is https://api.pryscraper.com/mcp/ (streamable HTTP; SSE also served at /mcp/sse), so Claude Desktop, Cursor, or any MCP client can scrape directly. Add your API key for the hosted API; every paid endpoint also speaks x402, so agents can pay per call without an account. There's also an mcp-config endpoint that emits ready-made client configuration.
Bulk scrape packs are prepaid credit packs for high-volume and scheduled work. A single crypto top-up buys a block of credits at a discounted effective per-call rate, and every request draws down the pack instead of paying per call via x402 — no per-request payment round-trip, and no KYC. Pick a pack when you're running cron monitors, agents or batch jobs, and hold onto credits across months.
Pricing starts at $0.003 per call for standard scrapes, with heavier operations (screenshots, crawls, OCR) priced individually in /v1/x402/pricing. You only pay for successful gates — health, docs, job management, and the payment flow itself are always free. Fail-closed guarantees mean a mispriced endpoint refuses traffic rather than silently leaking it free.
Sites requiring logins are out of scope for the core API (session persistence exists for cookie reuse, but credential auth isn't included). Aggressively geo-fenced content and hard CAPTCHA walls may need the premium-proxy tier. Everything else — JS-rendered SPAs, WAF-protected storefronts, document repositories — is what the ladder was built for.
Yes — Pry ships as Apify Actors generated from our open Actor Factory: universal scraping, site crawling, screenshots, change monitoring, LLM corpus building, SEO audits and more. Each runs on Apify's infrastructure with pay-per-event billing, so you can use them without self-hosting anything.
Python SDK (async + sync clients), MCP for AI agents, OpenAPI spec for generating clients in any language, webhooks with HMAC signing, n8n/Zapier via webhooks, and first-class Docker Compose deployment. The REST API is uniform across all 80+ endpoints.
Payments settle via x402 through a facilitator. Pry accepts ERC-20 USDC and USDT on EVM chains, USDC/USDT and SOL on Solana, and USDT on Tron. Each gated endpoint quotes the exact assets it accepts, so you always see what is payable before you pay. No signup, no KYC — the payment itself is the credential.
Create one from the Pry dashboard. API keys carry a prepaid balance with a transparent ledger of every credit and debit, and they unlock the hosted HTTP API. If you would rather not hold an account at all, the same endpoints also speak x402 — pay per call and the payment is your credential. Health, docs and job-management endpoints are always free.
Two different ways to pay. Pay-as-you-go bulk scrape packs are prepaid credit packs bought with a single crypto top-up and drawn down per request at a discounted effective rate — ideal for cron monitors, agents and batch jobs. The hosted-pry subscription is a monthly cloud plan where we run the browsers, stealth and proxies behind an SLA, with dashboards and managed infrastructure. Same engine; you only buy one lane.
Fail-closed. If the x402 payment does not settle — wrong asset, network issue, or a replayed transaction — Pry rejects the request and returns the 402 with the exact expected asset and price. Settlement-success gating means your data is released only after the facilitator confirms the payment. A failed payment never burns credits and never returns partial data.
Pricing is published per endpoint in /v1/x402/pricing and scales across tiers, from standard scrapes up to heavier operations like screenshots, crawls and OCR. Rate limits are tier-based, enforced server-side, and the ladder walks you up as your demand grows.
Yes. The core engine is MIT open source and free to self-host with unlimited requests; the stealth/anti-detection module is source-available under BSL 1.1 (free for personal and non-commercial use, with a commercial license for production). Source lives on Codeberg (codeberg.org/RugMunchMedia/pryscraper) and GitLab (gitlab.com/cryptorugmuncher/pryscraper).
Pry sticks to publicly available data. You are responsible for respecting each site's terms of service, robots.txt and copyright, plus privacy law like GDPR/CCPA. The engine ships compliance tooling — consent recording, deletion and retention controls, and audit logs — so you can build responsibly without hoovering up personal data.
A 402 body always says what it wants: the expected asset, network and price — the most common cause is paying in the wrong asset or chain. If a payment is not credited, confirm it landed on the correct treasury address for that network and that it is mainnet; testnet transactions are rejected by design. Replayed or unsettled transactions are refused to prevent double-spends.
Something else? Ask in Telegram or @cryptorugmunch.
Open source
The core engine is MIT licensed and developed in the open. Star, fork, or file issues on the public mirrors — no registration required to read a single line.
One command to a self-hosted scraper your AI agents can use — and pay for — today.