# Zyte MCP

> Zyte MCP lets your agent scrape and structure data directly from any website or search engine using browser automation. Need to bypass anti-bot measures? Use this connector to extract rendered HTML, run complex clicks across a site, or grab structured results from Google—all through natural conversation.

## Overview
- **Category:** data-analytics
- **Price:** Free
- **Tags:** web-extraction, serp-api, headless-browser, data-mining, proxy-management

## Description

Need web content that works like it was built for you? This MCP connects your AI agent directly to the Zyte API. It handles everything needed to bypass typical website restrictions and pull clean data from any source. You can tell your agent to extract raw HTML, or instruct it to simulate a user clicking through multiple pages—like scrolling down or waiting for content to load before grabbing the text. The tool also pulls structured organic results right out of Google searches. It even lets you capture screenshots or change the request country to see localized versions of a page. When running these kinds of sensitive data requests, your credentials pass through a zero-trust proxy on Vinkius. This means your keys are only used when sending the request; they never sit on disk. You can trust that this setup keeps everything secure while letting you pull massive amounts of data for analysis.

## Tools

### extract_data
Extract raw, rendered data content from a specified website URL.

### search_data
Fetches structured search engine results from major web domains.

### get_stats
Retrieves current usage metrics and cost data for your Zyte API account.

## Prompt Examples

**Prompt:** 
```
Extract the browser-rendered HTML from https://news.ycombinator.com
```

**Response:** 
```
I've extracted the rendered content from Hacker News. The page contains the latest tech stories and discussions. Would you like me to parse the top headlines for you?
```

**Prompt:** 
```
Search Google for 'best MCP servers' and give me the top 10 organic results.
```

**Response:** 
```
Searching Google... I've found 10 organic results. The top links include GitHub repositories, developer blogs, and official documentation for Model Context Protocol servers.
```

**Prompt:** 
```
Show me my current Zyte API usage and success rates.
```

**Response:** 
```
Fetching your stats... You have made 1,250 requests this month with a 99.2% success rate. Your total estimated cost so far is $5.40.
```

## Capabilities

### Extracting rendered web content
Pulls the full, browser-rendered HTML from a specified URL.

### Running multi-step automation sequences
Executes complex actions like simulated clicks or scrolling before pulling data.

### Fetching structured search results
Retrieves organized, organic results directly from major search engines.

### Localizing content and capturing media
Routes requests through specific geographical locations or captures images (PNG/JPEG) of the page.

## Use Cases

### Tracking Competitor Content
An SEO specialist needs to know what their top three competitors are saying about a new feature. They ask the agent to search Google using `search_data` and then use `extract_data` on the top results' URLs to pull key talking points from each article.

### Debugging Web Scrapers
A developer needs to see exactly what a website looks like before their scraper runs. They ask for browser-rendered HTML using `extract_data` and also request a screenshot, helping them debug client-side JavaScript issues.

### Analyzing Localized Market Copy
A marketing manager needs to confirm the messaging used in Brazil versus Germany. They ask the agent to run the same search query but route the requests through different countries, capturing localized content and screenshots.

## Benefits

- Bypass Anti-Bot Measures: Get data from sites that normally block scrapers. You can extract rendered content or run complex actions without manual workarounds.
- Comprehensive Search Results: Use `search_data` to pull structured organic results from Google and other engines, so you don't have to manually copy link snippets.
- Full Usage Visibility: Check your spending limits and success rates anytime using `get_stats`, keeping track of every request in the chat history.
- Advanced Extraction: The `extract_data` tool allows you to pull raw HTTP responses or fully rendered HTML, giving developers total control over the source material.
- Geographic Targeting: See how content changes by running requests through specific countries. This is crucial for SEO teams monitoring localized markets.

## How It Works

The bottom line is that it turns complex website interactions into simple chat commands.

1. Subscribe to this MCP and enter your Zyte API Key.
2. Connect your AI client, then prompt it with a request—for instance, 'Extract the content from X URL' or 'Search Google for Y'.
3. The agent runs the necessary web scraping sequence and returns the structured data (HTML, text, or results) to you.

## Frequently Asked Questions

**Can I take a screenshot of a website using this server?**
Yes! Use the `extract_data` tool and set the `screenshot` parameter to true. The agent will return the visual state of the page as requested.

**How do I get organic search results from Google?**
Use the `search_data` tool, specifying 'google.com' as the domain and your keywords as the query. You can also set `maxResults` to control the list length.

**Is it possible to monitor my Zyte API spending?**
Yes, by using the `get_stats` tool. Note that this requires you to provide your `ZYTE_DASHBOARD_API_KEY` during setup.

**What credentials are required to run `extract_data`?**
You must configure a Zyte API Key for this MCP to function. This key authenticates your calls and allows the agent to access the web extraction services. You'll enter this key once into your Vinkius profile.

**How does `extract_data` handle dynamic content loading?**
The tool supports full browser automation, meaning it can perform complex sequences like scrolling or clicking elements before extracting the data. This ensures you get content that only loads after user interaction.

**If my `search_data` request hits a rate limit, what should I do?**
The system will provide an error code indicating a rate limit breach. You'll need to wait for the specified cooldown period before retrying the search query. We recommend implementing exponential backoff in your workflow.

**Can I use this MCP from any AI client?**
Yes, you connect once from any MCP-compatible client like Claude or Cursor. Once connected to Vinkius, that single session allows your agent access to all the tools in this catalog.

**When using `extract_data`, can I choose between raw and rendered data?**
You can specify whether you want raw HTTP responses or fully browser-rendered HTML. This lets you decide if you need the underlying page code, or just what a user would actually see.