Fetch and process content from specified URLs using the Oxylabs Web Scraper API.
The Oxylabs MCP server provides a bridge between AI models and the web. It enables them to scrape any URL, render JavaScript-heavy pages, extract and format content for AI use, bypass anti-scraping measures, and access geo-restricted web data from 195+ countries.
Oxylabs MCP provides two sets of tools that can be used together or independently:
Before you begin, make sure you have at least one of the following:
Oxylabs MCP server supports the following environment variables:
| Name | Description | Default |
|---|---|---|
OXYLABS_USERNAME | Your Oxylabs Web Scraper API username | |
OXYLABS_PASSWORD | Your Oxylabs Web Scraper API password | |
OXYLABS_AI_STUDIO_API_KEY | Your Oxylabs AI Studio API key | |
LOG_LEVEL | Log level for the logs returned to the client | INFO |
Based on provided credentials, the server will automatically expose the corresponding tools:
OXYLABS_USERNAME and OXYLABS_PASSWORD are provided, the server will expose the Web Scraper API tools;OXYLABS_AI_STUDIO_API_KEY is provided, the server will expose the AI Studio tools;OXYLABS_USERNAME and OXYLABS_PASSWORD and OXYLABS_AI_STUDIO_API_KEY are provided, the server will expose all tools.❗❗❗ Important note: if you don't have Web Scraper API or Oxylabs AI studio credentials, delete the corresponding environment variables placeholders. Leaving placeholder values will result in exposed tools that do not work.
# macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | sh# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"{
"mcpServers": {
"oxylabs": {
"command": "uvx",
"args": ["oxylabs-mcp"],
"env": {
"OXYLABS_USERNAME": "OXYLABS_USERNAME",
"OXYLABS_PASSWORD": "OXYLABS_PASSWORD",
"OXYLABS_AI_STUDIO_API_KEY": "OXYLABS_AI_STUDIO_API_KEY"
}
}
}
}Install the uv package manager:
# macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | shOR:
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Use the following config:
{
"mcpServers": {
"oxylabs": {
"command": "uv",
"args": [
"--directory",
"/<Absolute-path-to-folder>/oxylabs-mcp",
"run",
"oxylabs-mcp"
],
"env": {
"OXYLABS_USERNAME": "OXYLABS_USERNAME",
"OXYLABS_PASSWORD": "OXYLABS_PASSWORD",
"OXYLABS_AI_STUDIO_API_KEY": "OXYLABS_AI_STUDIO_API_KEY"
}
}
}
} {
"mcpServers": {
"oxylabs": {
"url": "https://server.smithery.ai/@oxylabs/oxylabs-mcp/mcp"
}
}
}In case your client does not support the Oauth2 authentication, you can pass the Oxylabs authentication parameters directly in url
{
"mcpServers": {
"oxylabs": {
"url": "https://server.smithery.ai/@oxylabs/oxylabs-mcp/mcp?oxylabsUsername=OXYLABS_USERNAME&oxylabsPassword=OXYLABS_PASSWORD&oxylabsAiStudioApiKey=OXYLABS_AI_STUDIO_API_KEY"
}
}
}Navigate to Claude → Settings → Developer → Edit Config and add one of the configurations above to the claude_desktop_config.json file.
Navigate to Cursor → Settings → Cursor Settings → MCP. Click Add new global MCP server and add one of the configurations above.
Server provides additional information about the tool calls in notification/message events
{
"method": "notifications/message",
"params": {
"level": "info",
"data": "Create job with params: {\"url\": \"https://ip.oxylabs.io\"}"
}
}{
"method": "notifications/message",
"params": {
"level": "info",
"data": "Job info: job_id=7333113830223918081 job_status=done"
}
}{
"method": "notifications/message",
"params": {
"level": "error",
"data": "Error: request to Oxylabs API failed"
}
}Distributed under the MIT License – see LICENSE for details.
Established in 2015, Oxylabs is a market-leading web intelligence collection platform, driven by the highest business, ethics, and compliance standards, enabling companies worldwide to unlock data-driven insights.
<div align="center"> <sub> Made with ☕ by <a href="https://oxylabs.io">Oxylabs</a>. Feel free to give us a ⭐ if MCP saved you a weekend. </sub> </div>Imagine telling your LLM "Summarise the latest Hacker News discussion about GPT‑5" – and it simply answers.
MCP (Multi‑Client Proxy) makes that happen by doing the boring parts for you:
| What Oxylabs MCP does | Why it matters to you |
|---|---|
| Bypasses anti‑bot walls with the Oxylabs global proxy network | Keeps you unblocked and anonymous |
| Renders JavaScript in headless Chrome | Single‑page apps, sorted |
| Cleans HTML → JSON | Drop straight into vector DBs or prompts |
| Optional structured parsers (Google, Amazon, etc.) | One‑line access to popular targets |
mcp-name: io.oxylabs/oxylabs-mcp