ScrapeUnblocker MCP server
MCP serverWeb & browsingThis integration lets your AI fetch the content of web pages that normally block automated access. It can pull a page's raw HTML or a cleaned-up, AI-parsed JSON version, so your AI can read and work with information from sites that would otherwise refuse the request.
Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.
Add to setup to save this item as a reference. Ahel cannot run it, and signing in will not install it.
What your AI can do with it
- Fetch the full HTML of any web page
- Get page content as AI-parsed JSON instead of raw HTML
- Access pages that use anti-bot protections
Getting started
- Save this item in Your setup as a reference.
- Read the source or reference documentation for its setup requirements. Saving it here does not connect it to your AI.
- Check this page for availability before trying to install it through Ahel.
From the project's README
As published by scrapeunblocker/scrapeunblocker-mcp in README.md.
A Model Context Protocol server that lets Claude (and any other MCP client) fetch any web page's HTML through the ScrapeUnblocker scraping API, bypassing anti-bot protection (Cloudflare, DataDome, PerimeterX, Akamai, Shape).
You bring your own API key. Nothing is shared or proxied through us.
Tools
| Tool | What it does |
|---|---|
fetch_html | Fetch the fully rendered HTML of a URL (optionally after running interactive browser steps). |
list_elements | List a page's notable elements with a ready-to-use selector for each (selector discovery). |
fetch_parsed | Fetch a page and return AI-parsed structured JSON. |
google_search | Run a Google search and return organic results as JSON. |
Browser steps (interact, then capture)
Some pages only reveal what you need after you interact with them - accept a
cookie banner, click a tab, type into a search box and submit, or scroll to
trigger lazy loading. Pass an optional steps array to fetch_html and those
actions run in a real browser, in order, after the page loads; the resulting
HTML is then returned.
Available actions:
| Action | Fields |
|---|---|
wait_for | selector, selector_type? (css/xPath/className/tagName), timeout_ms? |
wait_for_text | value, timeout_ms? |
wait | value (ms) |
click | selector, selector_type?, timeout_ms? |
type | selector, selector_type?, value, clear?, timeout_ms? (typed human-like) |
select | selector, selector_type?, value, timeout_ms? |
press_key | value (Enter, Tab, Escape, Backspace, Delete, Space, Arrow*, Home, End, PageUp, PageDown) |
scroll | value ("bottom" or a pixel offset) |
Steps are not idempotent - they run once per call. If a step fails,
fetch_html returns which step failed, why, and the page HTML at that moment so
you can fix the selector and retry.
List elements (discover selectors first)
list_elements loads a page and returns a JSON list of its notable elements
(links, inputs, buttons, selects, ...), each with a ready-to-use selector plus
tag, text and useful attributes (name, id, type, placeholder,
aria_label, href, ...):
{ "url": "https://example.com", "count": 42, "elements": [ { "tag": "input", "selector": "#search", "type": "text", "placeholder": "Search", "aria_label": "Search" } ] }
The natural workflow is discover, then act: call list_elements to find the
selectors you need, then pass matching steps to fetch_html to click/type/
select and capture the resulting HTML.
Get an API key
Sign up and grab your key at app.scrapeunblocker.com. The server
reads it from the SCRAPEUNBLOCKER_KEY environment variable.
Install
Claude Code
The easiest route is the official plugin, which installs this server for you,
prompts for your API key (stored in your OS keychain rather than an environment
variable), and adds a /scrape-url command plus reference skills:
/plugin marketplace add ScrapeUnblocker/claude-code-plugin
/plugin install scrapeunblocker@scrapeunblocker
See ScrapeUnblocker/claude-code-plugin.
To add the bare server instead:
claude mcp add scrapeunblocker \
--env SCRAPEUNBLOCKER_KEY=your_api_key_here \
-- npx -y scrapeunblocker-mcp
Claude Desktop
Add this to your claude_desktop_config.json
(Settings → Developer → Edit Config):
{
"mcpServers": {
"scrapeunblocker": {
"command": "npx",
"args": ["-y", "scrapeunblocker-mcp"],
"env": {
"SCRAPEUNBLOCKER_KEY": "your_api_key_here"
}
}
}
}
Restart Claude Desktop and the ScrapeUnblocker tools appear.
Any other MCP client
Run the server over stdio:
SCRAPEUNBLOCKER_KEY=your_api_key_here npx -y scrapeunblocker-mcp
Example prompts
- "Fetch the HTML of https://www.example-shop.com/product/123 and list the price."
- "This page keeps blocking me: . Use fetch_html to get it."
- "List the elements on , then use fetch_html steps to type 'laptop' into the search box, press Enter, wait for the results, and give me the HTML."
- "Search Google for 'best running shoes 2026' and give me the top 5 links."
Development
npm install
npm run build # bundles to dist/ with tsup
npm run typecheck
SCRAPEUNBLOCKER_KEY=... node dist/index.js # run the server
License
MIT
Signals
- GitHub stars
- 1
- Last commit
- Oct 2026
- Weekly downloads
- 355
- Weekly_downloads
- 61 weekly_downloads
Advanced
- Delivery
- scrapeunblocker-mcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
com-scrapeunblocker-scrapeunblocker-mcp- Source
- github.com/scrapeunblocker/scrapeunblocker-mcp
github.com/scrapeunblocker/scrapeunblocker-mcp
More in Web & browsing
MCP server
More in Web & browsingfirecrawl-mcp-server
MCP server · firecrawl
More in Web & browsingapify-mcp-server
MCP server · apify
More in Web & browsingBrowserbase
MCP server · browserbase
More in Web & browsinginspo
MCP server · nutlope
More in Web & browsingplaywright-mcp
MCP server · microsoft
More in Web & browsing