SnoopScan MCP server
online · 100% uptimecom.snoopscan/snoopscan·v1.0.0Web scraping for agents: scrape, crawl, map, search and extract pages as clean markdown or JSON.
0 stars
Reviews
Write oneNobody has reviewed SnoopScan yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
SnoopScan tools (18)
write = sends, deletes, buys or postscheckChangesFreeCheck whether a page has changed since it was last fetched.
companyFreeEverything a company's own website says about itself. Give it a company domain and get back the firmographics a lead list sells — name, phone, address, LinkedIn, headcount, industry, founded year — plus the contact emails, social links and contact form the site publishes. Reads the homepage and a few contact/about pages, nothing behind a login. Use it to enrich one company. It is the single-company half of a lead pipeline, not a directory search.
crawlFreeStart crawling a website. This runs in the background and returns a job id immediately. Use `crawlStatus` to check progress and `crawlPages` to read results. Crawls can take minutes and consume significant resources — set `limit` conservatively.
crawlPagesFreeRead the pages a crawl has collected, a few at a time. Small defaults on purpose — a crawl's full output will not fit in context.
crawlStatusFreeCheck the progress of a crawl. Returns counts and cost, never page bodies.
domainFreeHow old a domain is, who registered it, where it is hosted, and who links to it. The off-page questions a page scrape cannot answer. Use it when a page looks fine and you need to know whether the SITE is old, established or linked to — comparing competitors, judging a source, or checking whether a domain was registered last week. Nothing here fetches the page, so nothing here can be blocked.
extractFreeExtract structured data from one or more pages according to a JSON schema. The output is validated against the schema — if a page does not contain the required fields, that page returns an error rather than invented values. Treat an error as genuine absence, not a reason to retry.
fetchMoreFreeRead the remainder of a page that was truncated. Pass the token from a truncation marker. Returns the next section of the same page, truncating again if it is still too long.
findContactsFreeFind contact information for a company website. Returns the contact page, any contact form and its vendor, published email addresses with where each was found, and social links. Used by the lead pipeline.
findLeadsFreeFind businesses by what they do and where, with how to reach each one. `who` is the trade or kind of business ("roofing contractors", "dentists"), `where` is a town or area ("Houston, TX"). Looks on Google Maps, BBB and Yellow Pages by default (`sources` may also name companies_house for UK companies by trade, or web); merges duplicates; reads each business's own website for emails, socials and a contact form (`contacts`); and with `roles` (e.g. ["Owner"]) looks for a named person. Runs in the background for 2 to 5 minutes: call `leadsStatus` with the job id to follow it and to read the leads. Charged per lead delivered, never for what it cannot find.
hiringFreeWhat a company is currently recruiting for. A company hiring six engineers has budget, a roadmap and a problem — the signal sales teams and recruiters pay most for. Give it a company domain. It finds the careers page, identifies the applicant tracking system, and reads that system's own public job feed, so it returns real roles rather than the empty shell most careers pages serve to a plain fetch. Not every company exposes a feed. When none is found it says so and names the careers page instead of pretending — do not read "no feed" as "not hiring".
leadsStatusFreeFollow a Find Leads run, and read its leads once it has finished. Returns the stage while it runs. When done, returns the leads 25 at a time: name, phone, email, website, address and where each was found; call again with `offset` for the next 25.
listPostsFreeList a site's posts or articles from its own API or feed. WordPress, Substack, Squarespace and Discourse answer through their APIs; anything else through RSS or Atom. Titles, URLs and dates — use `scrape` on a URL to read one.
listProductsFreeList every product a store publishes, from the store's own catalogue. Works for Shopify and WooCommerce stores without a key: one request per page of up to 250 products, with title, price, availability, variants and the product URL. Use this instead of crawling a shop.
mapFreeList the URLs on a website without fetching page content. Fast and cheap. Use this to understand a site's structure before deciding what to scrape.
peopleFreeFind the people at a company, by what they do and how senior they are. Head-hunting a developer, poaching a sales team, or finding who signs the cheque are the same shape of question: function plus seniority. Give it a company and optionally a `role` and a `seniority` and it returns named people from public search — no login, no profile scraping. role: executive, engineering, product, sales, marketing, finance, procurement, talent, operations, data, security, legal, support, design seniority: exec, vp, director, manager, ic Each person says whether the employer was CONFIRMED in the source text. Unconfirmed people are real leads but unproven — the company name did not appear beside them — and anyone marked former has LEFT. Check those two flags before you contact anybody.
scrapeFreeFetch a single web page and return its content as clean markdown. Use this when you have a specific URL and need to read what is on it. For finding pages first, use `search` or `map`.
searchFreeSearch the web and return results. Optionally fetch the content of each result. Fetching content is much slower and more expensive — only set `fetchContent` when you actually need the page bodies rather than just the links and snippets.
Public scan report
scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 507ms (auth required)20/20
- Tool poisoning18 tool descriptions checked15/15
- Auth qualityOAuth resource metadata advertised on 40115/15
- Maintenancelast push 0 days ago15/15
- Maintainer identityregistry namespace matches repository owner; website matches verified namespace9/10
How SnoopScan compares
Against every graded Scraping and browsing MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 99/100
- higher than 99% of 866 Scraping and browsing servers
- Tools
- 18
- the typical Scraping and browsing server has 6
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote Scraping and browsing server answers 100%
- Response time
- 117 ms
- faster than 66% of 384 Scraping and browsing servers
What its tools let an agent do: 18 read
Install SnoopScan in Claude Code, Cursor or VS Code
claude mcp add --transport http snoopscan https://api.snoopscan.com/mcp-oauth
What the publisher says
From the SnoopScan repository's README, as published. We do not edit it. Read it on GitHub
SnoopScan
Turn any public page into clean markdown, structured JSON, or a schema you define — including the pages that block everything else. REST API, MCP server, and SDKs.
This repository is SnoopScan's open core. It runs on its own, and the hosted API at snoopscan.com adds the parts that are not here. See Open source vs hosted API.
Quick start
The examples below call the hosted API and read your key from SNOOPSCANAPIKEY. The free plan includes 1,500 credits a month.
curl
curl -X POST https://api.snoopscan.com/v1/scrape \
-H "Authorization: Bearer $SNOOPSCAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/", "formats": ["markdown", "links"]}'Python
pip install snoopscanfrom snoopscan import SnoopScan
snoop = SnoopScan(api_key="...")
print(snoop.scrape("https://example.com/").markdown)JavaScript / TypeScript
npm install snoopscanimport { SnoopScan } from 'snoopscan';
const snoop = new SnoopScan({ apiKey: '...' });
console.log((await snoop.scrape('https://example.com/')).markdown);Features
browser on a residential exit. The engine starts at the cheapest tier a domain has historically needed and moves up only when it has to.
- Six fetch tiers on the hosted API, from a plain HTTP request up to a stealth
the domain's own baseline. A 200 that carries a challenge page, a consent wall or a generated decoy counts as a failure.
- Four layers of block detection, including a statistical comparison against
go through the heuristic path. Forums, listings, products and tables go through the structured path. Confidence is scored from 0 to 1 and reported.
- Extraction is routed by page type. Each page is classified first. Articles
JSON, so you get the content in one request instead of a crawl.
- Shopify stores, WordPress blogs and Substacks are read from their own public
succeeded and what it consumed.
- Failed requests cost nothing. Every response reports the tier that
- Every endpoint is also an MCP tool.
Open source vs hosted API
This repository contains:
- the REST API
- extraction
- block detection
- the crawl frontier
- the MCP server
- the first two fetch tiers (plain HTTP and browser-grade TLS)
- storage
- both SDKs
These parts are not in this repository and run only on the hosted API at snoopscan.com:
- the proxy layer
- the browser and stealth tiers
- the anti-bot knowledge base
- the lead-gen pipeline
A self-hosted copy fetches with the first two tiers. A page that needs a real browser or a residential exit comes back as blocked. It is reported as blocked, never as a false success. The hosted API uses all six tiers, and its free plan includes 1,500 credits a month.
MCP server
Every endpoint is also an MCP tool, so an agent can call them directly with no glue code.
claude mcp add --transport http snoopscan https://api.snoopscan.com/mcp \
--header "Authorization: Bearer $SNOOPSCAN_API_KEY"Apps that sign in instead of taking a key (the Claude app, ChatGPT) connect to https://api.snoopscan.com/mcp-oauth and sign in with a SnoopScan account.
Any MCP client that speaks streamable HTTP connects the same way, including Cursor, VS Code, Windsurf, Zed and Codex.
Tools
scrape, fetchMore, crawl, crawlStatus, crawlPages, map, search, extract, checkChanges, listProducts, listPosts, domain, company, findContacts, hiring, people, findLeads and leadsStatus.
The company, contact, people, hiring and lead tools need the hosted API. This repository answers them with a plain "not available on this deployment".
Every tool has a title and read-only / destructive labels. None of them submits, posts or buys anything.
Limits
The tools are designed to keep an agent's context small:
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
SnoopScan: common questions
- Is SnoopScan MCP server safe?
- Yes, by our scan: it is graded A (99/100). Read the SnoopScan safety report
- How do I install SnoopScan?
- It runs remotely at api.snoopscan.com. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does SnoopScan need an API key?
- No key to paste: it signs you in with OAuth when your client connects.
- Is SnoopScan maintained?
- The last commit was 40 days ago (2026-09-25). The latest release is v1.0.0.
- Is SnoopScan up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of SnoopScan?
- Servers from other publishers that do the same job: fastCRW MCP server, Fortress MCP server and CRW Web Scraper MCP server.
- How does SnoopScan compare with other Scraping and browsing MCP servers?
- safety score 99/100 (higher than 99% of 866 Scraping and browsing servers); tools 18 (the typical Scraping and browsing server has 6); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to SnoopScan
Same job from other publishers: the closest match first, then the best rated.
- fastCRWScrape, crawl, map & search the web. Open-source, self-hostable Rust crawler & search for AI agents.not reviewedEstablishedA
- FortressStealth browser for AI agents: fetch pages behind Cloudflare/DataDome/CAPTCHA, extract clean data.not reviewedEstablishedB
- CRW Web ScraperOpen-source web scraper for AI agents with scrape, crawl, and map toolsnot reviewedEstablishedA
- Pinkpixel Dev Web ScoutSearch the web and extract clean, readable text from webpages. Process multiple URLs at once to sp…not reviewedGrowingA
- CrawlbergScrape, crawl, and map websites to Markdown or JSON via local CLI.not reviewedGrowingA