Skip to main content
The ZenRows MCP (Model Context Protocol) server is the standard way AI systems use ZenRows. A single connection gives your AI assistant, agent, or application real-time access to any website.

View on GitHub

ZenRows MCP is open source. Star the repository, file issues, or contribute.

Why ZenRows MCP

  • Reach sites that normally block bots: Get access to any website at scale without getting blocked by anti-bot systems.
  • Managed scraping infrastructure: Proxy rotation, headless browser orchestration, anti-bot evasion, and session management run on ZenRows infrastructure.
  • Plug into any AI you already use: Works with any MCP client, including AI assistants, agent frameworks, AI SDKs, IDE plugins, and custom applications.
  • Plain English, no scraping code: Describe the task naturally and the AI picks the right tool. No selectors, no proxy management, no anti-bot tuning.

What you can do

Once connected, your AI assistant can:
  • Scrape any webpage by describing the task in plain English
  • Extract structured data from e-commerce sites, news pages, job boards, and more
  • Render pages as Markdown, plain text, HTML, or PDF
  • Take above-the-fold or full-page screenshots
  • Access geo-restricted, JavaScript-heavy, or bot-protected pages
  • Automate multi-step browser workflows: navigate, click, fill forms, scroll, drag, and extract across pages
  • Run JavaScript in a live browser context
  • Manage cookies, local storage, multiple tabs, and persistent sessions

Before you start

ZenRows Account

A ZenRows account

ZenRows API Key

Your ZenRows API key

Connection options

The ZenRows MCP server supports two transport options. Pick the one that fits your client. Both options expose the same set of tools and capabilities. The choice is purely about how your client connects to the server.

Remote MCP server

The hosted ZenRows MCP server is the recommended path for any AI application that calls an LLM API directly. The server runs on ZenRows’ infrastructure, so there is nothing to install, configure, or update.
  • Server URL:
    https://mcp.zenrows.com/mcp
  • Transport:
    Streamable HTTP
  • Authentication:
    OAuth-based. Pass your ZenRows API key as a Bearer token. See Authentication for details.
Example: OpenAI Responses API Most modern AI SDKs accept the connection details through a single MCP tool definition. Here is the complete configuration for the OpenAI Responses API:
Python
Generic configuration Most MCP clients accept either an authorization shorthand field that automatically wraps the value as a Bearer token, or a free-form headers field where you set the Authorization header yourself. Either approach works with ZenRows MCP.

Local MCP server

If your AI client runs the MCP server as a local subprocess instead of calling a remote URL, use the @zenrows/mcp npm package. This is the standard configuration for desktop AI clients.
You need Node.js installed for npx to work.
The exact location of the configuration file varies by client, but every supported client uses a similar MCP server config shape. Replace YOUR_ZENROWS_API_KEY with your actual key:
JSON

Per-client setup guides

For step-by-step instructions including the exact config file path and restart steps for each client:

Authentication

The ZenRows MCP server uses OAuth-based Bearer token authentication. Your ZenRows API key acts as the access token.
Send the key in the HTTP Authorization header on every request:
OpenAI’s MCP tool, Anthropic’s MCP tool, and most other MCP clients expose this through a single authorization field on the tool config and forward it as the Bearer token automatically. Some clients use a free-form headers field instead. Both approaches are valid.
You can find or rotate your API key in your ZenRows dashboard.
Treat your API key like a password. Do not commit it to source control or share it in client-side code.

Tools

A tool in MCP terms is a named capability the server exposes. For example, scrape or browser_navigate. When you ask your AI to fetch a webpage or fill a form, the AI sees the available tools, picks the one that fits the task, and invokes it. You don’t call tools yourself in code. You set up the MCP connection once, and the AI handles tool selection and invocation from there. The ZenRows MCP exposes two families of tools.

The scrape tool

The scrape tool fetches a webpage in a single request and returns its content in the format you specify: clean Markdown (default), plain text, raw HTML, a screenshot, a PDF, or structured JSON. It uses the Universal Scraper API under the hood. Best for quick data extraction where the AI doesn’t need to interact with the page.

Browser tools

The browser_* tools give your AI assistant control of a cloud-hosted browser session powered by the ZenRows Scraping Browser. The browser comes with built-in residential proxies and anti-bot bypass. Browser tools cover tasks that involve:
  • Navigation across multiple pages in a single session
  • Form fills, button clicks, and other element interactions
  • Waiting for dynamically loaded content
  • JavaScript execution in the browser context
  • Cookies, local storage, and multi-tab management
Every browser workflow starts with browser_navigate, which opens a session and returns a session_id. All subsequent browser calls use this session_id. Call browser_close when done.

Available browser tools

Pricing

The ZenRows MCP server itself is free. There is no separate fee for connecting, listing tools, or using the integration. Each tool call is billed against your ZenRows subscription using the standard pricing of the underlying product: You can monitor real-time usage and remaining quota on your Analytics page.

Troubleshooting

Connection issues

Scraped content issues

If your AI is connecting and invoking tools correctly but the scraped content comes back missing, blocked, or incomplete, the issue is with the target page rather than the MCP connection. Common causes include JavaScript-loaded content, anti-bot protection, geo-restrictions, and dynamic loading. See the Universal Scraper API troubleshooting guide for fixes you can ask your AI to apply. For example, “scrape with JavaScript rendering enabled” or “use Premium Proxies.”

Example prompts

Once ZenRows MCP is connected, describe the task to your AI assistant in plain English and it handles the scraping automatically.

Universal Scraper API Reference

Full parameter reference for the scrape tool’s underlying API.

Scraping Browser Introduction

Learn more about the browser powering the browser_* tools.

ZenRows Dashboard

Monitor usage, manage your API key, and track quota.

NPM Package

@zenrows/mcp on npm for local STDIO deployments.

Contributing

The ZenRows MCP server is open source. If you want to modify the server, fix a bug, or suggest an improvement, clone the GitHub repository and run it locally:
Bash
Pull requests and issues are welcome on the GitHub repository.