ScrapeAPI MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ScrapeAPI MCP ServerScrape https://blog.scrapeapi.dev and return the main article text"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ScrapeAPI MCP Server
Web scraping tools for Claude and other MCP-compatible LLM agents.
Tools available
Tool | Description |
| Scrape any URL and return text, links, images, metadata |
| Scrape up to 10 URLs in parallel |
| Extract specific fields using CSS selectors |
| Full-page screenshot as base64 PNG |
| Check remaining credit balance |
| Browse available pre-built datasets |
Related MCP server: FreeCrawl MCP Server
Setup in Claude Desktop
Get your API key at https://getscrapeapi.com
Open your Claude Desktop config file:
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add this:
{
"mcpServers": {
"scrapeapi": {
"command": "npx",
"args": ["-y", "@scrapeapi/mcp"],
"env": {
"SCRAPEAPI_KEY": "sk_your_api_key_here"
}
}
}
}Restart Claude Desktop
Usage examples
Once connected, just ask Claude:
"Scrape https://example.com and summarize the content"
"Extract all product prices from https://shop.example.com"
"Take a screenshot of https://dashboard.example.com"
"What datasets do you have available?"
Environment variables
Variable | Required | Description |
| Yes | Your ScrapeAPI key |
| No | Override API base URL |
Links
API Docs: https://getscrapeapi.com/docs
Pricing: https://getscrapeapi.com/#pricing
Support: hello@getscrapeapi.com
Available Tools
6 toolscheck_creditsA
Check the remaining scrape credits on the current API key. Use before running large scraping jobs to confirm sufficient balance.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses it is a read operation returning remaining credits and implies safety, but could more explicitly state no side effects or destructive potential.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and provide usage guidance without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description sufficiently explains what the tool returns (remaining credits) and why to use it. It is complete for a simple status-check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, baseline is 4. The description adds no further parameter details, which is appropriate since there are none, and implicitly confirms no input required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks remaining scrape credits on the current API key, using a specific verb and resource. It is distinct from sibling tools like scrape_url or extract_structured.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using before large scraping jobs to confirm sufficient balance, providing clear context and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_structuredA
Scrape a URL and extract specific fields using CSS selectors. Use when you need structured data from a known page layout (e.g. product price, article title, table data).
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL to scrape | |
| fields | Yes | List of fields to extract using CSS selectors | |
| javascript | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears full responsibility for behavioral disclosure. It fails to mention key behaviors such as whether JavaScript rendering is used (though a parameter exists), rate limits, authentication needs, or data retention policies. The description only covers core functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the action and resource, provides a clear usage example, and contains no superfluous words. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description explains the tool's niche among siblings (structured vs. general scraping), it omits details about the output format (likely a dict of field names to values) and does not mention the javascript parameter's impact. Overall, it covers the essential context but has minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all three parameters (url, fields, javascript) with descriptions. The tool description restates the concept of CSS selectors but adds no additional meaning beyond the schema. Given high schema coverage (67%+), a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'scrape' and resource 'URL', specifies extracting fields with CSS selectors, and distinguishes from sibling tools by focusing on structured data from known page layouts, with concrete examples (product price, article title).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint ('Use when you need structured data from a known page layout') but lacks explicit when-not-to-use guidance or alternatives like scrape_url for unstructured extraction or scrape_multiple for multiple pages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_datasetsA
List all available pre-built datasets. Use when the user wants ready-made data without scraping (jobs, real estate, prices, VC funding, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by category: Jobs & Labor, E-Commerce, Real Estate, Finance & VC, Social & Media |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description adds minimal behavioral detail beyond listing behavior; lacks info on pagination, rate limits, or read-only nature, though it's a simple list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no superfluous text; front-loaded with main action and purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a simple list tool with one optional param; explains what 'pre-built datasets' means and gives examples, though no output schema necessitates no return value details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameter documentation; description does not add extra meaning beyond listing a filter example, so baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'List all available pre-built datasets' with concrete examples (jobs, real estate, prices, VC funding), distinguishing it from sibling scraping tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when the user wants ready-made data without scraping', providing clear context and implicitly excluding scraping scenarios handled by sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrape_multipleB
Scrape multiple URLs in parallel and return results for each. Use when you need to compare or aggregate data from several pages.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | List of URLs to scrape (max 10) | |
| extract_text | No | ||
| extract_links | No | ||
| extract_metadata | No | ||
| javascript | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It mentions 'in parallel' and 'return results for each,' but fails to specify error handling, concurrency limits, side effects, or any authentication requirements. Key behavioral information is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences front-loaded with the core purpose. Every sentence adds value with no unnecessary words, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters and no output schema, the description is too brief. It does not explain the return format (e.g., structure of individual results) or differentiate from the sibling 'scrape_url' (which may have similar parameters). The parameter booleans remain undefined, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 20% description coverage (only 'urls' is described). The tool's description adds no additional parameter meaning beyond the schema, leaving the booleans (extract_text, extract_links, etc.) unexplained. The agent lacks understanding of how these parameters affect scraping behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Scrape multiple URLs in parallel and return results for each,' which is a specific verb and resource. It implicitly distinguishes from the sibling 'scrape_url' by highlighting parallel execution for multiple URLs, but does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides a use case: 'Use when you need to compare or aggregate data from several pages.' This gives clear context for when to use the tool. However, it does not mention when not to use or suggest alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrape_urlA
Scrape any public URL and return structured data: text, links, images, and metadata. Automatically detects whether JavaScript rendering is needed. Use this when you need to read the content of a webpage.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The full URL to scrape (must include https://) | |
| extract_text | No | Return the visible text content of the page | |
| extract_links | No | Return all href links found on the page | |
| extract_images | No | Return all image URLs found on the page | |
| extract_metadata | No | Return page title, description, and Open Graph tags | |
| javascript | No | Force JavaScript rendering via headless browser. Use for SPAs or pages that require JS to load content. | |
| proxy_country | No | ISO 3166-1 alpha-2 country code to geo-target the scrape (e.g. US, GB, KE, DE) | |
| wait_for | No | CSS selector to wait for before extracting content. Useful for lazy-loaded content. | |
| timeout | No | Request timeout in milliseconds (1000–60000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses automatic detection of JavaScript rendering needs, which is a key behavioral trait. It also implies the tool fetches and returns structured data, but does not mention potential issues like robots.txt or rate limits. Overall, the transparency is good but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first defines the tool's function and output, the second gives a usage guideline. No unnecessary words, perfectly front-loaded. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of 9 parameters and no output schema, the description covers the main output (text, links, images, metadata) and key behaviors. It does not explicitly describe the return format or pagination, but for a scraping tool this is acceptable. Lacks mention of error handling or constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for each parameter. The tool description adds overarching context (e.g., automatic JavaScript detection) but does not provide additional semantic meaning beyond what the schema already offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool scrapes any public URL and returns structured data including text, links, images, and metadata. It uses a specific verb ('scrape') and resource ('URL'), and the mention of returning structured data distinguishes it from siblings like take_screenshot or scrape_multiple.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides usage context: 'Use this when you need to read the content of a webpage.' It does not, however, specify when not to use it or mention alternatives like scrape_multiple for multiple URLs, which limits differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
take_screenshotA
Take a full-page screenshot of a URL and return it as a base64-encoded PNG. Use for visual verification, capturing charts, or archiving page appearances.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL to screenshot | |
| wait_for | No | CSS selector to wait for before taking the screenshot | |
| timeout | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully convey behavioral traits. It mentions returning a base64 PNG and being full-page, but lacks details on page load behavior, viewport, or limitations like dynamic content. With no annotation coverage, this leaves important gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences front-loaded with the action and output format. No wasted words, well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should provide more context about page load behavior, viewport, and error handling. The examples help but are insufficient for a full understanding of tool behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 67% of parameters with descriptions. The tool description adds no additional meaning beyond what the schema provides for 'url' and 'wait_for'. The 'timeout' parameter lacks a description in schema, and the description does not clarify it. Baseline is adequate but not improved.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool takes a full-page screenshot of a URL and returns it as a base64-encoded PNG. It distinguishes from sibling tools that likely return text data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases: visual verification, capturing charts, archiving appearances. Does not explicitly state when not to use or mention alternatives, but context from sibling names suggests text extraction tools for other needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
6 tool updates
v1.0.0- First observed
check_credits - First observed
extract_structured - First observed
list_datasets - First observed
scrape_multiple - First observed
scrape_url - First observed
take_screenshot
TDQS
Each tool targets a distinct function: account credits, general scraping, structured extraction, bulk scraping, pre-built datasets, and screenshots. No overlapping purposes.
All tools use consistent snake_case with verb_noun pattern (check_credits, extract_structured, list_datasets, etc.), making them predictable.
Six tools cover the essential capabilities of a scraping API without being excessive. The scope is well-defined and each tool earns its place.
The tool set covers core scraping workflows (single, multiple, structured, screenshots, credit checks, and pre-built datasets). Minor gaps like dataset management exist but don't hinder typical use.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Screenshot any URL/HTML as PNG/JPEG/WebP, or read it as clean Markdown/text for LLMs.
Read a URL as clean markdown, screenshot a website, url to PDF. Web access for agents, no signup.
Turn any URL into clean Markdown and structured data. Scrape, crawl, search and extract.
Web scraping for AI agents. Extract text and metadata from any URL worldwide. $0.005/page.
Related MCP Servers
- FlicenseBqualityDmaintenanceEnables fetching visible text content and extracting all links from web pages through URL requests. Designed specifically for LM Studio integration to provide web scraping capabilities.22-
- AlicenseNot gradedqualityDmaintenanceEnables web scraping and document processing with JavaScript execution, anti-detection measures, batch processing, and structured data extraction. Supports multiple formats including markdown, HTML, screenshots, and handles PDFs with OCR capabilities.4MIT
- AlicenseNot gradedqualityCmaintenanceEnables web scraping and crawling capabilities for LLM clients, supporting single-page scraping, multi-page website crawling, and web search with multiple engines (Playwright, Cheerio, Puppeteer) and flexible output formats including markdown, HTML, text, and screenshots.146MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI models to scrape and extract structured data from any website globally using a 195+ country proxy network with JavaScript rendering, anti-bot bypass, and output in Markdown, HTML, or Links format.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kenn-kentonm/scrapeapi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server