Skip to main content
Glama
oxylabs

Oxylabs MCP Server

Official

universal_scraper

Read-only

Extract web content using headless browser rendering, geo-location targeting, and multiple output formats (links, markdown, HTML).

Instructions

Get a content of any webpage.

Supports browser rendering, parsing of certain webpages and different output formats.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesWebsite url to scrape.
renderNo Whether a headless browser should be used to render the page. For example: - 'html' when browser is required to render the page.
geo_locationNo The geographical location that the result should be adapted for. Use ISO-3166 country codes. Examples: - 'California, United States' - 'Mexico' - 'US' for United States - 'DE' for Germany - 'FR' for France
output_formatNo The format of the output. Works only when parse parameter is false. - links - Most efficient when the goal is navigation or finding specific URLs. Use this first when you need to locate a specific page within a website. - md - Best for extracting and reading visible content once you've found the right page. Use this to get structured content that's easy to read and process. - html - Should be used sparingly only when you need the raw HTML structure, JavaScript code, or styling information.
user_agent_typeNoDevice type and browser that will be used to determine User-Agent header value.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.1

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation readOnlyHint=true already indicates a safe read operation. The description adds that browser rendering and parsing are supported, which is useful. However, it does not disclose potential limitations, error behaviors, or the meaning of 'certain webpages', so it adds only modest context beyond the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with two short sentences that front-load the core purpose. It is efficient but contains a grammatical awkwardness ('a content') and vague phrasing like 'certain webpages', preventing a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of multiple sibling scrapers and a 5-parameter schema, this description is too sparse. It does not explain when to use this generic scraper over specialized ones like amazon_product_scraper, nor does it clarify the render or geo_location options' implications. An output schema exists, which covers return format, but selection guidance is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with detailed parameter descriptions for url, render, geo_location, output_format, and user_agent_type. The tool description adds no additional parameter meaning beyond mentioning 'different output formats', which the schema already details. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets content from any webpage and supports browser rendering, parsing, and output formats. However, it does not differentiate itself from sibling tools like ai_scraper or ai_crawler, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The mention of browser rendering and parsing hints at use cases, but there are no exclusions or comparisons to sibling scrapers, leaving the agent without clear selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.