oxylabs-mcp
Fetch and process content from specified URLs & sources using the Oxylabs Web Scraper API.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen ai_map
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"oxylabs-mcp": {
"command": "uvx",
"args": [
"oxylabs-mcp"
]
}
}
}Paquetes ejecutables
0.9.1stdioPuntos de conexión remotos
https://mcp.oxylabs.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (10)
🟢ai_crawler(url, user_prompt, output_format, schema, render_javascript, ...)
Tool useful for crawling a website from starting url and returning data in a specified format. Schema is required only if output_format is json, csv or toon. 'render_javascript' is used to render javascript heavy websites. 'return_sources_limit' is used to limit the number of sources to return, for example if you expect results from single source, you can set it to 1.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"description": "The URL from which crawling will be started.",
"type": "string"
},
"user_prompt": {
"description": "What information user wants to extract from the domain.",
"type": "string"
},
"output_format": {
"default": "markdown",
"description": "The format of the output. If json, csv or toon, the schema is required. Markdown returns full text of the page. CSV returns data in CSV format. Toon(Token-Oriented Object Notation) returns data in Toon format, which is optimized for AI agents.",
"enum": [
"json",
"markdown",
"csv",
"toon"
],
"type": "string"
},
"schema": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"description": "The JSON schema to use for structured data extraction from the crawled pages. Only required if output_format is json, csv or toon."
},
"render_javascript": {
"default": false,
"description": "Whether to render the HTML of the page using javascript. Much slower, therefore use it only for websites that require javascript to render the page. Unless user asks to use it, first try to crawl the page without it. If results are unsatisfactory, try to use it.",
"type": "boolean"
},
"return_sources_limit": {
"default": 25,
"description": "The maximum number of sources to return.",
"maximum": 50,
"type": "integer"
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two letter ISO country code to use for the crawl proxy."
}
},
"required": [
"url",
"user_prompt"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢ai_scraper(url, output_format, schema, render_javascript, geo_location)
Scrape the contents of the web page and return the data in the specified format. Schema is required only if output_format is json or csv. 'render_javascript' is used to render javascript heavy websites.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"description": "The URL to scrape",
"type": "string"
},
"output_format": {
"default": "markdown",
"description": "The format of the output. If json, csv or toon, the schema is required. Markdown returns full text of the page. CSV returns data in CSV format, tabular like data. Toon(Token-Oriented Object Notation) returns data in Toon format, which is optimized for AI agents.",
"enum": [
"json",
"markdown",
"csv",
"toon"
],
"type": "string"
},
"schema": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"description": "The JSON schema to use for structured data extraction from the scraped page. Only required if output_format is json, csv or toon."
},
"render_javascript": {
"default": false,
"description": "Whether to render the HTML of the page using javascript. Much slower, therefore use it only for websites that require javascript to render the page.Unless user asks to use it, first try to scrape the page without it. If results are unsatisfactory, try to use it.",
"type": "boolean"
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two letter ISO country code to use for the scrape proxy."
}
},
"required": [
"url"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢ai_browser_agent(url, task_prompt, output_format, schema, geo_location)
Run the browser agent and return the data in the specified format. This tool is useful if you need navigate around the website and do some actions. It allows navigating to any url, clicking on links, filling forms, scrolling, etc. Finally it returns the data in the specified format. Schema is required only if output_format is json, csv or toon. 'task_prompt' describes what browser agent should achieve
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"description": "The URL to start the browser agent navigation from.",
"type": "string"
},
"task_prompt": {
"description": "What browser agent should do.",
"type": "string"
},
"output_format": {
"default": "markdown",
"description": "The output format. Markdown returns full text of the page including links. Toon(Token-Oriented Object Notation) returns data in Toon format, which is optimized for AI agents. If json, csv or toon, the schema is required.",
"enum": [
"json",
"markdown",
"html",
"csv",
"toon"
],
"type": "string"
},
"schema": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"description": "The schema to use for the scrape. Only required if output_format is json, csv or toon."
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two letter ISO country code to use for the browser proxy."
}
},
"required": [
"url",
"task_prompt"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢ai_search(query, limit, render_javascript, return_content, geo_location)
Search the web based on a provided query. 'return_content' is used to return markdown content for each search result. If 'return_content' is set to True, you don't need to use ai_scraper to get the content of the search results urls, because it is already included in the search results. if 'return_content' is set to True, prefer lower 'limit' to reduce payload size.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "The query to search for.",
"type": "string"
},
"limit": {
"default": 10,
"description": "Maximum number of results to return.",
"maximum": 50,
"type": "integer"
},
"render_javascript": {
"default": false,
"description": "Whether to render the HTML of the page using javascript. Much slower, therefore use it only if user asks to use it.First try to search with setting it to False. ",
"type": "boolean"
},
"return_content": {
"default": false,
"description": "Whether to return markdown content of the search results.",
"type": "boolean"
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two letter ISO country code to use for the search proxy."
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢generate_schema(user_prompt, app_name)
Generate a json schema in openapi format.
Esquema de entrada
{
"type": "object",
"properties": {
"user_prompt": {
"type": "string"
},
"app_name": {
"enum": [
"ai_crawler",
"ai_scraper",
"browser_agent"
],
"type": "string"
}
},
"required": [
"user_prompt",
"app_name"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢ai_map(url, search_keywords, user_prompt, max_crawl_depth, render_javascript, ...)
Tool useful for mapping website's URLs.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"description": "The URL from which URLs mapping will be started.",
"type": "string"
},
"search_keywords": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "The keywords to use for URLs paths filtering. Keywords are matched as OR condition. Meaning, one keyword is enough to match the url path."
},
"user_prompt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "What kind of URLs user wants to find. Can be used together with 'search_keywords'."
},
"max_crawl_depth": {
"default": 1,
"description": "The maximum depth of the crawl.",
"maximum": 5,
"type": "integer"
},
"render_javascript": {
"default": false,
"description": "Whether to render the HTML of the page using javascript. Much slower, therefore use it only for websites that require javascript to render the page. Unless user asks to use it, first try to crawl the page without it. If results are unsatisfactory, try to use it.",
"type": "boolean"
},
"limit": {
"default": 25,
"description": "The maximum number of URLs to return.",
"maximum": 50,
"type": "integer"
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two letter ISO country code to use for the mapping proxy."
},
"allow_subdomains": {
"default": false,
"description": "Whether to map subdomains URLs as well.",
"type": "boolean"
},
"allow_external_domains": {
"default": false,
"description": "Whether to include external domains URLs.",
"type": "boolean"
}
},
"required": [
"url"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢universal_scraper(url, render, user_agent_type, geo_location, output_format)
Get a content of any webpage. Supports browser rendering, parsing of certain webpages and different output formats.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"description": "Website url to scrape.",
"type": "string"
},
"render": {
"anyOf": [
{
"const": "html",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Whether a headless browser should be used to render the page.\n For example:\n - 'html' when browser is required to render the page.\n ",
"examples": [
"html"
]
},
"user_agent_type": {
"anyOf": [
{
"enum": [
"desktop",
"desktop_chrome",
"desktop_firefox",
"desktop_safari",
"desktop_edge",
"desktop_opera",
"mobile",
"mobile_ios",
"mobile_android",
"tablet"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Device type and browser that will be used to determine User-Agent header value."
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The geographical location that the result should be adapted for.\n Use ISO-3166 country codes.\n Examples:\n - 'California, United States'\n - 'Mexico'\n - 'US' for United States\n - 'DE' for Germany\n - 'FR' for France\n ",
"examples": [
"US",
"DE",
"FR"
]
},
"output_format": {
"anyOf": [
{
"enum": [
"links",
"md",
"html"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The format of the output. Works only when parse parameter is false.\n - 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.\n - 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.\n - html - Should be used sparingly only when you need the raw HTML structure, JavaScript code, or styling information.\n "
}
},
"required": [
"url"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢google_search_scraper(query, parse, render, user_agent_type, start_page, ...)
Scrape Google Search results. Supports content parsing, different user agent types, pagination, domain, geolocation, locale parameters and different output formats.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "URL-encoded keyword to search for.",
"type": "string"
},
"parse": {
"default": true,
"description": "Should result be parsed. If the result is not parsed, the output_format parameter is applied.",
"type": "boolean"
},
"render": {
"anyOf": [
{
"const": "html",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Whether a headless browser should be used to render the page.\n For example:\n - 'html' when browser is required to render the page.\n ",
"examples": [
"html"
]
},
"user_agent_type": {
"anyOf": [
{
"enum": [
"desktop",
"desktop_chrome",
"desktop_firefox",
"desktop_safari",
"desktop_edge",
"desktop_opera",
"mobile",
"mobile_ios",
"mobile_android",
"tablet"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Device type and browser that will be used to determine User-Agent header value."
},
"start_page": {
"default": 0,
"description": "Starting page number.",
"type": "integer"
},
"pages": {
"default": 0,
"description": "Number of pages to retrieve.",
"type": "integer"
},
"limit": {
"default": 0,
"description": "Number of results to retrieve in each page.",
"type": "integer"
},
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Domain localization for Google.\n Use country top level domains.\n For example:\n - 'co.uk' for United Kingdom\n - 'us' for United States\n - 'fr' for France\n ",
"examples": [
"uk",
"us",
"fr"
]
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The geographical location that the result should be adapted for.\n Use ISO-3166 country codes.\n Examples:\n - 'California, United States'\n - 'Mexico'\n - 'US' for United States\n - 'DE' for Germany\n - 'FR' for France\n ",
"examples": [
"US",
"DE",
"FR"
]
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Set 'Accept-Language' header value which changes your Google search page web interface language.\n Examples:\n - 'en-US' for English, United States\n - 'de-AT' for German, Austria\n - 'fr-FR' for French, France\n ",
"examples": [
"en-US",
"de-AT",
"fr-FR"
]
},
"ad_mode": {
"default": false,
"description": "If true will use the Google Ads source optimized for the paid ads.",
"type": "boolean"
},
"output_format": {
"anyOf": [
{
"enum": [
"links",
"md",
"html"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The format of the output. Works only when parse parameter is false.\n - 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.\n - 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.\n - html - Should be used sparingly only when you need the raw HTML structure, JavaScript code, or styling information.\n "
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢amazon_search_scraper(query, category_id, merchant_id, currency, parse, ...)
Scrape Amazon search results. Supports content parsing, different user agent types, pagination, domain, geolocation, locale parameters and different output formats. Supports Amazon specific parameters such as category id, merchant id, currency.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "Keyword to search for.",
"type": "string"
},
"category_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Search for items in a particular browse node (product category)."
},
"merchant_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Search for items sold by a particular seller."
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Currency that will be used to display the prices.",
"examples": [
"USD",
"EUR",
"AUD"
]
},
"parse": {
"default": true,
"description": "Should result be parsed. If the result is not parsed, the output_format parameter is applied.",
"type": "boolean"
},
"render": {
"anyOf": [
{
"const": "html",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Whether a headless browser should be used to render the page.\n For example:\n - 'html' when browser is required to render the page.\n ",
"examples": [
"html"
]
},
"user_agent_type": {
"anyOf": [
{
"enum": [
"desktop",
"desktop_chrome",
"desktop_firefox",
"desktop_safari",
"desktop_edge",
"desktop_opera",
"mobile",
"mobile_ios",
"mobile_android",
"tablet"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Device type and browser that will be used to determine User-Agent header value."
},
"start_page": {
"default": 0,
"description": "Starting page number.",
"type": "integer"
},
"pages": {
"default": 0,
"description": "Number of pages to retrieve.",
"type": "integer"
},
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Domain localization for Google.\n Use country top level domains.\n For example:\n - 'co.uk' for United Kingdom\n - 'us' for United States\n - 'fr' for France\n ",
"examples": [
"uk",
"us",
"fr"
]
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The geographical location that the result should be adapted for.\n Use ISO-3166 country codes.\n Examples:\n - 'California, United States'\n - 'Mexico'\n - 'US' for United States\n - 'DE' for Germany\n - 'FR' for France\n ",
"examples": [
"US",
"DE",
"FR"
]
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Set 'Accept-Language' header value which changes your Google search page web interface language.\n Examples:\n - 'en-US' for English, United States\n - 'de-AT' for German, Austria\n - 'fr-FR' for French, France\n ",
"examples": [
"en-US",
"de-AT",
"fr-FR"
]
},
"output_format": {
"anyOf": [
{
"enum": [
"links",
"md",
"html"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The format of the output. Works only when parse parameter is false.\n - 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.\n - 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.\n - html - Should be used sparingly only when you need the raw HTML structure, JavaScript code, or styling information.\n "
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢amazon_product_scraper(query, autoselect_variant, currency, parse, render, ...)
Scrape Amazon products. Supports content parsing, different user agent types, domain, geolocation, locale parameters and different output formats. Supports Amazon specific parameters such as currency and getting more accurate pricing data with auto select variant.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "Keyword to search for.",
"type": "string"
},
"autoselect_variant": {
"default": false,
"description": "To get accurate pricing/buybox data, set this parameter to true.",
"type": "boolean"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Currency that will be used to display the prices.",
"examples": [
"USD",
"EUR",
"AUD"
]
},
"parse": {
"default": true,
"description": "Should result be parsed. If the result is not parsed, the output_format parameter is applied.",
"type": "boolean"
},
"render": {
"anyOf": [
{
"const": "html",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Whether a headless browser should be used to render the page.\n For example:\n - 'html' when browser is required to render the page.\n ",
"examples": [
"html"
]
},
"user_agent_type": {
"anyOf": [
{
"enum": [
"desktop",
"desktop_chrome",
"desktop_firefox",
"desktop_safari",
"desktop_edge",
"desktop_opera",
"mobile",
"mobile_ios",
"mobile_android",
"tablet"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Device type and browser that will be used to determine User-Agent header value."
},
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Domain localization for Google.\n Use country top level domains.\n For example:\n - 'co.uk' for United Kingdom\n - 'us' for United States\n - 'fr' for France\n ",
"examples": [
"uk",
"us",
"fr"
]
},
"geo_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The geographical location that the result should be adapted for.\n Use ISO-3166 country codes.\n Examples:\n - 'California, United States'\n - 'Mexico'\n - 'US' for United States\n - 'DE' for Germany\n - 'FR' for France\n ",
"examples": [
"US",
"DE",
"FR"
]
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n Set 'Accept-Language' header value which changes your Google search page web interface language.\n Examples:\n - 'en-US' for English, United States\n - 'de-AT' for German, Austria\n - 'fr-FR' for French, France\n ",
"examples": [
"en-US",
"de-AT",
"fr-FR"
]
},
"output_format": {
"anyOf": [
{
"enum": [
"links",
"md",
"html"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "\n The format of the output. Works only when parse parameter is false.\n - 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.\n - 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.\n - html - Should be used sparingly only when you need the raw HTML structure, JavaScript code, or styling information.\n "
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}Prompts recomendados
ai_searchai_searchComunidad
Evidencia