B2B lead generation and web scraping MCP server. Provides tools for scraping Apollo.io, Google Maps, Airbnb, real estate listings, email validation, people search, and access to B2B lead databases.
ScraperCity exposes 16 tools with explicit schemas and descriptions. However, critical gaps undermine production readiness: (1) Most tool descriptions lack actionable context, they state WHAT but not WHEN or WHY to call them. E.g., 'Check account balance' doesn't explain it should be called FIRST before scraping. (2) Parameter descriptions are sparse or missing entirely. E.g., scrape_apollo's 'count' param lacks min/max bounds; scrape_maps' 'customGeolocation' object has no field documentation. (3) Output schemas are completely undocumented, no tool declares what fields it returns, forcing LLMs to guess. (4) Error handling is absent, no guidance on retryability, user-fixable vs. fatal errors, or recovery paths. (5) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. (6) Naming is mostly verb-noun compliant but some tools conflate multiple concerns (e.g., scrape_airbnb handles 'city', 'single', and 'bulk' modes in one tool). STDIO transport caps protocol score at 50.
Cancel a running scraper job.
Check the status of a scraper run. Returns status (RUNNING/SUCCEEDED/FAILED/CANCELLED), lead count, and download URL when complete.
Check account balance, plan, and billing info. Call this FIRST to verify credits before running any scrape.
Download the CSV results of a completed scraper run. Only works when status is SUCCEEDED.
Find comprehensive contact information and addresses from names, phones, emails, or addresses Cost: $0.0199 per result (searches with 0 matches are billed as 1 result).
List recent scraper runs with status, lead counts, and costs.
No output schemas documented. Tools declare input schemas but never specify what fields they return. LLMs cannot plan downstream calls or extract required data without knowing response structure.
Parameter constraints missing or incomplete. scrape_apollo 'count' lacks min/max (spec says 500-50,000 in description but not in schema); scrape_maps 'customGeolocation' object has no field documentation; scrape_airbnb 'mode' lacks enum constraint.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
Query the B2B lead database directly. Returns contacts with names, emails, phones, titles, companies. 100 per request, paginate with page param. Included with the $149/mo plan.
Extract professional host business information including emails, phone numbers, and registration details from Airbnb listings. Europe countries only. Cost: $0.019 per result ($19.00 per 1,000).
Extract verified home service professionals from Angi with ratings and contact details Cost: $0.0099 per listing.
Extract B2B leads from Apollo.io search URLs (Filters 1.0 only) Cost: $0.0039 per lead.
Extract business-for-sale listings with financials and broker contacts from BizBuySell Cost: $0.0099 per listing.
Extract commercial real estate listings and broker contact details from Crexi. Accepts Crexi property searches, city or market searches, and broker directory URLs. Cost: $0.029 per property.
Find distressed, motivated-seller properties in any US market - pre-foreclosures, foreclosures, auctions, and bank-owned (REO). Returns full address, distress type, value estimates, and property details. Pair with People Finder to reach the owner. Cost: $0.05 per property.
Extract business listings from Google Maps with contact details and reviews Cost: $0.01 per business.
Extract emails, phone numbers, and lead enrichment data from any website domain for outreach campaigns Cost: $0.0499 per contact found.
Verify email addresses for validity, deliverability, and quality scoring with company enrichment data Cost: $0.0072 per email.
Descriptions lack actionable context. Most state WHAT the tool does but not WHEN to call it or what prerequisites exist. E.g., check_wallet says 'Check balance' but not 'Call this FIRST before scraping to verify credits.' No dependency hints for multi-step workflows.
No error handling guidance. Tools declare no recovery paths, retryability, or user-fixable vs. fatal error classification. LLMs cannot determine next steps on failure.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Tools declare Risk levels (READ_ONLY, WRITE, REVERSIBLE) in metadata but not in MCP schema. cancel_run and download_results should carry destructiveHint/idempotentHint annotations.