Server data from the Official MCP Registry
Enable your AI agents to scrape and parse web content dynamically, including geo-restricted sites
Enable your AI agents to scrape and parse web content dynamically, including geo-restricted sites
The Decodo MCP server is a web scraping and data retrieval tool with proper authentication requirements and reasonable code quality. Input validation via Zod schemas is implemented throughout, and the codebase demonstrates good testing practices. The server requires API authentication tokens and has permissions appropriate to its stated purpose (web scraping, search, e-commerce data retrieval). No malicious patterns, dangerous operations, or credential exfiltration risks were identified. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 3 high severity). Package verification found 1 issue (1 critical, 0 high severity).
7 files analyzed · 9 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: SCRAPER_API_USERNAME
Environment variable: SCRAPER_API_PASSWORD
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-decodo-mcp-web-scraper": {
"env": {
"SCRAPER_API_PASSWORD": "your-scraper-api-password-here",
"SCRAPER_API_USERNAME": "your-scraper-api-username-here"
},
"args": [
"-y",
"@decodo/mcp-server"
],
"command": "npx"
}
}
}From the project's GitHub README.
Connect LLMs and AI agents to live web data using MCP (Model Context Protocol). The Decodo MCP Server lets you scrape websites, search engines, eCommerce platforms, and social media directly from AI tools like Claude, Cursor, and Windsurf, all without the need to build scraping infrastructure from scratch.
The Decodo MCP Server is a web scraping layer for AI agents. It connects MCP-compatible clients to Decodo's Web Scraping API, enabling:
Instead of maintaining proxies, parsers, and retry logic, you get a single integration point for reliable web data access.
Model Context Protocol (MCP) is the emerging standard for connecting AI agents to external tools and data sources. With MCP:
The Decodo MCP Server gives your agents reliable, production-ready web access through this standard.
Web scraping for AI agents, no infrastructure required. Scrape any website, including JavaScript-heavy pages, without handling proxy rotation, CAPTCHA solving, or anti-bot systems.
Structured outputs for LLM workflows. Markdown (LLM-ready), JSON (for structured pipelines), and screenshots (for visual context), built for RAG pipelines, AI research agents, and automation flows.
Built-in support for popular targets. Ready-made tools for Google and Bing (SERPs), Amazon, Walmart, and Target (eCommerce), Reddit, TikTok, and YouTube (social media), and ChatGPT and Perplexity (AI search).
Global proxy infrastructure. 125M+ residential IPs, 195+ geo-locations, and a 99.99% success rate on even the most protected targets.
Modular MCP toolsets. Enable only what you need: web, search, ecommerce, social_media,
ai for cleaner tool selection and better agent performance.
Fast time to value. From API key to first scrape in minutes, no setup overhead.
Use the Decodo MCP Server when you need web scraping for AI agents, structured data extraction at scale, reliable access to dynamic websites, real-time data for RAG, or an alternative to building scraping infrastructure from scratch. Common scenarios:
Open your preferred MCP client and add the following configuration (see examples for Claude Code, Cursor, Windsurf bellow):
{
"mcpServers": {
"Decodo": {
"url": "https://mcp.decodo.com/mcp",
"headers": {
"Authorization": "Basic <basic_auth_token>"
}
}
}
}
{
"mcpServers": {
"Decodo": {
"command": "npx",
"args": ["-y", "@decodo/mcp-server"],
"env": {
"SCRAPER_API_TOKEN": "<basic_auth_token>",
"TOOLSETS": "web,ai"
}
}
}
}
Once connected, try this prompt in your client:
▎ "Scrape the titles of the top 5 articles from Hacker News"
You should get a structured list back within seconds. If you see an auth error, double-check your token from the dashboard.
git clone https://github.com/Decodo/mcp-server
cd decodo-mcp-server
npm install
npm run build
cd build/
pwd
Adding index.js to the end of this directory, your build file location should look something like
this:
/Users/your.user/projects/decodo-mcp/build/index.js
{
"mcpServers": {
"decodo-mcp": {
"command": "node",
"args": ["/Users/your.user/projects/decodo-mcp/build/index.js"],
"env": {
"SCRAPER_API_TOKEN": "<web_scraping_api_base64_token>"
}
}
}
}
Tools are organized into toolsets. You can selectively enable specific toolsets by passing a
comma-separated list via the toolsets query parameter:
"Decodo MCP Server": {
"url": "https://mcp.decodo.com/mcp?toolsets=web,ai",
"headers": {
"Authorization": "Basic <your_auth_token>"
}
}
When no toolsets are specified, all tools are registered.
| Toolset | Tools |
|---|---|
web | scrape_as_markdown, screenshot |
search | google_search, google_ads, google_lens, google_travel_hotels, bing_search |
ecommerce | amazon_search, amazon_product, amazon_pricing, amazon_sellers, amazon_bestsellers, walmart_search, walmart_product, target_search, target_product, tiktok_shop_search, tiktok_shop_product, tiktok_shop_url |
social_media | reddit_post, reddit_subreddit, reddit_user, tiktok_post, youtube_metadata, youtube_channel, youtube_subtitles, youtube_search |
ai | chatgpt, perplexity, google_ai_mode |
The server exposes the following tools:
| Tool | Description | Example prompt |
|---|---|---|
scrape_as_markdown | Scrapes any target URL, expects a URL to be given via prompt. Returns results in Markdown. | Scrape peacock.com from a US IP address and tell me the pricing. |
screenshot | Captures a screenshot of any webpage and returns it as a PNG image. | Take a screenshot of github.com from a US IP address. |
google_search | Scrapes Google Search for a given query, and returns parsed results. | Scrape Google Search for shoes and tell me the top position. |
google_ads | Scrapes Google Ads search results. | Scrape Google Ads for laptop and show me the top ads. |
google_lens | Scrapes Google Lens image search results. | Search Google Lens for this image: https://example.com/image.jpg |
google_ai_mode | Scrapes Google AI Mode (Search with AI) results. | Ask Google AI Mode: What are the top three dog breeds? |
google_travel_hotels | Scrapes Google Travel Hotels search results. | Search Google Travel Hotels for hotels in Paris. |
amazon_search | Scrapes Amazon Search for a given query, and returns parsed results. | Scrape Amazon Search for wireless keyboard. |
amazon_product | Scrapes Amazon Product page. | Scrape Amazon product B09H74FXNW and show me the details. |
amazon_pricing | Scrapes Amazon Product pricing information. | Get pricing for Amazon product B09H74FXNW. |
amazon_sellers | Scrapes Amazon Seller information. | Get information about Amazon seller A1R0Z7FJGTKESH. |
amazon_bestsellers | Scrapes Amazon Bestsellers list. | Show me Amazon bestsellers in electronics. |
walmart_search | Scrapes Walmart Search for a given query, and returns parsed results. | Scrape Walmart Search for camping tent. |
walmart_product | Scrapes Walmart Product page. | Scrape Walmart product 15296401808. |
target_search | Scrapes Target Search for a given query, and returns parsed results. | Scrape Target Search for kitchen appliances. |
target_product | Scrapes Target Product page. | Scrape Target product 92186007. |
tiktok_post | Scrapes a TikTok post URL for structured data (e.g. engagement, caption, hashtags). | Scrape this TikTok post: https://www.tiktok.com/@nba/video/7393013274725403950 |
tiktok_shop_search | Scrapes TikTok Shop Search for a given query, and returns parsed results. | Scrape TikTok Shop Search for phone cases. |
tiktok_shop_product | Scrapes TikTok Shop Product page. | Scrape TikTok Shop product 1731541214379741272. |
tiktok_shop_url | Scrapes TikTok Shop page by URL. | Scrape this TikTok Shop URL: https://www.tiktok.com/shop/s?q=HEADPHONES |
youtube_metadata | Scrapes YouTube video metadata. | Get metadata for YouTube video dFu9aKJoqGg. |
youtube_channel | Scrapes YouTube channel videos. | Scrape YouTube channel @decodo_official. |
youtube_subtitles | Scrapes YouTube video subtitles. | Get subtitles for YouTube video L8zSWbQN-v8. |
youtube_search | Search YouTube videos. | Search YouTube for "How to care for chinchillas". |
reddit_post | Scrapes a specific Reddit post. | Scrape the following Reddit post: https://www.reddit.com/r/horseracing/comments/1nsrn3/ |
reddit_subreddit | Scrapes Reddit subreddit results. | Scrape the top 5 posts on r/Python this week. |
reddit_user | Scrapes a Reddit user profile and their posts/comments. | Scrape this Reddit user: https://www.reddit.com/user/IWasRightOnce/ |
bing_search | Scrapes Bing Search results. | Search Bing for laptop reviews. |
chatgpt | Search and interact with ChatGPT for AI-powered responses and conversations. | Ask ChatGPT to explain quantum computing in simple terms. |
perplexity | Search and interact with Perplexity for AI-powered responses and conversations. | Ask Perplexity what the latest trends in web development are. |
The following parameters are inferred from user prompts:
| Parameter | Description |
|---|---|
jsRender | Renders target URL in a headless browser. |
geo | Sets the country from which the request will originate. |
locale | Sets the locale of the request. |
tokenLimit | Truncates the response content up to this limit. Useful if the context window is small. |
prompt | Prompt to send to AI tools (chatgpt, perplexity). |
search | Activates ChatGPT's web search functionality (chatgpt only). |
xhr | When true, includes XHR or fetch responses in the scrape result where supported (e.g. tiktok_post). |
deviceType | Device type to emulate for the request (desktop, mobile, tablet). |
domain | Domain to use for the request (e.g., amazon.com, amazon.co.uk, bing.com). |
pageFrom | Starting page number for pagination. |
deliveryZip | ZIP code for delivery location (Target, Walmart). |
storeId | Store ID for local inventory (Target, Walmart). |
country | Country for TikTok Shop requests. |
limit | Maximum number of results to return (e.g., YouTube channel videos). |
language_code | Language code for subtitles (e.g., en, es). |
Query your AI agent with the following prompt:
Scrape peacock.com from a German IP address and tell me the pricing.
This prompt will say that peacock.com is geo-restricted. To bypass the geo-restriction:
Scrape peacock.com from a US IP address and tell me the pricing.
If your agent has a small context window, the content returned from scraping will be automatically truncated, in order to avoid context-overflow. You can increase the number of tokens returned within your prompt:
Scrape hacker news, return 50k tokens.
If your agent has a big context window, tell it to return full content:
Scrape hacker news, return full content.
Web Scraping API, Decodo OpenClaw skill
Plug Decodo MCP Server into your AI workflow in just a few clicks and equip your AI agents with real-time data from any website.
Start for free | Docs | Discord
All code is released under the MIT License.
Be the first to review this server!
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption