Scrapfly

io.scrapfly.mcpPublished by mcp.scrapfly.iov1.0.0Updated Oct 26, 2026

Scrape any website, extract structured data, and collect web content at scale with AI agents

Overview

AI-generated overview

Scrapfly MCP gives an assistant live web access: scrape pages, extract structured data, take screenshots, and drive cloud browser sessions.

What you can do
  • Fetch and scrape pages with JS rendering, proxy pools and country targeting, plus one-shot screenshots and block detection
  • Extract structured JSON from complex sites and check account plan, credit usage and API key info
  • Open and manage stateful Cloud Browser sessions, including unblocking, navigation, downloads and performance runs
  • Interact with the open session: snapshots, clicks, typing, scrolling, script evaluation and element lookup
  • Manage credential vaults for logins, optionally synced from 1Password, and create, test or snooze alert rules on account metrics
When to use it
Useful when an assistant needs current web data that training data cannot provide: prices, listings, news, or pages behind JavaScript and anti-bot protection. Also fits visual checks via screenshots and multi-step browser flows such as logins.
Requirements
A Scrapfly account and API key, or OAuth2 sign-in on the hosted remote endpoint. The hosted server needs no install; local use runs the npm package or a self-hosted binary/Docker image, with SCRAPFLY_API_KEY or a per-request bearer key. Network access to Scrapfly is required.
Before you install
Scraping consumes paid API credits, and proxy pools differ in price; some targets require the pricier unblocker_ultra pool. Credential vault tools store site logins, and alert tools write to your account. Self-hosted server-key mode has no per-caller authentication, so keep it on loopback. Scraped page content and requests go to Scrapfly's service.

Installation

In SourceWeft

  1. Open Scrapfly in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Scrapfly MCP Server

[Scrapfly]

Give your AI real-time access to any website

🌐 Landing Page • 📖 Documentation • 🎮 Live Demo • 🔑 Get API Key


At a glance

Remote serverhttps://mcp.scrapfly.io/mcp (streamable HTTP, nothing to install)
Self-hostedGo binary (stdio or -http) or the Docker image of this repo, see Self-Hosted below
stdio-only clientsnpx mcp-remote https://mcp.scrapfly.io/mcp
AuthenticationOAuth2 sign-in on the remote server, or a Scrapfly API key (SCRAPFLY_API_KEY, Authorization: Bearer <key>)
Tools62: web scraping (5), account (2), Cloud Browser sessions (9), page interaction (17), WebMCP (2), credential vaults (15), alerts (12). Full list under Available Tools below.

Add it to any MCP client:

json
{  "mcpServers": {    "scrapfly": { "type": "http", "url": "https://mcp.scrapfly.io/mcp" }  }}

Tools that fetch pages need no setup beyond the key: web_get_page (quick fetch), web_scrape (full control: JS rendering, proxy pool, country, extraction) and screenshot.


What is Scrapfly MCP?

The Scrapfly MCP Server connects your AI assistants to live web data through the Model Context Protocol. Transform your AI from being limited by training data to having real-time access to any website.

✨ What Your AI Can Do

CapabilityDescription
🌐 Scrape Live DataPull current prices, listings, news, or any webpage content in real-time
🛡️ Bypass Anti-Bot SystemsAutomatically handle CAPTCHAs, proxies, JavaScript rendering, and rate limits
⚡ Extract Structured DataParse complex websites into clean JSON using AI-powered extraction
📸 Capture ScreenshotsTake visual snapshots of pages or specific elements for analysis

🏆 Why Scrapfly?

Built on battle-tested infrastructure used by thousands of developers:

📖 Learn more: Why Scrapfly MCP?


🚀 Quick Install

Click one of the buttons below to install the MCP server in your preferred IDE:

[Install in VS Code] [Install in VS Code Insiders] [Install in Visual Studio] [Install in Cursor]


📦 Manual Installation

Standard Configuration

Works with most MCP-compatible tools:

json
{  "servers": {    "scrapfly-cloud-mcp": {      "type": "http",      "url": "https://mcp.scrapfly.io/mcp"    }  }}

Cloud Configuration (NPX)

For tools that require a local process:

json
{  "mcpServers": {    "scrapfly": {      "command": "npx",      "args": [        "mcp-remote",        "https://mcp.scrapfly.io/mcp"      ]    }  }}

🔧 IDE-Specific Setup

VS Code

One-Click Install

[Install in VS Code]

Manual Install

Follow the VS Code MCP guide or use the CLI:

bash
code --add-mcp '{"name":"scrapfly-cloud-mcp","type":"http","url":"https://mcp.scrapfly.io/mcp"}'

After installation, Scrapfly tools will be available in GitHub Copilot Chat.

📖 Full guide: VS Code Integration

VS Code Insiders

One-Click Install

[Install in VS Code Insiders]

Manual Install

bash
code-insiders --add-mcp '{"name":"scrapfly-cloud-mcp","type":"http","url":"https://mcp.scrapfly.io/mcp"}'

📖 Full guide: VS Code Integration

Visual Studio

One-Click Install

[Install in Visual Studio]

Manual Install

  1. Open Visual Studio
  2. Navigate to GitHub Copilot Chat window
  3. Click the tools icon (🛠️) in the chat toolbar
  4. Click + Add Server to open the configuration dialog
  5. Configure:
    • Server ID: scrapfly-cloud-mcp
    • Type: http/sse
    • URL: https://mcp.scrapfly.io/mcp
  6. Click Save

📖 Full guide: Visual Studio MCP documentation

Cursor

One-Click Install

[Install in Cursor]

Manual Install

  1. Go to Cursor Settings → MCP → Add new MCP Server
  2. Use the standard configuration above
  3. Click Edit to verify or add arguments

📖 Full guide: Cursor Integration

Claude Code

Use the Claude Code CLI:

bash
claude mcp add scrapfly-cloud-mcp --url https://mcp.scrapfly.io/mcp

📖 Full guide: Claude Code Integration

Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

json
{  "mcpServers": {    "scrapfly": {      "command": "npx",      "args": ["mcp-remote", "https://mcp.scrapfly.io/mcp"]    }  }}

📖 Full guide: Claude Desktop Integration

Cline

Add to your Cline MCP settings:

json
{  "scrapfly-cloud-mcp": {    "type": "http",    "url": "https://mcp.scrapfly.io/mcp"  }}

📖 Full guide: Cline Integration

Windsurf

Follow the Windsurf MCP documentation using the standard configuration.

📖 Full guide: Windsurf Integration

Zed

Add to your Zed settings:

json
{  "context_servers": {    "scrapfly-cloud-mcp": {      "type": "http",      "url": "https://mcp.scrapfly.io/mcp"    }  }}

📖 Full guide: Zed Integration

OpenAI Codex

Create or edit ~/.codex/config.toml:

toml
[mcp_servers.scrapfly-cloud-mcp]url = "https://mcp.scrapfly.io/mcp"

📖 More info: Codex MCP documentation

Gemini CLI

Follow the Gemini CLI MCP guide using the standard configuration.

OpenCode

Add to ~/.config/opencode/opencode.json:

json
{  "$schema": "https://opencode.ai/config.json",  "mcp": {    "scrapfly-cloud-mcp": {      "type": "http",      "url": "https://mcp.scrapfly.io/mcp",      "enabled": true    }  }}

📖 More info: OpenCode MCP documentation


🛠️ Available Tools

The Scrapfly MCP Server exposes 62 tools in seven groups. Most tasks need only the first group.

Web scraping (5)

Stateless, one call per page.

ToolDescriptionUse Case
scraping_instruction_enhancedCheat-sheet of the scraping optionsOptional, when the right options are unclear
web_get_pageQuick page fetch with smart defaultsSimple scraping tasks
web_scrapeFull control: headers, JS rendering, country, proxy pool, extractionComplex scraping, login flows
screenshotOne-shot PNG of a URLVisual analysis, monitoring
check_if_blockedDecide whether a scrape result is a block pageRetry or escalate the proxy pool

Account (2)

ToolDescription
info_accountSubscription plan, API credit usage, concurrency
info_api_keyThe API key this server is authenticated with

Cloud Browser sessions (9)

A stateful real browser, kept between calls.

ToolDescription
cloud_browser_openStart a session at a URL
browser_unblockSame, through the anti-bot bypass first
cloud_browser_navigateLoad a new URL in the open session
cloud_browser_sessionsList active sessions
cloud_browser_closeClose the session
cloud_browser_screenshotPNG of the session, optionally of a CSS selector
cloud_browser_evalRun JavaScript and return its value
cloud_browser_downloadsFiles downloaded during the session
cloud_browser_performancePageSpeed-style lab run with mobile throttling

Page interaction (17)

Act on the open Cloud Browser session. Elements are addressed by the uid that take_snapshot returns.

take_snapshot, take_screenshot, find_elements, get_page_url, evaluate_script, click, hover, drag, fill, type_text, press_key, select_option, dropdown_options, scroll, scroll_to_text, go_back, wait

WebMCP (2)

For pages that register their own tools with navigator.modelContext.

list_webmcp_tools, call_webmcp_tool

Credential vaults (15)

Store logins for Cloud Browser sessions, optionally mirrored from 1Password.

cloud_browser_vault_create, cloud_browser_vault_list, cloud_browser_vault_get, cloud_browser_vault_update, cloud_browser_vault_delete, cloud_browser_vault_rotate, cloud_browser_vault_item_create, cloud_browser_vault_item_list, cloud_browser_vault_item_update, cloud_browser_vault_item_delete, cloud_browser_vault_service_link, cloud_browser_vault_service_update, cloud_browser_vault_service_sync, cloud_browser_vault_service_test, cloud_browser_vault_service_unlink

Alerts (12)

Create, test and snooze alert rules on your account metrics. Writes take a confirm step.

alert_metric_families, alert_preview, alert_create, alert_update, alert_delete, alert_get, alert_list, alert_count_active, alert_series, alert_test, alert_snooze, alert_unsnooze

📖 Full reference: Tools & API Specification

Proxy pools

web_scrape and web_get_page take a proxy_pool, which sets both the proxies and the Unblocker (anti-bot bypass):

proxy_poolWhat it runs
basicdatacenter proxies, Unblocker off
unblockerresidential proxies, Unblocker on
unblocker_ultraresidential proxies, Unblocker on, the only pool accepted by targets and anti-bot protections that have a price of their own
autothe API picks the pool before the request, from the target's profile: the Unblocker on datacenter proxies, or the pool the target needs; priced as the pool it runs on

Pick the pool a site needs: basic where datacenter proxies get through, unblocker or unblocker_ultra where it needs residential proxies and the Unblocker, auto to let the API pick. A target or an anti-bot protection with a price of its own refuses basic and unblocker with ERR::PROXY::UNBLOCKER_ULTRA_REQUIRED (HTTP 422, not billed): resend with proxy_pool=unblocker_ultra, or with proxy_pool=auto, which is accepted on every target, the ones that require unblocker_ultra included, where their price is added. public_tor_pool runs on the Tor network (.onion).

Deprecated: unblocker and asp

The unblocker input of web_scrape and its former name asp are deprecated: use proxy_pool (unblocker_ultra for the Unblocker). The migration guide covers requests written before the proxy pools, the pool names public_datacenter_pool and public_residential_pool included. Without a proxy_pool, the server sends the API no pool and, by default, asp=true, a request the guide covers as well.

Example: Scrape a Page

User: "What are the top posts on Hacker News right now?"
AI: Uses web_get_page to fetch https://news.ycombinator.com and returns current top stories

Example: Extract Structured Data

User: "Get all product prices from this Amazon page"
AI: Uses web_scrape with extraction_model="product_listing" to return structured JSON

📖 More examples: Real-World Examples


🔐 Authentication

Scrapfly MCP supports multiple authentication methods:

MethodBest ForDocumentation
OAuth2Production, multi-user appsOAuth2 Setup
API KeyPersonal use, developmentAPI Key Setup
Header AuthCustom integrationsHeader Auth

🔑 Get your API key: Scrapfly Dashboard


📊 Configuration Reference

SettingValue
Server Namescrapfly-cloud-mcp
TypeRemote HTTP Server
URLhttps://mcp.scrapfly.io/mcp
ProtocolMCP over HTTP/SSE

🖥️ Self-Hosted / Local Deployment

You can run the Scrapfly MCP server locally or self-host it.

CLI Arguments

FlagDescription
-http <address>Start HTTP server at the specified address (e.g., :8080). Takes precedence over PORT env var. In server-key mode this binds loopback (127.0.0.1) unless you also pass -allow-remote.
-apikey <key>Use this API key instead of the SCRAPFLY_API_KEY environment variable.
-allow-remoteServer-key HTTP mode only: permit binding a non-loopback interface. That mode performs no per-caller authentication — every request uses the baked-in key — so only enable this behind your own auth proxy.
-verify-sslVerify TLS certificates on outbound calls (default true). Set false only when targeting a host that serves a self-signed certificate.

Environment Variables

VariableDescription
PORTHTTP port to listen on. Used if -http flag is not set.
SCRAPFLY_API_KEYScrapfly API key baked into the server. When set, the server uses it for every request (server-key mode) and does not read a per-request key.
SCRAPFLY_ALLOW_REMOTE1/true is the env equivalent of -allow-remote.
SCRAPFLY_VERIFY_SSL0/false is the env equivalent of -verify-ssl=false.

Per-request key: start the server without a baked-in key (-http only) and each caller supplies their own key per request — as Authorization: Bearer <key>, or ?key=<key> / ?apiKey=<key>. This path is authenticated; the server-key path above is not, which is why it stays on loopback by default.

Examples

bash
# Start HTTP server on port 8080./scrapfly-mcp -http :8080
# Start HTTP server using PORT env varPORT=8080 ./scrapfly-mcp
# Start with an API key. Prefer the environment variable: a key passed as a# flag lands in your shell history and in the process list.# Server-key mode has no per-caller auth, so it binds 127.0.0.1 here.SCRAPFLY_API_KEY=... ./scrapfly-mcp -http :8080
# Same, but expose it on all interfaces — only behind your own auth proxy.SCRAPFLY_API_KEY=... ./scrapfly-mcp -http 0.0.0.0:8080 -allow-remote
# Start in stdio mode (for local MCP clients)./scrapfly-mcp

Docker

bash
# Builddocker build -t scrapfly-mcp .
# Run (Smithery compatible - uses PORT env var)docker run -p 8080:8080 scrapfly-mcp
# Run with custom portdocker run -e PORT=9000 -p 9000:9000 scrapfly-mcp

🤝 Framework Integrations

Scrapfly MCP also works with AI frameworks and automation tools:

📖 All integrations: Integration Index


📚 Resources


💬 Need Help?


[Scrapfly]
Made with ❤️ by Scrapfly
The Web Scraping API for Developers

Source: README.md at commit 1532d43

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.