# ZenRows — how to use (mcp.ai)

Connect your ZenRows account and use 14 tools for web scraping straight from your AI agent. Connect with your own API key. ZenRows is a web scraping API allowing developers to bypass CAPTCHAs and blocks, gather structured data from dynamic websites, and quickly integrate results into applications.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_zenrows?ms=1787291460000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `zenrows_get_api_usage`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/zenrows`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/zenrows/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/zenrows/get/api/usage` — This tool retrieves the current API usage statistics and limits for your ZenRows account. It is an independent action that requires no additional parameters besides authentication. It is useful for mo
- `POST https://api.mcp.ai/api/zenrows/get/concurrency/status/detailed` — This tool provides detailed information about the current concurrency status and limits of your ZenRows account by making a request to the API and analyzing the response headers. It is essential for m
- `POST https://api.mcp.ai/api/zenrows/get/original/status` — This tool retrieves the original HTTP status code returned by the target website, which is useful for debugging purposes. It returns the original status code in the response headers under 'x-zenrows-o
  - body: { url: string }
- `POST https://api.mcp.ai/api/zenrows/get/pdf/from/url` — This tool generates a PDF version of the scraped content from a given URL. It requires JavaScript rendering to be enabled and sets the response type to PDF, making it ideal for archiving web pages, cr
  - body: { url: string, wait?: integer, premium_proxy?: boolean }
- `POST https://api.mcp.ai/api/zenrows/get/plaintext` — This tool extracts plain text content from a webpage using the ZenRows API. By using the response_type=plaintext parameter, it strips HTML tags and formats the content into clean, plain text. It's use
  - body: { url: string, wait?: integer, js_render?: boolean, premium_proxy?: boolean }
- `POST https://api.mcp.ai/api/zenrows/get/real/estate/data` — A specialized tool for extracting structured data from real estate platforms like Zillow and Idealista. It leverages ZenRows' Real Estate API to fetch comprehensive property information, including pro
  - body: { tld?: string, country?: string, language?: string, platform: string, property_id: string }
- `POST https://api.mcp.ai/api/zenrows/get/response/compression` — A tool to fetch content from a URL using the ZenRows API with compression enabled to optimize bandwidth usage and improve performance. It supports gzip, deflate, and br compression encodings, handles 
  - body: { url: string, custom_headers?: object }
- `POST https://api.mcp.ai/api/zenrows/get/response/headers` — A tool to retrieve and parse response headers from ZenRows API requests. It provides critical metadata such as concurrency limits, available request slots, request cost, unique request ID, and final U
  - body: { url: string }
- `POST https://api.mcp.ai/api/zenrows/get/session/id` — This tool implements ZenRows' session management functionality to maintain the same IP address across multiple requests for up to 10 minutes. It supports parameters like url, session_id, and premium_p
  - body: { url: string, session_id: integer, premium_proxy?: boolean }
- `POST https://api.mcp.ai/api/zenrows/get/walmart/product` — This tool allows users to extract detailed product information from Walmart using ZenRows' specialized e-commerce scraping API. It provides structured data for Walmart products including product detai
  - body: { url: string, js_render?: boolean }
- `POST https://api.mcp.ai/api/zenrows/scrape/url/autoparse` — The ZENROWS_SCRAPE_URL_AUTOPARSE tool automatically parses and extracts structured data from any given URL using intelligent parsing capabilities. It eliminates the need for manual CSS selectors by au
  - body: { url: string, wait?: integer, js_render?: boolean, premium_proxy?: boolean }
- `POST https://api.mcp.ai/api/zenrows/scrape/url/html` — This tool extracts raw HTML data from a given URL using ZenRows' Universal Scraper API. It focuses on retrieving the pure HTML content of the webpage without automatic parsing or data extraction. It s
  - body: { url: string, wait?: integer, wait_for?: string, js_render?: boolean, session_id?: string, premium_proxy?: boolean, proxy_country?: string, custom_headers?: object, original_status?: boolean }
- `POST https://api.mcp.ai/api/zenrows/scrape/with/css/selectors` — This tool allows users to scrape specific elements from a webpage using CSS selectors. It is particularly useful for targeted data extraction rather than retrieving the entire page content. The endpoi
  - body: { url: string, wait?: integer, wait_for?: string, js_render?: boolean, css_selectors: object, premium_proxy?: boolean }
- `POST https://api.mcp.ai/api/zenrows/screenshot/url` — A tool to capture screenshots of web pages using ZenRows API. This tool allows you to take screenshots of entire web pages or specific elements, with customizable options for format and quality.
  - body: { url: string, wait?: integer, screenshot_format?: string, screenshot_quality?: integer, screenshot_fullpage?: boolean, screenshot_selector?: string }

## Example prompts
- "What can I do in ZenRows?"
- "Show me a summary of my ZenRows account"

## More
- Page: https://mcp.ai/zenrows
- Agent spec (llms.txt): https://mcp.ai/zenrows/llms.txt
- Postman collection: https://mcp.ai/zenrows/postman.json
