> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zenrows.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ZenRows MCP Integration for Claude Desktop

> Install and configure the ZenRows MCP server in Claude Desktop to scrape websites and extract structured content from conversations.

## Before You Start

You need:

<Columns cols={2}>
  <Card icon="user" href="https://app.zenrows.com/register" title="ZenRows Account">A **ZenRows account**</Card>
  <Card icon="key" href="https://app.zenrows.com/dashboard" title="ZenRows API Key">Your **ZenRows API key**</Card>
</Columns>

<Card icon="code" href="https://nodejs.org/en/download/" title="Node.js">Latest version of **Node.js** installed on your machine</Card>

## Setup

<Steps>
  <Step title="Step 1: Open the configuration file">
    Open the Claude Desktop configuration file for your operating system:

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

    If the file does not exist yet, create it.
  </Step>

  <Step title="Step 2: Add the ZenRows MCP server">
    Paste the following into the configuration file, replacing `YOUR_ZENROWS_API_KEY` with your actual API key:

    ```json theme={null}
    {
        "mcpServers": {
            "zenrows": {
                "command": "npx",
                "args": ["-y", "@zenrows/mcp"],
                "env": {
                    "ZENROWS_API_KEY": "YOUR_ZENROWS_API_KEY"
                }
            }
        }
    }
    ```
  </Step>

  <Step title="Step 3: Restart Claude Desktop">
    Save the file and fully quit Claude Desktop. Reopen it to load the new configuration.
  </Step>
</Steps>

## Verify the integration

Once Claude Desktop restarts, the ZenRows tools are available. You can confirm it loaded correctly by asking Claude:

```
Which tools do you have available?
```

Claude lists the `scrape` tool and the `browser_*` tools if the integration is active.

## Start scraping

Ask Claude to scrape a webpage or automate a browser workflow in plain English:

```
Get the product names and prices from https://www.scrapingcourse.com/ecommerce/.
```

```
Scrape https://www.scrapingcourse.com/antibot-bypass using Premium Proxies.
```

```
Fetch https://www.scrapingcourse.com/javascript-rendering/ with JavaScript rendering enabled and return the page as Markdown.
```

```
Open https://scrapingcourse.com/login in a browser, fill in the credentials, click submit, then extract the account details.
```

## Troubleshooting

**The `scrape` tool does not appear after restarting**

Confirm the configuration file is saved in the correct location and contains valid JSON. You can validate the JSON syntax at [jsonlint.com](https://jsonlint.com).

**Page content is missing or incomplete**

The page likely loads content dynamically. Ask Claude to enable JavaScript rendering:

```
Scrape https://www.scrapingcourse.com/javascript-rendering/ with `js_render: true`.
```

**Requests return a 403 or bot detection page**

Ask Claude to use Premium Proxies:

```
Scrape https://www.scrapingcourse.com/antibot-bypass using `premium_proxy: true`.
```

For more troubleshooting options, see the [ZenRows MCP overview](https://docs.zenrows.com/integrations/mcp/mcp-overview#troubleshooting).
