Skip to main content
The Scrapio MCP server gives AI agents direct access to the full web data surface through a single registered server — fetch, crawl, Google and Fast Search, YouTube, Amazon and Walmart product data, Booking.com and Agoda hotel data, Airbnb and Target listings, Reddit, TikTok, and Apple App Store data, Bing search, ChatGPT/Perplexity/Gemini prompting, browser automation, and async jobs. Also listed on the official MCP registry as io.github.xsronhou/scrapio-mcp.

Install

No installation required. Run it with npx:
The server starts on stdio by default and is ready to accept connections from your agent runtime.

Configure your agent

Point your agent runtime directly at Scrapio’s hosted MCP endpoint — nothing to install or run locally:URL: https://mcp.scrapio.dev/mcpFor clients with a “paste a URL” connector flow (Claude Desktop’s Settings → Connectors → Add custom connector, and similar), just enter the URL above. You’ll be redirected to log in to your Scrapio account and approve access — no API key to find or paste. Each login/approval is scoped to your own account; the hosted endpoint is multi-tenant, so different accounts never see each other’s sessions or data.Behind the scenes: the client registers itself automatically (no setup on your end), then runs a normal OAuth authorization-code flow against https://mcp.scrapio.dev. If your client doesn’t support this, use the manual method below instead.

Manual API key

For clients that only support a static header (or if you’d rather not go through the login flow), send Authorization: Bearer <SCRAPIO_API_KEY> on every request — for the JSON-based configs above, add a "headers" block instead of "env":
This is the same underlying server and the same per-tenant isolation as the OAuth method — just authenticated with a fixed key instead of a login flow.

Available tools

Example prompts

Once the server is connected, your agent can use natural language to call these tools:
“Fetch the content of https://news.ycombinator.com and summarize the top 5 stories.”
“Search Google for ‘best TypeScript ORM 2025’ and give me the top 3 results.”
“Get the transcript of this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ
“Find the current price of the Sony WH-1000XM5 headphones on Amazon.”
“Crawl https://docs.example.com up to 20 pages and extract all the API endpoint descriptions.”
“Go to https://app.example.com, click the login button, type my email and password, and return the dashboard content.”
“Search Booking.com for hotels in Lisbon, check-in Sept 10, check-out Sept 14, for 2 adults, sorted by rating.”
“Search Agoda for hotels in Bangkok under $100/night and show me the top 5 with their review scores.”
“Get the room rates and amenities for this Booking.com property: https://www.booking.com/hotel/pt/example.html

Async jobs

Some operations — large crawls, slow pages, multi-step interactions — take longer than a single tool call can wait. Use submit_job to queue the work and get_job to poll for the result:

Environment variables

Troubleshooting

Restart your agent runtime after adding the server config — most runtimes only discover MCP servers on startup.
The env block in your agent config is not being passed to the process. Double-check that your config file uses the correct format for your runtime and that the key name matches exactly.
Your API key is set but invalid or revoked. Generate a new key in the dashboard.
Your account has no remaining credits. Add credits at app.scrapio.dev.
The first run downloads the package. Subsequent calls use the npm cache and start in under a second. For production deployments, install globally with npm install -g @scrapio/mcp and reference the binary directly.
If you’re connected to the hosted endpoint (mcp.scrapio.dev), this usually means the server was redeployed and your client’s existing connection is stale. Disconnect and reconnect the connector (for Claude Desktop: Settings → Connectors → remove and re-add, or toggle it off and on) to establish a fresh session. This doesn’t affect the local npx/stdio setup, which reconnects automatically on your runtime’s next restart.