A side-by-side look at the Scrapi and HasData Web Scraping MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Scrapi for search & data extraction work as a local process; choose HasData Web Scraping for search & data extraction as a local process. You can also run both side by side in one mcpServers block.
SCRAPI_API_KEY.scrape_url, scrape_urls, get_usage.HASDATA_API_KEY.hasdata_web_scraping_web_scraping_scrapeWebPage.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Search & Data Extraction | Search & Data Extraction |
| Quality signal | 59/100 · Good | 61/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | SCRAPI_API_KEY | HASDATA_API_KEY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 5 | 11 |
| Directory activity | 1 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 5 | 1 |
| Full listing | View Scrapi | View HasData Web Scraping |
scrape_urlScrapes a webpage and returns the content in AI-readable Markdown format. Can access blocked sites through browser rendering.scrape_urlsScrapes multiple webpages in parallel and returns the content in AI-readable Markdown format. Can access blocked sites through browser rendering.get_usageCheck API usage and remaining credits. Returns current plan, subscription credits, purchased credits, and total remaining credits.scraper_server_statusCheck the status of all ScraperServer instances. Shows server health, circuit breaker state, failure counts, and last success/failure times.get_billingRetrieve MCP billing information: subscription details, available plans, daily usage history, or spending limits.hasdata_web_scraping_web_scraping_scrapeWebPageScrape Web Page
Universal web scraper that fetches any public URL through managed proxies (datacenter or residential, geo-targeted) with optional JS rendering, custom headers, wait conditions, jsScenario actions (click, scroll, fill, waitFor), screenshots, resource/ad/URL blocking (these require JS rendering), and extractRules/aiExtractRules for LLM-driven structured extraction. Returns HTML, text, markdown, and/or JSON along with status code, extracted emails and links, CSS-selector extractions, and AI-structured fields per schema. Use as a fallback/universal fetcher for sites without a dedicated API, for scraping JS-heavy SPAs, capturing screenshots, or producing clean markdown/structured JSON to feed downstream parsers, RAG pipelines, or data warehouses.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"scrapi": {
"command": "npx",
"args": [
"-y",
"@scrapi.ai/mcp-server"
],
"env": {
"SCRAPI_API_KEY": "YOUR_SCRAPI_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"hasdata-web-scraping": {
"command": "npx",
"args": [
"-y",
"@hasdata/web-scraping-mcp"
],
"env": {
"HASDATA_API_KEY": "YOUR_HASDATA_API_KEY_HERE"
}
}
}
}