MCP server
Every tool your agent can call, and how it connects.
SnoopScan runs an MCP server, so any client that supports the Model Context Protocol can call its tools directly: Claude Code, Codex, Cursor, VS Code, Windsurf, the Claude app, ChatGPT and more. No code or SDK needed.
Connect from the chat
Paste this into your agent's chat. Your agent adds the server and reads a test page. You sign in and press Approve in your browser.
Read and follow https://snoopscan.com/agent-onboarding/SKILL.md
The Claude app and ChatGPT connect at https://api.snoopscan.com/mcp-oauth by signing in, with no key to copy. See Integrations for each client's steps.
What the agent adds
A server URL and a key. Most clients use this JSON:
{ "mcpServers": { "snoopscan": { "url": "https://api.snoopscan.com/mcp", "headers": { "Authorization": "Bearer sk_YOUR_KEY" } } }}
Your agent fills in your real key when you sign in. A client that signs in itself uses the sign-in address above instead, with no header.
Available tools
The same tools as the API, with the same arguments. Ask your agent to "read this documentation site and answer from it", and it can map, crawl and extract without a script.
| Tool | What it is for |
|---|---|
scrape | One page as clean markdown. Set maxChars to cap how much comes back. |
fetchMore | The rest of a page that scrape cut short, picked up from the token it left. |
crawl | Start a crawl, get a job id back at once. |
crawlStatus | Where a crawl has got to: pages done, pages found, whether it has finished. |
crawlPages | The pages a crawl has collected so far, without waiting for it to finish. |
map | Every URL on a site, no page content. The cheap way to plan. |
search | Web search; titles and snippets by default, page bodies only when asked. |
extract | JSON to your schema from up to 10 pages, validated, never invented. |
batchScrape | Scrape up to 50 pages as one background job. Follow it with crawlStatus and read the pages with crawlPages. |
listProducts | Every product a store publishes, from its own catalogue: title, price, stock, variants and link. Use it instead of crawling a shop. |
listPosts | Every post a blog or forum publishes, from its own API or feed, newest first. Use it instead of crawling a blog. |
checkChanges | Has this page changed since it was last fetched, with a diff if wanted. |
watchPages | Start a monitor that re-reads up to 50 pages on a schedule and records which are new, changed or failing. |
listMonitors | List your page monitors with their schedule and when each last ran. |
checkMonitor | Run a monitor now and report which of its pages are new, changed, unchanged or failing. |
searchPlaces | Search Google Maps for businesses by trade and town, each with its category, address, rating, phone and website. Up to 20 a call. |
domain | Domain age, registrar, DNS and known backlinks. Use it to judge a site rather than read one. |
domainReport | A buyer's report on a domain: key findings, concerns and the questions nobody can answer from outside, each tied to its evidence. Quick, buyer or deep. |
domainSnapshots | Read the archived homepage snapshots a buyer report left pending: what the site was about each year, and whether it was parked or for sale. |
domainScreen | Which of up to 500 domain names can be registered, from each registry's own record and DNS. Cut a long list to a shortlist before running domainReport. |
findLeads | Find businesses by what they do and where, each with its phone, website and the emails it publishes, and optionally your own yes/no questions answered from each business's website. Runs for a few minutes. |
leadsStatus | Follow a Find Leads run, and read its leads 25 at a time once it has finished. |
company | Everything a company's own site says about itself: firmographics, contact emails, LinkedIn and socials. Enrich one company, not a directory. |
findContacts | A website's contact page, contact form, published email addresses (with where each was found) and social links. |
hiring | What a company is currently recruiting for, read from its applicant tracking system's own public job feed rather than the careers page, which usually renders its roles client-side and looks empty. |
people | Find the people at a company by function (engineering, sales, procurement, talent, finance and more) and seniority (exec, vp, director, manager, ic). Says whether each employer was confirmed, and flags anyone who has left. |
social | Structured data from YouTube, TikTok, Instagram, X, LinkedIn, Facebook, Threads and Pinterest: profiles, posts, videos, comments, transcripts and search, as named fields. |
socialEndpoints | List every social endpoint with its inputs and price, optionally for one platform. |
watchMentions | Save a watch: keywords, words to ignore and places to look (Reddit, Hacker News, Bluesky, YouTube, Threads, GitHub, the web). New mentions are checked on a schedule and sorted by what the person wants. |
listMentions | Read the mentions a watch found, newest first, filtered by kind (buying intent, bug report, question, praise, competitor), place or status. |
testMentions | Try keywords against the last seven days before saving a watch, to see what it would catch. |
markMention | Mark a mention seen, done or not relevant. |
googleSerp | Read a Google results page: who ranks, and what the AI Overview says and cites. Give your domain to see where it ranks and whether it is cited. |
parse | A document at a URL, such as a PDF, as markdown. Use it for a link to a document rather than a web page. |
Every tool is labeled read-only or not. No tool submits forms, posts or buys anything.
Billing
MCP calls are billed like API calls, at the same rates, and appear in your activity log.