Web scraping MCP server β scrape, extract structured data, screenshot any site with anti-bot bypass.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Give Claude, Cursor, and Windsurf the ability to scrape any website, extract structured data, and take screenshots β with automatic anti-bot bypass.
Get Started Free β Β $1 free balance on signup β up to 5,000 scrapes.
Then set your API key: export ALTERLAB_API_KEY=sk_live_... or add it to .claude.json (see full setup below).
Claude's built-in WebFetch tool and open-source browser MCP servers fail on most real-world websites. They cannot bypass Cloudflare, render JavaScript SPAs, or extract structured data.
AlterLab replaces broken fetch tools with one MCP server that actually works:
| Capability | WebFetch / fetch() | Browser MCP | AlterLab MCP |
|---|---|---|---|
| Anti-bot bypass (Cloudflare, DataDome, Akamai) | No | Partial | Yes β automatic |
| JavaScript rendering (React, Angular, Vue SPAs) | No | Yes (slow) | Yes β headless Chromium |
| Structured data extraction (JSON, Schema.org) | No | No | Yes β built-in profiles |
| Smart tier escalation (cheapest method first) | N/A | N/A | Yes β saves 60-80% |
| Residential proxy rotation (195+ countries) | No | No | Yes |
| Screenshot and PDF capture | No | Screenshot only | Yes β both |
| OCR text extraction from images | No | No | Yes |
| Cost per request | Free (but fails) | Free (but slow) | From $0.0002 |
AlterLab uses a multi-tier scraping architecture. It automatically selects the cheapest method capable of fetching each URL:
Auto mode starts at Tier 1 and escalates only when blocked. Most websites resolve at Tiers 1-2, so $1 gets you 1,000 to 5,000 scrapes depending on the sites you target.
Add to your Claude config file (~/.claude.json for Claude Code, or Settings for Claude Desktop):
Add to .cursor/mcp.json in your project root:
Add to Windsurf MCP settings (~/.codeium/windsurf/mcp_config.json):
ALTERLAB_API_KEY field in your MCP configalterlab_scrape β Scrape Any WebpageScrape a URL and return its content as markdown, text, HTML, or JSON. Automatically handles anti-bot protection with tier escalation. Returns markdown by default β optimized for LLM context windows.
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | required | URL to scrape |
mode | auto | html | js | pdf | ocr | auto | Scraping mode |
formats | (text|json|html|markdown)[] | ["markdown"] | Output formats |
render_js | boolean | false | Use headless browser (+3 credits) |
use_proxy | boolean | false | Premium proxy (+1 credit) |
proxy_country | string | β | ISO country code for geo-targeting (e.g., US, DE) |
wait_for | string | β | CSS selector to wait for before extraction |
timeout | number | 90 | Timeout in seconds (1-300) |
include_raw_html | boolean | false | Include raw HTML alongside formatted content |
session_id | string (UUID) | β | Stored session ID for authenticated scraping |
cookies | Record<string, string> | β | Inline cookies for one-off authenticated requests |
alterlab_extract β Extract Structured DataExtract structured fields from any webpage using pre-built profiles or custom JSON Schema. Returns clean JSON β ready for databases, spreadsheets, or downstream processing.
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | required | URL to extract from |
extraction_profile | enum | auto | Profile: product, article, job_posting, faq, recipe, event |
extraction_schema | object | β | Custom JSON Schema for structured output |
extraction_prompt | string | β | Natural language extraction instructions |
render_js | boolean | false | Use headless browser |
use_proxy | boolean | false | Premium proxy |
Extraction profiles:
alterlab_screenshot β Screenshot Any PageTake a full-page screenshot of any URL. Returns a PNG image directly in the conversation β no URLs to copy, no files to download.
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | required | URL to screenshot |
wait_for | string | β | CSS selector to wait for before capture |
wait_until | enum | networkidle | networkidle, domcontentloaded, or load |
alterlab_estimate_cost β Estimate Before You ScrapeCheck how much a scrape will cost before running it. Returns the predicted tier, cost per request, and confidence level.
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | required | URL to estimate |
mode | enum | auto | Scraping mode |
render_js | boolean | false | Include JS rendering cost |
use_proxy | boolean | false | Include proxy cost |
alterlab_check_balance β Check Your CreditsCheck your account balance, total deposited, and total spent. No parameters needed.
alterlab_list_sessions β List Stored SessionsList all stored sessions for authenticated scraping. Sessions contain cookies for specific domains, allowing you to scrape content behind login walls.
alterlab_create_session β Create a SessionCreate a new stored session with cookies from a logged-in browser. The session is stored securely and can be reused across multiple scrape requests.
| Parameter | Type | Default | Description |
|---|---|---|---|
name | string | required | Human-readable name (e.g., "My Amazon Account") |
domain | string | required | Domain (e.g., "amazon.com") |
cookies | Record<string, string> | required | Cookie key-value pairs |
user_agent | string | β | Browser User-Agent to use with this session |
alterlab_validate_session β Validate a SessionCheck whether a stored session is still active and its cookies are valid.
| Parameter | Type | Default | Description |
|---|---|---|---|
session_id | string (UUID) | required | Session ID to validate |
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-server-55)<a href="https://allmcps.com/mcp/mcp-server-55"><img src="https://allmcps.com/api/badge/mcp-server-55?style=directory" alt="AlterLab MCP Server on AllMCPs" /></a>