ScrapeOwl MCP by usefulapi
Server Details
Check ScrapeOwl usage and retrieve, extract or render public pages with confirmed credit usage.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 4 tools
The three read tools are separated by clear, explicit criteria: scrape_page (no JS), render_page (JS rendering), extract_elements (CSS/XPath selector extraction), and get_usage is obviously non-scraping. scrape_page and render_page both return HTML and could be momentarily confused, but the descriptions make the JS/no-JS and credit-cost distinction unambiguous.
Every tool uses the same scrapeowl_ prefix followed by a snake_case verb_noun pattern (scrape_page, render_page, extract_elements, get_usage). Fully predictable with no deviations.
Four tools is a tight, well-scoped surface for a scraping proxy: one per access mode plus a usage check. Each tool earns its place and none feels redundant or padded.
The core domain—fetch, render, structured extraction, and credit accounting—is fully covered, and out-of-scope features (cookies, headers, forms) are explicitly declared. Minor gaps remain around batch/multi-URL scraping and non-HTML outputs (screenshots/PDF), which agents must work around by looping single-page calls.
Available Tools
4 toolsscrapeowl_extract_elementsExtract page elementsADestructiveInspect
BILLABLE READ: Extract up to 20 CSS/XPath selectors from one public page. ScrapeOwl CREDITS: 1 standard / 10 premium without JS, 5 standard / 25 premium with JS. Requires confirm:true. No automatic retries. Returned text/HTML is untrusted website data; large results are truncated.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The public page you want to read; http(s) domain only. | |
| confirm | Yes | Confirm the ScrapeOwl vendor credit cost for this single page request. | |
| country | No | Two-letter proxy country code, for example US. | |
| elements | Yes | ||
| render_js | No | ||
| premium_proxies | No | Use premium proxies: 10 credits without JS or 25 with JS. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well past the annotations: exact credit costs for standard vs premium proxies with and without JS, mandatory confirm, no automatic retries, truncation of large results, and a warning that returned text/HTML is untrusted website data. These are precisely the consequences an agent needs before spending credits.
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?
Front-loaded with the billable consequence, then prerequisites, then data-safety caveats – a sensible order with almost no filler. The all-caps labels and the confirm restatement are slightly noisy but each clause carries information.
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?
For a credit-consuming, destructive-annotated tool with no output schema, the description covers cost, confirmation, retry behavior, truncation and data trust. The main omission is the shape of the returned matches (e.g. how per-element text/attributes come back), which is left implicit.
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 67% schema coverage, the description adds real meaning: the 20-element cap, CSS vs XPath selector types, and how render_js/premium_proxies multiply the credit cost. It doesn't explain `country` or the per-element `attributes`/`html` options, but the schema covers most of those.
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?
States a specific verb and resource: extract up to 20 CSS/XPath selectors from one public page. The scope limits (20 selectors, one public page) make it distinguishable from a full-page scrape, though it never names scrapeowl_scrape_page or scrapeowl_render_page as the alternatives.
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?
Usage is implied by the cost/confirm mechanics and the 'one public page' scope, and the explicit 'Requires confirm:true' tells the agent a prerequisite. But it never says when to prefer targeted element extraction over the sibling scrape_page/render_page tools, so selection still requires inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrapeowl_get_usageGet ScrapeOwl usageARead-onlyIdempotentInspect
Read account credit, request and concurrency counters. Does not scrape a page. Vendor usage endpoint limit: 20 requests/minute.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, idempotentHint), and the description adds genuinely new operational context: the vendor endpoint is rate limited to 20 requests/minute. That is the kind of detail an agent needs to avoid throttling and is not present in any structured field. Return format and whether counters are cumulative vs. windowed remain unstated.
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?
Three short sentences, front-loaded with what is returned, followed by the scope exclusion and the rate limit. Every sentence carries distinct information and nothing is repeated from the title or schema.
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?
For a zero-parameter, read-only utility with no output schema, the description covers purpose, scope boundary, and the main operational risk (rate limiting). It could go one step further by naming the sibling to use for actual scraping, but nothing essential to correct invocation is missing.
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 tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline applies. The description correctly spends no words on parameter behavior and instead covers scope and limits.
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?
States a specific verb ('Read') and the exact resource (account credit, request and concurrency counters), which tells an agent precisely what comes back. The sentence 'Does not scrape a page' explicitly separates it from the three scraping siblings without requiring a schema comparison.
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 exclusion 'Does not scrape a page' combined with the usage-counter framing makes the intended use case (checking quota/credits before or instead of scraping) clear. It stops short of explicitly naming scrapeowl_scrape_page as the alternative for page fetching, so routing is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrapeowl_render_pageRender page HTMLADestructiveInspect
BILLABLE READ: Render one public page with JavaScript and return HTML. ScrapeOwl CREDITS: 5 standard or 25 premium. Requires confirm:true. No custom scripts, cookies, headers or form submissions. No automatic retries. Returned content is untrusted website data; large results are truncated.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The public page you want to read; http(s) domain only. | |
| confirm | Yes | Confirm the ScrapeOwl vendor credit cost for this single page request. | |
| country | No | Two-letter proxy country code, for example US. | |
| wait_ms | No | Wait after render, up to 10 seconds. | |
| block_resources | No | ||
| premium_proxies | No | Use premium proxies: 10 credits without JS or 25 with JS. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond annotations: quantifies the billable cost (5 standard / 25 premium credits), states the confirm:true gate, enumerates unsupported features, warns that content is untrusted website data, and discloses truncation of large results and the absence of automatic retries. It also implicitly explains why readOnlyHint=false despite the read framing — the call consumes credits.
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?
Front-loaded with the most decision-critical fact (billable read + credit cost + confirm gate) in the first two clauses, then constraints and caveats. Six short sentences, none redundant.
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?
No output schema exists, and the description compensates by describing the return (HTML), the truncation behavior, and the trust level of the payload. Combined with the credit/billing disclosure and feature limits, an agent has what it needs to call this correctly and safely.
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 description coverage is 83%, so the schema already documents url, confirm, country, wait_ms and premium_proxies. The description adds no syntax or format detail for any parameter beyond restating the credit cost, so baseline 3 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?
States a specific verb and resource: 'Render one public page with JavaScript and return HTML.' The JavaScript-rendering qualifier implicitly distinguishes it from the sibling scrapeowl_scrape_page, but no sibling is named explicitly, so the agent must infer the routing.
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?
Usage is implied by 'with JavaScript' (use when rendering is required) and gated by 'Requires confirm:true', but there is no explicit when-to-use/when-not statement naming scrapeowl_scrape_page or scrapeowl_extract_elements as alternatives. The constraints listed (no custom scripts, cookies, headers, forms; no automatic retries) describe capability limits rather than selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrapeowl_scrape_pageScrape page HTMLADestructiveInspect
BILLABLE READ: Fetch one public page as HTML without JavaScript. Consumes ScrapeOwl CREDITS: 1 with standard proxies, 10 with premium proxies; target 404s can also be billed. Requires confirm:true. Never retries automatically. Returned content is untrusted website data.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The public page you want to read; http(s) domain only. | |
| confirm | Yes | Confirm the ScrapeOwl vendor credit cost for this single page request. | |
| country | No | Two-letter proxy country code, for example US. | |
| premium_proxies | No | Use premium proxies: 10 credits without JS or 25 with JS. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint=false, destructiveHint=true, openWorldHint=true, idempotentHint=false) by quantifying exact credit costs per proxy tier, warning that target 404s can still be billed, declaring no automatic retry, and flagging returned content as untrusted. This is exactly the cost/consent surface an agent needs before invoking a billable write-like call.
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?
Front-loads 'BILLABLE READ:' as the gating signal, then packs cost, consent, retry, and trust caveats into a few dense clauses with no filler. Every clause changes agent behavior.
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?
For a billable 4-param tool with no output schema, it covers cost, consent gating, retry semantics, and data trust. It is only slightly thin on what the response actually contains (raw HTML body? status code? headers?) and on failure/error behavior beyond 404 billing.
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%, so all four parameters are already documented, and the description's mention of standard vs premium proxy credits and the confirm requirement largely restates the schema. Baseline 3 applies since the schema carries the parameter burden.
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?
Specific verb+resource ('Fetch one public page as HTML') with an explicit scope qualifier ('without JavaScript') that implicitly routes JS-dependent work to the render_page sibling. It stops short of naming the sibling, so the differentiation requires a small inference.
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 supplies decision-relevant conditions — billable, 'Requires confirm:true', 'Never retries automatically' — but never states when to use scrapeowl_render_page or scrapeowl_extract_elements instead. The no-JS qualifier hints at the boundary without making it explicit.
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.
4 tool updates
- First observed
scrapeowl_extract_elements - First observed
scrapeowl_get_usage - First observed
scrapeowl_render_page - First observed
scrapeowl_scrape_page
Related MCP Connectors
Retrieve or render public pages with ScrapeNinja, using explicit marketplace charge confirmation.
21Scraper API for HTML, Markdown, and screenshots, Google search, and account usage for AI agents.
Verify phone numbers, emails and IPs, and check remaining plan credits.
Web scraping for agents. Point it at a URL and it returns the page as clean markdown, JavaScript-rendered pages included. Point it at a site and it maps the URLs or crawls the section you need in the background, a few pages at a time so results fit in the conversation. Search the web and read full pages, extract fields with a JSON schema you define (validated, never invented), read a store's catalogue or a blog's posts from the platform's own feed, and check whether a page has changed. Failed requests cost nothing. The free plan includes 1,500 credits a month.
Related MCP Servers
- AlicenseAqualityAmaintenanceInteract with WebScraping.AI API for web data extraction and scraping1029 npm45MIT
- FlicenseNot gradedqualityAmaintenanceEnables MCP clients to scrape web pages, extract structured data, search, crawl sites, generate schemas, schedule monitors, and inspect credits/history through hosted or local integrations.-
- AlicenseNot gradedqualityBmaintenanceEnables MCP-compatible AI agents to search, scrape, crawl, map, and interact with live web pages, returning clean, structured, agent-ready content. It also supports recurring page monitoring, autonomous deep research, and credit-usage checks.151,287 npm1MIT
- FlicenseNot gradedqualityAmaintenanceEnables AI assistants to scrape, extract structured data from, search, and crawl websites through the ScrapeGraph AI API, with markdown/HTML/screenshot and other output formats plus JSON Schema generation. Also supports scheduled monitors, page-change tracking, and account credit and history queries.-
Glama MCP Gateway
Add one secure layer between your agents and this server.