ScrapeGraph MCP Server
About
AI-powered web scraping using the ScrapeGraph AI API. Requires an API key.
Details
- Author
- ScrapeGraphAI
- GitHub stars
- 87
- Downloads
- 368
- Categories
- Web Scraping, AI, API, Other
Jump to
- Scrape webpages in multiple output formats (markdown, HTML, screenshot, etc.)
- Extract structured data using AI prompts and optional JSON schemas
- Perform web searches with configurable country and time filters
- Asynchronous multi-page crawling with start, status, stop, and resume
- Generate and augment JSON schemas from prompts
- Manage scheduled monitoring jobs with activity history
- Check account credits and paginated history
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
ScrapeGraph MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Configuring Claude Desktop For Local Server
To use your locally running server with Claude Desktop, update your configuration file:
macOS/Linux(~/Library/Application Support/Claude/claude_desktop_config.json):
{ "mcpServers": { "scrapegraph-mcp-local": { "command": "python", "args": [ "-m", "scrapegraph_mcp.server" ], "env": { "SGAI_API_KEY": "your-api-key-here" } } } }
Windows(%APPDATA%\Claude\claude_desktop_config.json):
{ "mcpServers": { "scrapegraph-mcp-local": { "command": "python", "args": [ "-m", "scrapegraph_mcp.server" ], "env": { "SGAI_API_KEY": "your-api-key-here" } } } }
Note: Make sure Python is in your PATH. You can verify by runningpython --versionin your terminal.
In Cursor's MCP settings, add a new server with:
- Command:python
- Args:["-m", "scrapegraph_mcp.server"]
- Environment Variables:{"SGAI_API_KEY": "your-api-key-here"}
- Verify Python is installed:python --version
- Check that the package is installed:pip list | grep scrapegraph-mcp
- Ensure API key is set:echo $SGAI_API_KEY(macOS/Linux) orecho %SGAI_API_KEY%(Windows)
- Check Claude Desktop logs:
- macOS:~/Library/Logs/Claude/
- Windows:%APPDATA%\Claude\Logs\
- Reinstall the package:pip install -e . --force-reinstall
- Verify dependencies:pip install -r requirements.txt(if available)
The ScrapeGraph MCP server can be integrated withGoogle ADK (Agent Development Kit)to create AI agents with web scraping capabilities.
- Python 3.13 or higher
- Google ADK installed
- ScrapeGraph API key
- Install Google ADK(if not already installed):
Create an agent file (e.g.,agent.py) with the following configuration:
import os from google.adk.agents import LlmAgent from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams from mcp import StdioServerParameters # Path to the scrapegraph-mcp server directory SCRAPEGRAPH_MCP_PATH = "/path/to/scrapegraph-mcp" # Path to the server.py file SERVER_SCRIPT_PATH = os.path.join( SCRAPEGRAPH_MCP_PATH, "src", "scrapegraph_mcp", "server.py" ) root_agent = LlmAgent( model='gemini-2.0-flash', name='scrapegraph_assistant_agent', instruction='Help the user with web scraping and data extraction using ScrapeGraph AI. ' 'You can convert webpages to markdown, extract structured data using AI, ' 'perform web searches, crawl multiple pages, and automate complex scraping workflows.', tools=[ MCPToolset( connection_params=StdioConnectionParams( server_params=StdioServerParameters( command='python3', args=[ SERVER_SCRIPT_PATH, ], env={ 'SGAI_API_KEY': os.getenv('SGAI_API_KEY'), }, ), timeout=300.0,) ), # Optional: Filter which tools from the MCP server are exposed # tool_filter=['scrape', 'extract', 'search'] ) ], )
- Default timeout is 5 seconds, which may be too short for web scraping operations
- Recommended: Set timeout=300.0
- Adjust based on your use case (crawling operations may need even longer timeouts)
- By default, all registered MCP tools are exposed to the agent (seeAvailable Tools)
- Usetool_filterto limit which tools are available:
tool_filter=['scrape', 'extract', 'search']
- Set via environment variable:export SGAI_API_KEY=your-keyenv
- Or pass directly indict:'SGAI_API_KEY': 'your-key-here'
- Environment variable approach is recommended for security
Once configured, your agent can use natural language to interact with web scraping tools:
# The agent can now handle queries like: # - "Convert https://example.com to markdown" # - "Extract all product prices from this e-commerce page" # - "Search for recent AI research papers and summarize them" # - "Crawl this documentation site and extract all API endpoints"
For more information about Google ADK, visit theofficial documentation.
The server enables sophisticated queries across various scraping scenarios:
- Markdownify: "Convert the ScrapeGraph documentation page to markdown"
- Extract: "Extract all product names, prices, and ratings from this e-commerce page"
- Extract with scrolling: "Scrape this infinite scroll page with 5 scrolls and extract all items"
- Basic Scrape: "Fetch the HTML content of this JavaScript-heavy page with full rendering"
- Search: "Research and summarize recent developments in AI-powered web scraping"
- Search: "Search for the top 5 articles about machine learning frameworks and extract key insights"
- Search: "Find recent news about GPT-4 and provide a structured summary"
- Search: v2 does not applytime_range; phrase queries to bias recency in natural language instead
- Usecrawl_startpluscrawl_get_statusto map and capture multi-page content; there is no separatesitemaptool on v2.
- Crawl: "Crawl the blog in markdown mode and poll until complete"
- For structured fields per page, runextracton individual URLs (ormonitor_createon a schedule)
- Monitor: "Run this extract prompt onhttps://example.comevery day at 9am" (monitor_createwith interval)credits
- Credits / history:,history
- Agentic Scraper: "Execute a complex workflow: login, navigate to reports, download data, and extract summary statistics"
The server implements robust error handling with detailed, actionable error messages for:
- API authentication issues
- Malformed URL structures
- Network connectivity failures
- Rate limiting and quota management
When running on Windows systems, you may need to use the following command to connect to the MCP server:
C:\Windows\System32\cmd.exe /c npx -y @smithery/cli@latest run @ScrapeGraphAI/scrapegraph-mcp --config "{\"scrapegraphApiKey\":\"YOUR-SGAI-API-KEY\"}"
This ensures proper execution in the Windows environment.
"ScrapeGraph client not initialized"
- Cause: Missing API key
- Solution: SetSGAI_API_KEYenvironment variable or provide via--config
- Cause: Invalid API key
- Solution: Verify your API key at theScrapeGraph Dashboard
- Cause: Insufficient credits
- Solution: Add credits to your ScrapeGraph account
- Cause: Still processing (asynchronous operation)
- Solution: Keep pollingcrawl_get_status()`until status is "completed"
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"scrapegraph mcp server": {
"scrapegraph-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@ScrapeGraphAI/scrapegraph-mcp",
"--client",
"claude"
]
}
}
}
}
McpServers
{
"scrapegraph-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@ScrapeGraphAI/scrapegraph-mcp",
"--client",
"claude"
]
}
}
ScrapeGraph MCP Server
<p align="center">
</p>
A production-ready Model Context Protocol (MCP) server that provides seamless integration with the ScrapeGraph AI API. This server enables language models to leverage advanced AI-powered web scraping capabilities with enterprise-grade reliability.
Table of Contents
- Key Features
- Quick Start
- Available Tools
- Setup Instructions
- Remote Server Usage
- Local Usage
- Google ADK Integration
- Example Use Cases
- Error Handling
- Common Issues
- Development
- Contributing
- Documentation
- Technology Stack
- License
API v2
This MCP server targets ScrapeGraph API v2 (https://v2-api.scrapegraphai.com/api), aligned 1:1 with
scrapegraph-py PR #84. Auth uses the
SGAI-APIKEY header. Environment variables mirror the Python SDK:
- SGAI_API_URL — override the base URL (default https://v2-api.scrapegraphai.com/api)
- SGAI_TIMEOUT — request timeout in seconds (default 120)
- SGAI_API_KEY — API key (can also be passed via MCP scrapegraphApiKey or X-API-Key header)
> Legacy aliases (still honored): SCRAPEGRAPH_API_BASE_URL for SGAI_API_URL, SGAI_TIMEOUT_S for SGAI_TIMEOUT.
Key Features
- Scrape & extract: scrape (POST /scrape, multi-format), extract (POST /extract, URL + prompt)
- Search: search (POST /search; num_results clamped 3–20)
- Crawl: Async multi-page crawl with crawl_start / crawl_get_status / crawl_stop / crawl_resume
- Schema: schema (POST /schema) — generate or augment a JSON Schema from a prompt
- Monitors: Scheduled jobs via monitor_create, monitor_list, monitor_get, pause/resume/delete, monitor_activity (paginated tick history)
- Account: credits, history
- Easy integration: Claude Desktop, Cursor, Smithery, HTTP transport
- Developer docs: .agent/ folder
Migration: v2 → v3
v3 renames every MCP tool that diverged from the v2 API docs. Hard rename, no aliases.
| v2 (old) | v3 (new) |
|---|---|
| smartscraper | extract |
| searchscraper | search |
| smartcrawler_initiate | crawl_start |
| smartcrawler_fetch_results | crawl_get_status |
| sgai_history | history |
| generate_schema | schema |
| markdownify | removed — use scrape with output_format="markdown" |
Quick Start
1. Get Your API Key
Sign up and get your API key from the ScrapeGraph Dashboard
2. Install with Smithery (Recommended)
npx -y @smithery/cli install @ScrapeGraphAI/scrapegraph-mcp --client claude
3. Start Using
Ask Claude or Cursor:
- "Convert https://scrapegraphai.com to markdown"
- "Extract all product prices from this e-commerce page"
- "Research the latest AI developments and summarize findings"
That's it! The server is now available to your AI assistant.
Available Tools
| Tool | Role |
|------|------|
| scrape | POST /scrape (output_format: markdown, html, screenshot, branding, links, images, summary) |
| extract | POST /extract (requires website_url + user_prompt; optional output_schema) |
| search | POST /search (num_results 1–20; supports country_search, time_range, output_schema) |
| crawl_start | POST /crawl — extraction_mode markdown / html / links / images / summary / branding / screenshot |
| crawl_get_status | GET /crawl/:id (poll until status: completed) |
| crawl_stop, crawl_resume | POST /crawl/:id/stop \| resume |
| schema | POST /schema (generate or augment a JSON Schema from a prompt) |
| credits | GET /credits |
| history | GET /history (paginated, service filter) |
| monitor_create, monitor_list, monitor_get, monitor_pause, monitor_resume, monitor_delete | /monitor API |
| monitor_activity | GET /monitor/:id/activity (paginated tick history: id, createdAt, status, changed, elapsedMs, diffs) |
Removed: sitemap, agentic_scrapper, async-status polling, and (in v3) markdownify — use scrape with output_format="markdown".
Setup Instructions
To utilize this server, you'll need a ScrapeGraph API key. Follow these steps to obtain one:
1. Navigate to the ScrapeGraph Dashboard
2. Create an account and generate your API key
Automated Installation via Smithery
For automated installation of the ScrapeGraph API Integration Server using Smithery:
npx -y @smithery/cli install @ScrapeGraphAI/scrapegraph-mcp --client claude
Claude Desktop Configuration
Update your Claude Desktop configuration file with the following settings (located on the top rigth of the Cursor page):
(remember to add your API key inside the config)
{
"mcpServers": {
"@ScrapeGraphAI-scrapegraph-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@ScrapeGraphAI/scrapegraph-mcp",
"--config",
"\"{\\\"scrapegraphApiKey\\\":\\\"YOUR-SGAI-API-KEY\\\"}\""
]
}
}
}
The configuration file is located at:
- Windows: %APPDATA%/Claude/claude_desktop_config.json
- macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Cursor Integration
Add the ScrapeGraphAI MCP server on the settings:

Remote Server Usage
Connect to our hosted MCP server - no local installation required!
Claude Desktop Configuration (Remote)
Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"scrapegraph-mcp": {
"command": "npx",
"args": [
"mcp-remote@0.1.25",
"https://mcp.scrapegraphai.com/mcp",
"--header",
"X-API-Key:YOUR_API_KEY"
]
}
}
}
Cursor Configuration (Remote)
Cursor supports native HTTP MCP connections. Add to your Cursor MCP settings (~/.cursor/mcp.json):
{
"mcpServers": {
"scrapegraph-mcp": {
"url": "https://mcp.scrapegraphai.com/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}
Benefits of Remote Server
- No local setup - Just configure and start using
- Always up-to-date - Automatically receives latest updates
- Cross-platform - Works on any OS with Node.js
Local Usage
To run the MCP server locally for development or testing, follow these steps:
Prerequisites
- Python 3.13 or higher
- pip or uv package manager
- ScrapeGraph API key
Installation
1. Clone the repository (if you haven't already):
git clone https://github.com/ScrapeGraphAI/scrapegraph-mcp
cd scrapegraph-mcp
2. Install the package:
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



