{"name":"io.github.quantumproxies/quantumproxies-mcp","slug":"quantumproxies-mcp","title":null,"description":"Web scraping, SERP search, crawl/map and 74 Collectors through residential proxies. 25 tools.","url":"https://mcp.market/server/quantumproxies-mcp","rating":null,"grade":"C","score":55,"certified":false,"status":"active","category":"seo","tags":["seo","scraping","search","maps"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":40,"last_push_at":null,"license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":null,"website":null,"version":"0.8.1","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"quantumproxies-mcp","version":"0.8.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"API key from https://quantumproxies.io (free monthly usage, no card required)","isRequired":true,"isSecret":true,"name":"QUANTUMPROXIES_API_KEY"}]}],"tools":[{"name":"batch","description":"Scrape many URLs asynchronously with shared options. Returns a job id — poll with batch_status. For SEO/status audits over many pages set mode 'summary': items carry metadata only (title, description, canonical, contentLength) instead of full page content.","write_action":false,"price_micros":0,"input_schema":null},{"name":"batch_status","description":"Poll a batch job for progress and per-URL results. Polls are incremental: pass the previous response's `nextCursor` as `since` to receive only the items completed after your last poll. Items omit page content by default — set include_content true only when you actually need the text.","write_action":false,"price_micros":0,"input_schema":null},{"name":"collector_run_status","description":"Fetch a Collector run by run_id: status (queued|running|done|failed), result count, cost, partial flag and the result rows. Use after run_collector returned 202/async. Pass format 'csv' to get the rows as CSV text.","write_action":true,"price_micros":0,"input_schema":null},{"name":"crawl","description":"Start an asynchronous BFS crawl of a site from a seed URL, converting each page to Markdown. Returns a job id — poll with crawl_status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"crawl_status","description":"Poll a crawl job for progress and the pages crawled so far. Polls are incremental: pass the previous response's `nextCursor` as `since` to receive only the pages crawled since your last poll. Pages omit their content by default — set include_content true only when you actually need the text (a large crawl's full content can be hundreds of KB).","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_dataset","description":"Build a structured dataset from a plain-language prompt. Quantic AI plans the search queries, searches Google/Bing/DuckDuckGo, maps the sites it finds and scrapes them into validated rows (CSV/JSON). Returns a job id — poll with dataset_status. Billed per delivered, validated record (email/phone fields cost extra, only when found); the run never exceeds limits.max_cost_usd, and the unspent budget ","write_action":true,"price_micros":0,"input_schema":null},{"name":"dataset_status","description":"Poll a dataset job for progress, the collection trace (steps) and the rows so far. Polls are incremental: pass the previous response's `nextCursor` as `since` to receive only rows delivered after your last poll. Set mode 'summary' to omit rows and get only progress + steps (light poll). When status is completed, the response includes signed CSV/JSON download URLs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_parser","description":"Look at a page ONCE with an LLM and get back CSS selectors that extract the fields you asked for. Pass the returned `parser` as the `extract` argument on every later scrape of that same layout and no AI runs again — it becomes a plain, free, deterministic extraction. Use this instead of ai_prompt whenever you will scrape more than a couple of pages of the same shape. Every selector is run against ","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_proxies","description":"Generate ready-to-use proxy endpoint strings (credentials included) from one of the account's active proxy services — any type: residential, mobile, datacenter, ISP, IPv6. Supports geo targeting (country/state/city, ISP or ASN where the plan allows it), rotating or sticky sessions, HTTP or SOCKS5, and several output formats. Use list_proxies first to get the orderId, and proxy_locations for valid ","write_action":false,"price_micros":0,"input_schema":null},{"name":"heal_parser_preset","description":"Regenerate a preset's selectors now (the manual trigger for the automatic repair). Refetches the source page and adopts new selectors ONLY if they extract more than the current ones — a heal that finds nothing better leaves the preset untouched and is not billed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_collectors","description":"List the ready-made Collectors: paid, versioned scrapers you run with a semantic input (keyword + location, place id, product id, domain…) instead of URLs — e.g. web_search, search_images, search_videos, keyword_ideas, amazon_search, amazon_product, ebay_search, aliexpress_search, linkedin_jobs, indeed_jobs, reddit_posts, youtube_search, youtube_channel, instagram_profile, tiktok_profile, tiktok_v","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_parser_presets","description":"List your stored parser presets with their version, health stats and changelog.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_proxies","description":"List the account's proxy services of every type — Residential Basic/Premium/Private, Mobile, Mobile V2, Datacenter (static or traffic-based), ISP, IPv6 — with plan type, bandwidth left, expiry, whitelisted IPs and the orderId to pass to generate_proxies. Call this first to see which proxy plans are available.","write_action":false,"price_micros":0,"input_schema":null},{"name":"map","description":"Discover a site's URLs fast (robots.txt sitemaps + /sitemap.xml + homepage links) without a full crawl. Returns up to `limit` URLs (default 100) plus the site-wide `total` and a per-section `summary` (e.g. '/blog': 1988) so you see the site's shape without the full list. Narrow with `search` (substring filter — the primary way to find specific pages) or set group_by 'path' for the path tree with c","write_action":false,"price_micros":0,"input_schema":null},{"name":"parser_preset_stats","description":"How well a stored parser is still working: success rate per field, mean coverage over the recent runs, and whether it now counts as decayed (i.e. the site probably changed).","write_action":false,"price_micros":0,"input_schema":null},{"name":"proxy_locations","description":"Discover valid geo-targeting values for a proxy plan type before calling generate_proxies: countries, states, cities, ASNs, or the full location tree (countries → regions → cities → ISPs). Use level 'tree' for Residential Premium / Mobile V2 slugs and ISP codes, or for the static datacenter gateway list; note the tree can be large.","write_action":false,"price_micros":0,"input_schema":null},{"name":"run_collector","description":"Run a Collector by slug with a semantic input (see list_collectors for each collector's inputSchema and example). Short runs return the rows inline; long runs return 202 with a run_id + statusUrl — poll with collector_run_status. Results are billed per delivered row (never for failures). Set `async` true to force background execution.","write_action":true,"price_micros":0,"input_schema":null},{"name":"save_parser_preset","description":"Store a generated parser under a name so it can be reused by id. Scrape later with scrape's `preset_id` instead of repeating the selectors, and every run is scored per field — when the recent success rate decays (the site redesigned), the preset regenerates itself from `source_url` and bumps a version. Give it a source_url whenever you can: without one it can never self-heal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"scrape","description":"Scrape a single web page through a residential proxy and return it as clean Markdown (or HTML/text). Uses a real Chrome TLS fingerprint by default and only spins up a headless browser if the page is bot-challenged. Optionally run structured extraction (CSS selectors) or AI extraction (natural-language prompt). Markdown keeps the complete page by default (content_mode 'smart': everything except nav","write_action":false,"price_micros":0,"input_schema":null},{"name":"search","description":"Run structured Google, Bing or DuckDuckGo searches through a residential proxy. Bing supports web, shopping, images, news, videos, places/maps and autocomplete over HTTP, including Copilot AI answers and citations when Bing returns them. Google web search also parses rich blocks directly from its HTTP response.","write_action":true,"price_micros":0,"input_schema":null},{"name":"search_and_read","description":"Search the live web, fetch the top organic pages as clean Markdown, and return citation-ready numbered sources plus one token-bounded `context` string ready for an AI prompt. Use this when the goal is answering/researching, and use `search` when raw SERP structure or a specialized vertical is needed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_bulk","description":"Paginate ONE search query asynchronously and merge deduplicated organic results. Page-one AI Overview/PAA/Knowledge Graph/answer enrichments are retained; set render:true to request those Google JS blocks. Billed per page actually fetched, with unavailable pages refunded.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_bulk_status","description":"Poll a bulk search job for progress and merged organic results. Polls are incremental: pass the previous response's `nextCursor` as `since` to receive only the organic results gathered after your last poll.","write_action":false,"price_micros":0,"input_schema":null},{"name":"seo_audit","description":"Audit a URL's SEO in one call: fetches it twice — as a pure HTTP bot (no JS) and fully rendered — and returns both views (title, description, canonical, h1, word count) plus the diff (JS-only content, changed title/description, canonical missing without JS) and bot-facing meta (robots, Open Graph, JSON-LD types). Use this instead of scraping manually when checking how a page indexes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"whitelist_ip","description":"Manage IP-auth whitelisting on a proxy service (Residential Basic, Datacenter, ISP, IPv6, Mobile): add or remove an IP, or list the current entries. A whitelisted machine uses the proxies without username/password — required for the Mobile V2 IP-auth proxy list. Residential Premium/Private use user:pass auth and don't need this.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":55,"grade":"C","scanned_at":"2026-09-21T13:03:35.671Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-21T13:03:35.652Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"packages":[{"registryType":"npm","identifier":"quantumproxies-mcp","version":"0.8.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-08-25T14:54:32.818Z","weeklyDownloads":40}],"repo":{"found":false},"icon":{"url":null,"source":"none"},"presence":{"stars":null,"forks":null,"downloadsWeek":40,"license":"MIT","lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}