Get the data.
Leave the web to us.
Point Vermin at a URL. It slips past the JavaScript, chews off the cookie banners and navs, and drags back markdown your model can actually use.
Free: 1,000 pages a month. No card.
POST /v1/scrape https://shop.example/p/42 formats: markdown, chunks▸ fetch GET 200 · 38 KB · 41 ms✕ quality js_required (empty <div id=root>)↑ escalate render · headless chromium▸ render 200 · hydrated · 612 ms✓ extract 3,412 tokens · 8 chunks · −41% junk tier render credits_used 1 latency 703 msgot in through the window. left with the data.
- 91.7%
- of pages returned usable content
- 81.8%
- success on bot-protected pages
- 98.3%
- metadata accuracy
Measured on 120 stratified pages, 2026-09-29. Built for PageClerk, where it lifted metadata coverage from 49% to 99%. Our story →
§01Escalation
Starts cheap. Digs deeper.
You don't pick a mode. Vermin tries the front door, checks what came back, and only tunnels down to a browser when the page needs one.
- 0 m1 credit
Fetch
Plain HTTP, then a quality check. Fast, cheap, and enough for most of the web.
- −1 msame price
Browser
Empty JavaScript shell? A headless browser renders it and waits for the content.
- bedrock0 credits
Still blocked
Bot wall, timeout, 404. You get a typed error code and keep your credit.
§02One API
A page, a site, or the whole web.
Scrape, crawl, map, search, extract and brand. One key, one credit balance.
LLM-ready
Your model doesn't need the footer.
Navs, cookie banners and footers go before your model sees them. On a crawl, anything repeated across the site goes too.
- Home · Products · Pricing · Blog · Log in (removed)
- 🍪 We value your privacy. Accept all / Manage (removed)
- # Rat-proof storage bins
- Our bins are made from 1.2 mm steel with a gasket lid…
- ## Sizes
- | Size | Litres | Price |
- You may also like: Mouse trap deluxe, Cheese (bulk) (removed)
- © 2026 Example Inc · Terms · Privacy · Sitemap (removed)
kept 0 tokens
removed 0 tokens
Brand
Logo, colours, fonts.
Any domain, one call, cached globally.
vermin.dev
font Bricolage Grotesque · 5 credits
Map
Every URL on a site.
Sitemaps, robots, link graph. Ranked by your query.
0
urls found · 0 duplicates
Chunks
Ready for a vector store.
Each chunk carries its heading path and token count.
- Rat-proof storage bins318
- Rat-proof storage bins › Sizes204
- Rat-proof storage bins › Care156
Search
Don't know the URL?
Search the web, then scrape the results in the same call.
q best rat-proof bins
- 1Rat-proof storage bins, testedbinreviews.example/rat-proof
- 2Keeping rats out of the shedgarden.example/rats
- 3Steel vs plastic binsforum.example/t/8812
5 credits per 10 results
Extract
Typed JSON, not prose.
Give it URLs and a schema. Get fields back, validated.
shop.example/bins/steel-60
{ "name": "Steel bin 60L", "price": 34.5, "inStock": true }
15 credits per URL · failures free
Crawl
Whole sites, streamed.
Sitemap-first discovery, include/exclude globs, live SSE stream or signed webhooks. Respects robots.txt.
event: page / fetch +1event: page /pricing fetch +1event: page /app/dashboard render +1event: page /blog/launch fetch +1event: skip /admin robots.txt +0event: page /docs/quickstart fetch +1
§03Agents & developers
Use it from anywhere.
Tools in Claude, Cursor or any MCP client. A CLI for scripts and agents. Typed SDKs with retries and streaming crawls. Or plain cURL.
Read https://vermin.dev/agent.md and set up Vermin for this project.
Use it whenever you need to read a web page, crawl a site, search the web, pull structured JSON from pages, or get a company's brand.1 credit is 1 page, browser included. Failed pages are free.
See pricing§04FAQ
Questions, answered.
What is Vermin?
One API that turns any URL or website into clean, LLM-ready data: markdown, token-counted chunks and metadata, structured JSON validated against your schema, plus brand data like logos, colours and fonts. Scrape a page, crawl a site, map every URL on it, or search the web.
Do I pay for pages that fail?
No. If a page is blocked, times out or returns nothing usable, the response has a typed error code and credits_used is 0.
Does it handle JavaScript-heavy sites?
Yes. Every response is quality-checked. If a plain fetch comes back as an empty JavaScript shell, Vermin escalates to a headless browser automatically. You never pick a mode.
Can my AI agent use it?
Yes. Connect the hosted MCP server at mcp.vermin.dev or run npx -y @vermin/mcp locally. Agents can also read vermin.dev/agent.md to set themselves up.
Release the vermin.
The web is messy. Your data doesn't have to be. Start free, no card.