Follow these steps to run the Oxylabs MCP agent and tools in a Meshagent Room in the cloud:

1. Environment Variables

Set the following environment variables with your Oxylabs credentials:

  • OXYLABS_USERNAME: Your Oxylabs account username
  • OXYLABS_PASSWORD: Your Oxylabs account password

2. Install Meshagent

pip install "meshagent[all]"

3. Sign Up & Authenticate

4. Run the MCP Agent in a Meshagent Room

meshagent service test --room=test --role=agent --image=meshagent/mcp-oxylabs:latest \
  --env MESHAGENT_PORT=8001 \
  --env OXYLABS_USERNAME=YOUR_USERNAME_HERE \
  --env OXYLABS_PASSWORD=YOUR_PASSWORD_HERE \
  --port="num=8001 path=/webhook liveness=/ type=meshagent.callable" \
  --name=mcp-oxylabs-service
  • This command starts a Meshagent Room called test with the MCP server available as a service.
  • Replace YOUR_USERNAME_HERE and YOUR_PASSWORD_HERE with your actual credentials.
  • Note: Rooms will close if they go inactive.

5. Join the Room with a Chatbot (Agent)

meshagent chatbot join --room=test --agent-name=sample --name=sample --toolkit=mcp-oxylabs
  • This starts a chatbot in the Meshagent Room, which can use the Oxylabs toolkit.
  • Multiple toolkits can be used by the same agent in the same room.
  • The output will include a link to the Room, enabling you to interact with your agent and run scraping tasks visually.

Tools Available

Below are the tools provided by the Oxylabs MCP Server, now available through your Meshagent Room:

Tool NameShort Description
amazon_product_scraperScrape Amazon products.
amazon_search_scraperScrape Amazon search results.
google_search_scraperScrape Google Search results.
universal_scraperGet the content of any webpage.

Tool Details

amazon_product_scraper

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.

Parameters:

NameTypeDescription
querystringKeyword to search for.
autoselect_variantboolean (optional)To get accurate pricing/buybox data, set this parameter to true.
currencystring (optional)Currency that will be used to display the prices.
domainstring (optional)Domain localization for Google. Use country top level domains, e.g., ‘co.uk’, ‘us’, ‘fr’, etc.
geo_locationstring (optional)The geographical location that the result should be adapted for. (ISO-3166 codes or region names)
localestring (optional)Set ‘Accept-Language’ header value, e.g., ‘en-US’, ‘de-AT’, ‘fr-FR’.
output_formatstring (optional)Output format: links, md, or html.
parseboolean (optional)Should the result be parsed? (if false, output_format applies)
renderstring (optional)Use a headless browser to render the page, e.g., 'html'.
user_agent_typestring (optional)Device type and browser for User-Agent header.

amazon_search_scraper

Scrape Amazon search results.
Supports content parsing, user agent types, pagination, domain, geolocation, locale, and output formats.
Includes Amazon-specific parameters like category id, merchant id, and currency.

Parameters:

NameTypeDescription
querystringKeyword to search for.
category_idstring (optional)Search for items in a particular browse node (category).
currencystring (optional)Currency for prices.
domainstring (optional)Domain localization.
geo_locationstring (optional)Geographical location (ISO-3166 codes/regions).
localestring (optional)Accept-Language value, e.g., ‘en-US’.
merchant_idstring (optional)Search for items from a specific seller.
output_formatstring (optional)Output format: links, md, or html.
pagesinteger (optional)Number of pages to retrieve.
parseboolean (optional)Result parsed? (if false, output_format applies)
renderstring (optional)Use headless browser, e.g., 'html'.
start_pageinteger (optional)Starting page.
user_agent_typestring (optional)User-Agent type.

google_search_scraper

Scrape Google Search results.
Supports content parsing, user agent types, pagination, domain, geolocation, locale, and output formats.

Parameters:

NameTypeDescription
querystringURL-encoded keyword to search for.
ad_modeboolean (optional)Use the Google Ads source if true.
domainstring (optional)Domain localization.
geo_locationstring (optional)Geographical location (ISO-3166 or region).
limitinteger (optional)Results per page.
localestring (optional)Accept-Language header, e.g., ‘en-US’.
output_formatstring (optional)Output format: links, md, or html.
pagesinteger (optional)Number of pages.
parseboolean (optional)Result parsed? (if false, output_format applies)
renderstring (optional)Use headless browser, e.g., 'html'.
start_pageinteger (optional)Starting page.
user_agent_typestring (optional)User-Agent type.

universal_scraper

Get the content of any webpage.
Supports browser rendering, parsing for some pages, and multiple output formats.

Parameters:

NameTypeDescription
urlstringWebsite URL to scrape.
geo_locationstring (optional)Geographical location (ISO-3166 or region).
output_formatstring (optional)Output format: links, md, or html.
renderstring (optional)Use headless browser, e.g., 'html'.
user_agent_typestring (optional)User-Agent type.