New
Apps 678Makers 678This week 678
Promote your app−30%
Scavio MCP Server screenshot 1
1views in
the last 30 days

Scavio MCP Server

Remote MCP server for Scavio search and web data

Built with Claude Code

by scavio-ai · from USUnited States · added Oct 29, 2026
no ratings0 comments

Scavio MCP Server

Scavio is a unified Web Search API and MCP server that gives AI agents web search, page extraction, and structured data from e-commerce, social, travel, jobs, real-estate, app-store, ad-library and company-filing sources. 272 tools across 40 platforms plus Extract, map, crawl and batch, one API key.

The 22 platforms added in 0.13.0 are opt-in. Registering all 272 tools puts ~260KB of tool definitions — roughly 65k tokens — into every session before you type anything. So the default is the platform set 0.12.x already had, plus Extract: 142 tools, 112KB. Upgrading never removes a tool you were using. Everything else is one env var away: see Choosing which tools load.

Remote MCP Server

Connect directly to Scavio's remote MCP server without any local installation:

https://mcp.scavio.dev/mcp

Two ways to authenticate:

  • Sign in with OAuth, no key to copy. Claude Desktop, claude.ai and Claude Code sign in to your Scavio account through the server. In Claude Desktop or claude.ai: Settings > Connectors > Add custom connector, name it Scavio, paste the URL, then Connect and Authorize. In Claude Code: claude mcp add --transport http scavio https://mcp.scavio.dev/mcp, then run /mcp and choose Authenticate.
  • API key. Pass it in the x-api-key header. Get your key at scavio.dev.

Run Locally (npx)

Prefer to run the server on your own machine? Use npx with no clone or build. The server runs over stdio and only needs your SCAVIO_API_KEY.

Claude Code

claude mcp add scavio -e SCAVIO_API_KEY=YOUR_SCAVIO_API_KEY -- npx -y @scavio/mcp-server

Any MCP-Compatible Client (Claude Desktop, Cursor, Windsurf, VS Code, etc.)

{
  "mcpServers": {
    "scavio": {
      "command": "npx",
      "args": ["-y", "@scavio/mcp-server"],
      "env": {
        "SCAVIO_API_KEY": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

Requires Node.js 20+. Get your API key at scavio.dev.


Install

Claude Code

Sign in with OAuth, then run /mcp inside Claude Code and choose Authenticate:

claude mcp add --transport http scavio https://mcp.scavio.dev/mcp

Or pass an API key:

claude mcp add --transport http scavio https://mcp.scavio.dev/mcp --header "x-api-key: YOUR_SCAVIO_API_KEY"

Claude Desktop

No API key needed: Settings > Connectors > Add custom connector, name it Scavio, paste https://mcp.scavio.dev/mcp, then Connect and sign in to your Scavio account. The same steps work on claude.ai.

Or run the server locally. Add to claude_desktop_config.json (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "scavio": {
      "command": "npx",
      "args": ["-y", "@scavio/mcp-server"],
      "env": {
        "SCAVIO_API_KEY": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

Requires Node.js 20+. Restart Claude Desktop after saving.

Cursor

Install MCP Server

Or add to .cursor/mcp.json in your project root or ~/.cursor/mcp.json for global:

{
  "mcpServers": {
    "scavio": {
      "type": "http",
      "url": "https://mcp.scavio.dev/mcp",
      "headers": {
        "x-api-key": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "scavio": {
      "type": "http",
      "url": "https://mcp.scavio.dev/mcp",
      "headers": {
        "x-api-key": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

VS Code

Create .vscode/mcp.json in your project root:

{
  "servers": {
    "scavio": {
      "type": "http",
      "url": "https://mcp.scavio.dev/mcp",
      "headers": {
        "x-api-key": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

ChatGPT

  1. Go to ChatGPT > Settings > Apps & Connectors
  2. Click Add custom connector
  3. Enter the MCP server URL: https://mcp.scavio.dev/mcp
  4. Configure authentication with your API key

Cline

Add to cline_mcp_settings.json (open via Cline sidebar > MCP Servers > Configure):

{
  "mcpServers": {
    "scavio": {
      "type": "http",
      "url": "https://mcp.scavio.dev/mcp",
      "headers": {
        "x-api-key": "YOUR_SCAVIO_API_KEY"
      }
    }
  }
}

Zed

Add to settings (Cmd+,):

{
  "assistant": {
    "mcp_servers": {
      "scavio": {
        "type": "http",
        "url": "https://mcp.scavio.dev/mcp",
        "headers": {
          "x-api-key": "YOUR_SCAVIO_API_KEY"
        }
      }
    }
  }
}

Any MCP-Compatible Client

{
  "type": "http",
  "url": "https://mcp.scavio.dev/mcp",
  "headers": {
    "x-api-key": "YOUR_SCAVIO_API_KEY"
  }
}

Choosing which tools load

Scavio exposes 272 tools. Loading all of them costs ~260KB of tools/list — roughly 64k tokens of context in every session before the user has said anything, and more tools than some clients will accept at all. So the server registers a curated subset by default and lets you pick the rest. The sizes below are measured, not estimated: npm run toolslist reproduces them.

SCAVIO_PLATFORMS is a comma-separated allowlist of platform keys:

Value Registers
(unset) or default Every platform 0.12.x had, plus extract — 142 tools, 112KB
all every platform — 272 tools, ~260KB
extract,sec,g2 just those platforms — 18 tools, 21KB
default,zillow,metaads the default set plus two more — 148 tools, 120KB
default,chatgpt,gemini the default set plus ChatGPT and Gemini — 144 tools, 115KB
none no platform tools, only get_usage

Keys are matched case- and punctuation-insensitively, so meta-ads, metaads and META_ADS are the same thing, and twitter resolves to x. An unknown key is logged to stderr and skipped rather than failing the server.

get_usage always registers — it is free, and it is what every install guide tells you to call to check the server works.

Platform keys: extract, google, chatgpt, gemini, youtube, tiktok, instagram, reddit, x, linkedin, threads, kuaishou, amazon, walmart, ebay, target, homedepot, costco, heb, kroger, mercadolibre, tiktok-shop, booking, airbnb, tripadvisor, yelp, zillow, redfin, realtor, rightmove, indeed, glassdoor, appstore, googleplay, g2, capterra, trustpilot, googleads, metaads, sec, companieshouse

Local (stdio)

{
  "mcpServers": {
    "scavio": {
      "command": "npx",
      "args": ["-y", "@scavio/mcp-server"],
      "env": {
        "SCAVIO_API_KEY": "YOUR_SCAVIO_API_KEY",
        "SCAVIO_PLATFORMS": "extract,google,zillow,redfin"
      }
    }
  }
}

Remote (HTTP)

The hosted server has no env var to read, so pass the allowlist per connection — either as a header or as a query parameter:

{
  "scavio": {
    "type": "http",
    "url": "https://mcp.scavio.dev/mcp",
    "headers": {
      "x-api-key": "YOUR_SCAVIO_API_KEY",
      "x-scavio-platforms": "extract,google,sec,companieshouse"
    }
  }
}
https://mcp.scavio.dev/mcp?platforms=all

Upgrading from 0.12.x

Nothing to do. The default set is exactly the 10 platforms 0.12.x registered, plus Extract — every tool you were using still loads. Those platforms keep gaining tools (Walmart grew from 2 to 7; TikTok, YouTube, Reddit and X gained 19 in 0.20.0; Extract gained map, crawl and batch in 0.21.0; Instagram gained 8 in 0.22.0; Google gained google_custom_search in 0.23.0), which is why the default count is now 142.

The 22 platforms added in 0.13.0 are opt-in. Add them additively:

SCAVIO_PLATFORMS=default,zillow,redfin,sec

One breaking fix worth knowing: search_walmart previously sent fulfillment_speed: "anytime" on every call, which the API rejects. The parameter is now today or tomorrow with no default.


Available Tools

Every tool costs 1 credit per call unless its section says otherwise. Several platforms price per endpoint (YouTube, Instagram, LinkedIn, Kuaishou) or per request body (Extract, Threads, Walmart); get_amazon_options and get_usage are free.

Extract

Tool Description
extract_url Read any web page and return it as clean Markdown, plain text, or raw HTML
map_website List a site's page URLs from its sitemaps and start page, path-filtered, with lastmod when known
crawl_website Crawl a site from one URL and extract every same-site page; waits up to wait_seconds and returns results, or the job id
get_crawl_status A crawl's status, page counts, credits used and page results, paged by cursor; can wait for completion
cancel_crawl Stop a running crawl; nothing more is billed, results so far stay readable
batch_extract Extract a list of URLs in one job, results in input order; waits up to wait_seconds
get_batch_status A batch's status and results, paged by cursor; can wait for completion
cancel_batch Stop a running batch

Extract is tier-priced by the mode parameter, not flat: normal (the default) and advanced (renders JavaScript) cost 1 credit, ultra (for the hardest pages) costs 2. Start at normal and escalate only when the content comes back empty or blocked. You are billed only on a successful extraction — a dead link, a bot wall or a timeout costs nothing. There is no pagination: the whole page comes back in one call.

Map, crawl and batch (new in 0.21.0) are the multi-page operations:

  • Pricing. map_website costs 1 credit. Crawl and batch bill per successful page at Extract's price for the tier (normal 1, advanced 1, ultra 2); failed and skipped pages are free, and status and cancel calls are free. Credits are taken page by page, and a job stops cleanly with stopped_reason: "insufficient_credits" if the balance runs out.
  • Plan limits (max pages per crawl / active jobs / URLs per batch): Free 10 / 1 / 10, PAYG 100 / 1 / 50, Project 500 / 2 / 100, Bootstrap 2,000 / 3 / 500, Startup 5,000 / 5 / 1,000, Growth 10,000 / 10 / 1,000. Starting a job past the active-job limit returns a 429 that names the running jobs.
  • Behaviour. Robots.txt is always obeyed for map and crawl. A crawl stays on the start URL's site (subdomains optional) and visits pages under the start path first. Results are kept for 3 days; a job runs for at most 6 hours.
  • Built for tool-call time limits. MCP clients usually cancel a tool call after about 60 seconds, so a crawl is a job, not one long call. crawl_website / batch_extract start the job and wait up to wait_seconds (default 30, max 50): a small job comes back finished with its first page of results; a large one returns the job id (and webhook_secret, shown only once, if you set webhook_url). get_crawl_status / get_batch_status take the same wait_seconds to long-poll, and cursor to page.
  • Output stays small. Status calls return 10 results per call by default (limit up to 100) and clip each page's content to max_content_chars (default 4,000); clipped pages carry content_clipped: true next to the full content_length. map_website asks for 200 links when you set no limit (the API default is 1,000). Every response that has more to read carries a _hint naming the exact next call. Repeat a start call with the same idempotency_key and you get the original job back instead of a second one.

Google Search API

Tool Description
search_google Web search (v2) with organic results, ads, and AI Overview
google_custom_search Google results in the Custom Search JSON API format (items[], searchInformation, queries.nextPage) for code ported from CSE
google_ai_mode AI Mode conversational answer with cited sources
google_maps_search Search Google Maps for local businesses
google_maps_place Place details: address, phone, hours, rating
google_maps_reviews Reviews for a place with pagination
google_shopping Product listings with price, store, and rating
google_shopping_product Product detail and sellers
google_shopping_stores More sellers for a product (pagination)
google_flights Flight itineraries with prices and stops
google_hotels Hotel search with prices and ratings
google_hotels_detail Hotel property details
google_news News results by query, topic, story, or publication
google_trends Interest-over-time and related queries
google_trending Trending searches

ChatGPT and Gemini

Tool Description
chatgpt_prompt Ask ChatGPT a prompt: the full Markdown answer, every cited page (title, publisher, date), the web searches it ran and the products it recommended
gemini_prompt Ask Google Gemini a prompt: the full Markdown answer, the URLs it cites and the products it recommended

For AI visibility and brand monitoring: ask what a buyer would ask ("best CRM for small agencies") and see whether a brand is recommended, which competitors are, and which pages the answer cites. Both tools return the same shape (answer.markdown, sources[], search_queries[], shopping[]), so comparing assistants needs one parser. Every call is a fresh answer and takes 10-40 seconds. ChatGPT costs 2 credits and Gemini 5 credits per answered prompt; failed prompts are free. Opt-in: add chatgpt and gemini to SCAVIO_PLATFORMS (e.g. default,chatgpt,gemini). Docs: ChatGPT, Gemini.

YouTube Data API

Tool Description
search_youtube Search videos, channels, and playlists
search_youtube_shorts Search short-form videos
youtube_search_suggestions Get search autocomplete suggestions
get_youtube_video Get full video details, chapters, and captions
get_youtube_metadata Deprecated alias of get_youtube_video
get_youtube_comments Get comments on a video with pagination
get_youtube_comment_replies Get replies to a specific comment
get_youtube_transcript Get a video transcript as plain text or SRT
get_youtube_related Get videos related to a video
search_youtube_channels Search channels by keyword
get_youtube_channel Get channel profile by ID, handle, or URL
get_youtube_channel_videos List a channel's videos
get_youtube_channel_shorts List a channel's Shorts
get_youtube_channel_community List a channel's community posts
resolve_youtube_channel Resolve a handle or URL to a channel ID
get_youtube_streams Get direct media stream URLs for a video
get_youtube_community_post Get one community post: text, author, likes, images, comments cursor
get_youtube_community_post_comments Get comments on a community post with pagination

Credit cost varies: get_youtube_transcript costs 5, get_youtube_streams 3, search_youtube and search_youtube_shorts 2, and every other YouTube tool 1. get_youtube_related accepts a cursor but never returns one, so treat it as a single page.

Amazon Product API

Tool Description
search_amazon Search product listings across 22 marketplaces (no sort option)
get_amazon_product Get full product details by ASIN
get_amazon_offers List every seller offering an ASIN, with buy-box winner
get_amazon_options List the supported marketplaces and their country codes (free)

Walmart API

Tool Description
search_walmart Search product listings with price and delivery filters
get_walmart_product Get full product details by product ID
get_walmart_reviews Customer reviews with ratings, text, author, date and the rating breakdown
get_walmart_category Products within a category, same product shape as search
get_walmart_offers The buy-box offer for a product: price, seller, condition, buy-box flag
get_walmart_seller Marketplace seller storefront: name, rating, Pro Seller badge, business details
get_walmart_seller_products A seller's catalogue; total_count is the real size
get_walmart_stores Stores near a US ZIP or Canadian postal code, nearest first, with store_id, address, distance and hours

Walmart is priced by the request body, not at a flat rate: com (US, default) and ca cost 1 credit, com.mx costs 2. Only search_walmart and get_walmart_category accept every domain.

Store targeting: pass delivery_zip and store_id together on search_walmart or get_walmart_product to get one store's assortment and availability. Take the store_id from get_walmart_stores on the same domain (walmart.com or walmart.ca). A store-targeted call costs 2 credits, takes 10-60 seconds, and echoes the store it used in data.location. get_walmart_product accepts domain: "ca" only together with a store pair.

Two shapes to plan for. get_walmart_offers returns the buy-box winner only — Walmart server-renders just that one offer, so expect a single row even when total_offer_count is higher. And get_walmart_seller_products is capped at roughly the first 40 items with no page or cursor parameter; read total_count to know you are looking at a slice. Both seller tools need the NUMERIC seller_catalog_id from a product, search or offers response — the GUID-form seller_id in those same responses 404s.

TikTok API

Tool Description
get_tiktok_profile Get user profile (bio, follower/following counts, likes)
get_tiktok_user_posts List a user's videos with stats
get_tiktok_video Get detailed info for a single video
get_tiktok_video_comments Get comments on a video
get_tiktok_comment_replies Get replies to a specific comment
search_tiktok_videos Search videos by keyword
search_tiktok_users Search users by keyword
get_tiktok_hashtag Get hashtag details and stats
get_tiktok_hashtag_videos List videos for a hashtag
get_tiktok_user_followers Get a user's follower list
get_tiktok_user_followings Get a user's following list
get_tiktok_trending_searches Search terms trending now (about 90, no region filter)
get_tiktok_trending_videos A sample of trending videos (about 6

Description taken from the repository README.

Ratings

–
0 ratings
5 0
4 0
3 0
2 0
1 0

Rate this app

Sign in to rate

Comments 0

Sign in to comment

No comments yet.

Related apps

#mcp · #search · #web-data