Scavio
Structured web data from 38 platforms: Google, ChatGPT, Gemini, YouTube, Amazon, Reddit, TikTok
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
claude mcp add --transport http scavio 'https://mcp.scavio.dev/mcp'
{
"mcpServers": {
"scavio": {
"type": "http",
"url": "https://mcp.scavio.dev/mcp"
}
}
}
@scavio/mcp-serverclaude mcp add scavio -e 'SCAVIO_API_KEY=<your scavio_api_key>' -- npx -y @scavio/mcp-server@0.26.3
{
"mcpServers": {
"scavio": {
"command": "npx",
"args": [
"-y",
"@scavio/mcp-server@0.26.3"
],
"env": {
"SCAVIO_API_KEY": "<your scavio_api_key>"
}
}
}
}
متغيرات البيئة
SCAVIO_API_KEYإلزامي سري Your Scavio API key from scavio.dev
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
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. 267 tools across 38 platforms plus Extract, map, crawl and batch, one API key.
The 22 platforms added in 0.13.0 are opt-in. Registering all 267 tools puts 254KB of tool definitions — roughly 64k 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/mcpand choose Authenticate. - API key. Pass it in the
x-api-keyheader. 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
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
- Go to ChatGPT > Settings > Apps & Connectors
- Click Add custom connector
- Enter the MCP server URL:
https://mcp.scavio.dev/mcp - 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 267 tools. Loading all of them costs 254KB 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 — 267 tools, 254KB |
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, 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_websitecosts 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 withstopped_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_extractstart the job and wait up towait_seconds(default 30, max 50): a small job comes back finished with its first page of results; a large one returns the job id (andwebhook_secret, shown only once, if you setwebhook_url).get_crawl_status/get_batch_statustake the samewait_secondsto long-poll, andcursorto page. - Output stays small. Status calls return 10 results per call by default
(
limitup to 100) and clip each page's content tomax_content_chars(default 4,000); clipped pages carrycontent_clipped: truenext to the fullcontent_length.map_websiteasks for 200 links when you set nolimit(the API default is 1,000). Every response that has more to read carries a_hintnaming the exact next call. Repeat a start call with the sameidempotency_keyand 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 per call) |
get_tiktok_search_suggestions | Search autocomplete suggestions for a keyword |
get_tiktok_music | Get a sound: artist, album, duration, videos using it, chart rank |
get_tiktok_music_videos | List videos that use a sound (about 14 per page) |
search_tiktok_music | Search sounds by keyword |
get_tiktok_music_chart | Top 50 or Viral 50 sound chart (global) |
get_tiktok_user_similar | Creators similar to a user (about 30 per page) |
get_tiktok_user_playlists | List a user's playlists (series) |
get_tiktok_playlist_videos | List the videos in a playlist |
get_tiktok_user_live | Is a user live now: room status, title, viewers |
get_tiktok_user_region | The region an account is registered in, plus sec_user_id |
Every TikTok tool costs 1 credit. The trending, sound, playlist, similar-creator, live
and region tools return TikTok's own payload shape, trimmed for context: large numeric
ids can lose precision as JSON numbers, so use the string forms (id_str, sec_uid,
sec_user_id). get_tiktok_trending_videos returns about 6 videos per call whatever
count says, and get_tiktok_music_videos ignores count (about 14 per page). Search
suggestions can be empty for long-tail keywords and still bill. An unknown username is
a billed 404 on get_tiktok_user_live and an unbilled 404 on get_tiktok_user_region.
Instagram API
| Tool | Description |
|---|---|
get_instagram_profile | Get user profile (bio, follower/following/post counts) |
get_instagram_user_posts | List a user's posts with pagination |
get_instagram_user_reels | List a user's Reels with pagination |
get_instagram_user_tagged | List posts a user is tagged in |
get_instagram_user_stories | Get a user's active stories |
get_instagram_post | Get a single post by url, media_id, or shortcode |
get_instagram_post_comments | Get comments on a post |
get_instagram_comment_replies | Get replies to a specific comment |
search_instagram_users | Search users by keyword |
search_instagram_hashtags | Search hashtags by keyword |
get_instagram_user_followers | Get a user's follower list |
get_instagram_user_followings | Get a user's following list |
get_instagram_user_highlights | List a user's story highlights (id, title, cover, item count) |
get_instagram_highlight_stories | Get every story in one highlight, with media URLs |
search_instagram_reels | Search Reels by keyword with pagination |
search_instagram_music | Search audio tracks by song or artist |
get_instagram_music_posts | List the Reels that use an audio track, plus its total reel count |
search_instagram_locations | Search places by name (id, address, coordinates) |
get_instagram_user_similar | Get accounts similar to a creator |
get_instagram_post_likers | Get accounts that liked a post, plus its total like count |
Instagram is priced per endpoint: get_instagram_profile, get_instagram_user_reels,
get_instagram_user_tagged and get_instagram_music_posts cost 1 credit (reels and
tagged cost 2 the first time a username is looked up), and the other tools cost 2.
search_instagram_users and search_instagram_hashtags cost 8 when you pass a
cursor for the next page. Any request can cost up to 10 when it needs extra work;
credits_used in the response is always the exact charge.
Reddit API
| Tool | Description |
|---|---|
search_reddit | Search Reddit posts by query, relevance order, cursor pagination |
get_reddit_post | Get a single post by URL or id (no comments; see below) |
get_reddit_search_suggestions | Get search autocomplete suggestions |
get_reddit_post_comments | Get a post's top-level comments with pagination |
get_reddit_comment_replies | Get replies to a specific comment |
get_reddit_subreddit | Get subreddit metadata and subscriber count |
get_reddit_subreddit_posts | List a subreddit's post feed |
get_reddit_user | Get a redditor's profile |
get_reddit_user_posts | List a redditor's submitted posts |
get_reddit_user_comments | List a redditor's comments |
get_reddit_popular | Get the site-wide popular feed |
get_reddit_trending | Get current trending search queries |
search_reddit_comments | Search comments by keyword, with the post and subreddit each was left on |
search_reddit_subreddits | Find subreddits by keyword, with subscriber counts |
Every Reddit tool costs 1 credit. Two things to know: search_reddit takes a query
and a cursor only - there is no sort or post-type filter, results come back in
relevance order (search_reddit_comments does sort: relevance, hot, top or new) - and get_reddit_post returns a flat post object with no comments,
so call get_reddit_post_comments with the post id for those. Reddit is the slowest
platform here, typically 5-15 seconds per call.
X API
| Tool | Description |
|---|---|
search_x | Search tweets and people by keyword |
get_tweet | Get full details for a single tweet |
get_tweet_comments | Get replies to a tweet (ranked or chronological) |
get_tweet_retweeters | List users who retweeted a tweet |
get_x_user | Get a user's profile by handle |
get_x_user_tweets | List a user's tweets |
get_x_user_replies | List a user's tweets and replies |
get_x_user_media | List a user's media tweets |
get_x_user_followers | List a user's followers |
get_x_user_followings | List accounts a user follows |
get_x_trending | Get trending topics for a country |
search_x_communities | Find X Communities by keyword, with member counts |
get_x_community | Get a Community's description, member count, topic and rules |
get_x_community_tweets | List a Community's posts by relevance or recency |
get_x_user_tweets, get_x_user_replies and get_x_user_media return a
next_cursor but no has_more, so page until the cursor is absent or the timeline
comes back empty.
LinkedIn API
| Tool | Description |
|---|---|
get_linkedin_person | Get a member's full profile, experience and education |
get_linkedin_person_about | Get a member's about/overview sections |
get_linkedin_person_posts | List a member's recent posts (up to 50) |
get_linkedin_company | Get a company's profile, locations and related companies |
get_linkedin_company_posts | List a company's recent posts (up to 50) |
search_linkedin_jobs | Search for jobs by keyword and location |
get_linkedin_job | Get full details for a job listing |
get_linkedin_post | Get full details for a single post |
get_linkedin_post_comments | Get comments on a post, 10 per page |
All take a vanity handle, slug or id, or a full LinkedIn URL. Credit cost varies:
get_linkedin_person, get_linkedin_person_about, get_linkedin_company and
get_linkedin_post cost 1; get_linkedin_person_posts,
get_linkedin_company_posts, search_linkedin_jobs and
get_linkedin_post_comments cost 10 per page; get_linkedin_job costs 30.
Member contact info, the company employee directory, per-company job listings,
people search and post search are no longer available, so those five tools were
removed. get_linkedin_company still returns a
small sample of featured employees, and search_linkedin_jobs with a company
name substitutes for per-company listings.
TikTok Shop API
| Tool | Description |
|---|---|
search_tiktok_shop | Search TikTok Shop products by keyword (US catalog, exact prices) |
get_tiktok_shop_search_suggestions | Keyword autocomplete for a partial query, 8 regions |
get_tiktok_shop_product | Full product detail (no price; ~44% of search IDs resolve) |
get_tiktok_shop_product_reviews | Paginated product reviews, up to 200 per call |
get_tiktok_shop_categories | The global category tree (28 top-level, 240 nodes) |
get_tiktok_shop_category_products | List products under a category ID, with exact prices |
get_tiktok_shop_shop_products | List a seller's catalog, 30 per page, with exact prices |
resolve_tiktok_shop_url | Resolve a TikTok Shop URL or share link to a product/shop ID |
Two things to know: get_tiktok_shop_product does not return a price (TikTok masks it on the
product page) - exact prices come from search_tiktok_shop,
get_tiktok_shop_shop_products and get_tiktok_shop_category_products. And only about 44% of the
product IDs returned by search resolve on get_tiktok_shop_product (11 of 25 measured), because
TikTok Shop has no detail data for the rest. That miss is signalled by the HTTP 404 status, not by any
field in the response body, and it is a normal outcome rather than an error to retry - the tool
returns it as a plain result with status: "no_detail_data" so agents skip the product instead of
looping. For an id that will not resolve, get_tiktok_shop_product_reviews is often still usable:
across 8 measured ids that failed on detail, 8 of 8 returned HTTP 200 on reviews and 7 of 8 returned
at least one review.
Threads
| Tool | Description |
|---|---|
get_threads_profile | Profile details for a Threads user, by user_id or username |
get_threads_user_posts | A user's Threads posts, cursor-paginated |
get_threads_user_replies | A user's replies, cursor-paginated |
get_threads_post | A single post by id or threads.net URL |
get_threads_post_comments | Replies to a post, cursor-paginated |
search_threads_users | Profiles matching a name or handle - the only search Threads exposes |
Threads is priced by how you address a user, not per endpoint: 2 credits when you pass user_id, 4 credits when you pass username. Only get_threads_profile, get_threads_user_posts and get_threads_user_replies accept a username; the other three are always 2. Prefer user_id - a handle costs a second lookup.
Kuaishou (China)
| Tool | Description |
|---|---|
get_kuaishou_profile | Profile details for a Kuaishou user (10 credits) |
get_kuaishou_user_posts | A user's top posts, cursor-paginated |
get_kuaishou_user_live | A user's current live-stream status |
resolve_kuaishou_user | Turn a Kuaishou share link into a user id |
get_kuaishou_video | A single video by photo id or URL (2 credits) |
get_kuaishou_video_comments | Comments on a video, cursor-paginated |
get_kuaishou_comment_replies | Replies under a root comment |
get_kuaishou_videos_batch | Up to 20 videos in one call (40 credits) |
search_kuaishou | Mixed-result search across Kuaishou (10 credits) |
search_kuaishou_videos | Video search results (10 credits) |
search_kuaishou_users | User search results (10 credits) |
search_kuaishou_live | Live-stream search results (10 credits) |
get_kuaishou_tag_feed | Posts under a hashtag, cursor-paginated |
get_kuaishou_trending | Hot, live, shopping, brand and music leaderboards |
Kuaishou is priced per endpoint, not at a flat rate: get_kuaishou_profile and all four search tools cost 10, get_kuaishou_video 2, get_kuaishou_videos_batch 40, and every other tool 1.
eBay
| Tool | Description |
|---|---|
search_ebay | Search live or SOLD listings: price, condition, bids, shipping, seller feedback |
get_ebay_product | One listing in full: price, condition, images, item specifics, shipping, returns, auction state |
get_ebay_seller | Seller profile card: store name, feedback score, items sold, followers, location |
1 credit per call. get_ebay_seller is a profile card and cannot enumerate a catalogue - list a seller's inventory with search_ebay and seller set and no keyword. sold: true searches completed listings that actually sold; on that view eBay publishes no headline count, so total_results is null. per_page accepts only 60, 120 or 240.
Target
| Tool | Description |
|---|---|
search_target_products | Search Target.com: prices, ratings, badges and promotions |
get_target_category | Products in a category, same shape as search plus the breadcrumb |
get_target_product | Product details by TCIN: price, images, specifications, variants, fulfillment |
get_target_reviews | Reviews with the rating breakdown, per-attribute averages and guest photos |
get_target_availability | In-store stock at every Target near a ZIP: units, in-store, pickup, curbside and ship-to-store status, distance, address, hours |
1 credit per call. get_target_product, get_target_reviews and get_target_availability are single-shot; search and category page with page + count. store_id on search, category, product and reviews sets the store for prices only; get_target_availability is the store-stock tool.
Home Depot
| Tool | Description |
|---|---|
search_home_depot | Search Home Depot: price, brand and model, ratings, per-store pickup/delivery |
get_home_depot_product | Full item detail: pricing, media, spec table, dimensions, documents, return policy |
get_home_depot_reviews | Full review bodies, rating distribution, per-attribute ratings, seller responses |
2 credits per call. Search page size is fixed at 12 and cannot be changed. Reviews return 30 per page; total_pages is the last page that exists and asking past it is a 404.
Costco
| Tool | Description |
|---|---|
search_costco | Search by keyword or item number: online and original price, rating, member-only and stock flags, promotions, facets |
get_costco_category | Products in a category, same filters and shape as search |
get_costco_categories | Department list, or the full subcategory tree under one department |
get_costco_product | Full detail for up to 20 items: description, features, specs, variants, purchase limits, delivery fee, promotion dates |
get_costco_prices | Online vs in-warehouse price at up to 10 warehouses: discount, final price, promotion dates, per-member limits, price code |
get_costco_availability | In-warehouse stock status for one item at up to 10 warehouses, plus pickup and same-day delivery |
get_costco_reviews | Reviews with rating distribution and recommend count; sort, star filter, up to 100 per page |
get_costco_warehouses | Warehouses near a US zip or coordinates: warehouse_id, address, hours, departments, services, gas prices |
get_costco_gas_prices | Regular, premium and diesel prices at Costco gas stations near a location or at given warehouses |
get_costco_coupons | The current member coupon book: item number, amount off, final price, scope, limits, valid dates |
get_costco_deals | Deal feeds: new, while supplies last, treasure hunt, member favorites, online only, on sale |
get_costco_clearance | Clearance and manager-markdown items at one warehouse, decoded from the shelf price ending |
get_costco_search_suggestions | Search suggestions for a partial query, plus matching warehouses |
1 credit per call, except the multi-warehouse tools: get_costco_prices makes one
lookup per two locations (online counts as one) and get_costco_availability one per
warehouse, billed 1 credit per 5 lookups, so 10 warehouses cost 2 credits.
get_costco_warehouses and get_costco_gas_prices cost 2 for country: "ca"; gas by
warehouse_ids is 1 credit per 5 warehouses (2 per warehouse on ca).
search_costco, get_costco_category and get_costco_deals take warehouse_id to add
that warehouse's in-store price, stock and price code to every result. Get the id from
get_costco_warehouses. country is us (default) or ca everywhere except
get_costco_coupons (US only); search_costco, get_costco_product and
get_costco_warehouses also accept uk, au, mx, jp, kr and tw for keyword,
sort and paging only. Price codes in get_costco_clearance are the member-community
decode (.97 clearance, .00/.88 manager markdown; .49/.79/.89 special buy on request),
not something Costco publishes, and only items Costco lists online are covered.
get_costco_coupons returns the first 50 offers of a ~200-offer book by default; pass
limit for more.
Mercado Libre
Mercado Libre (and Mercado Livre in Brazil) product data for Mexico, Brazil, Argentina and Colombia: listings, prices, sellers, reviews, buyer questions and category best sellers, with no OAuth app to register.
| Tool | Description |
|---|---|
search_mercadolibre | Listings by keyword or seller in mx, br, ar or co: price, list price, discount, installments, seller where shown, rating, units sold, free shipping and Full flags, sponsored flag; filters for condition, price range, minimum discount, free shipping, Full, official stores and interest-free installments; sort by relevance or price; about 48 per page |
get_mercadolibre_product | One product or listing by URL, product_id or item_id: price, promotions, the buy-box seller with reputation, stock, shipping, star distribution, variations, specs, description, pictures, category |
get_mercadolibre_reviews | 15 reviews per page with rating, text, original text when translated, date, likes, reviewer country and photos; filter by star rating |
get_mercadolibre_questions | Buyer questions on a listing with the seller's answers and answer dates; page with next_offset |
get_mercadolibre_best_sellers | The ranked top 20 in a category (mx, ar, co; not Brazil) |
2 credits per call; get_mercadolibre_reviews is 1. Search serves up to 42 pages
(about 2,000 results) per query, so slice by price range, condition or seller to reach
more, and sorts by relevance or price only. Units sold are lower bounds ("at least 500"),
not exact counts. Seller name appears on a search row only where Mercado Libre shows it;
get_mercadolibre_product returns the buy-box seller, and the list of every seller on a
product is not available. Mercado Libre may narrow a query on its own (Brazil and
Argentina can apply "new"); auto_applied_filters lists what it applied. Product,
reviews and questions take no country: the id prefix (MLM, MLB, MLA, MCO) or URL sets
it. Chile is not supported. A zero-result search is an empty, billed page; an unknown
product, item or seller nickname, or a listing with no questions, is a billed 404 that
says so.
Booking.com
| Tool | Description |
|---|---|
search_booking | Properties for a destination and stay: live nightly price, review score, room type |
get_booking_hotel | One property in full: rooms and rate plans, facilities, house rules, policies, images |
get_booking_reviews | Guest reviews with the score breakdown by category and Booking's own summary |
1 credit per call. Search returns 25 properties per page; get_booking_hotel and get_booking_reviews are single-shot.
Airbnb
| Tool | Description |
|---|---|
search_airbnb | Stays with stay-total and per-night price, the full discount ledger, rating, coordinates |
get_airbnb_listing | One listing in full: description, capacity, grouped amenities, host, house rules, rating breakdown |
get_airbnb_reviews | Review bodies with per-review rating, date and reviewer profile |
1 credit per call. search_airbnb takes page XOR cursor - sending both is rejected, and cursor wins. 18 listings per page. get_airbnb_reviews pages with limit + offset.
Tripadvisor
| Tool | Description |
|---|---|
resolve_tripadvisor_location | START HERE - resolve a place or business name to the geo_id / location_id pair |
search_tripadvisor | Restaurants, hotels or attractions in a geo, TripAdvisor-ranked |
get_tripadvisor_location | One location in full: rating histogram, sub-ratings, city ranking, amenities, first review page |
get_tripadvisor_reviews | A page of reviews: rating, trip date and type, reviewer profile, management response |
2 credits per call. Start with resolve_tripadvisor_location for the geo_id / location_id pair everything else needs. Search returns 30 per page and a page past the last is a 404, not an empty result. Reviews return 15 per page for restaurants and 10 for hotels and attractions, so category must match the location's own type on any page past the first.
Yelp
| Tool | Description |
|---|---|
search_yelp | Businesses in Yelp's ranked order: rating, review count, price band, categories, hours |
get_yelp_business | One business in full: per-star histogram, contact, hours, amenities, health inspections, Q&A |
get_yelp_reviews | A page of reviews: rating, full text, author profile, photos, owner response |
2 credits per call. Yelp fixes the page size at 10. get_yelp_business already includes the first page of reviews at no extra cost. A review page past the last is a 404, not an empty result.
Zillow
| Tool | Description |
|---|---|
search_zillow | Listings in a region: price, beds, baths, living area, Zestimate, coordinates, days on market |
get_zillow_property | Full listing: price and price history, Zestimate, tax history, RESO facts, schools, photos |
get_zillow_agent_reviews | A Zillow AGENT's profile and reviews, specialties, licenses, service areas, sales counts |
1 credit per call. Only search_zillow paginates. get_zillow_agent_reviews is an AGENT profile, not a property.
Redfin
| Tool | Description |
|---|---|
search_redfin | Listings: price, price per sqft, beds, baths, living area, lot size, year built, photos |
get_redfin_property | Full listing: Redfin Estimate, MLS fact sheet, price and tax history, schools, climate risk, comps |
get_redfin_market | Market stats for a region: median list and sale price, sale-to-list ratio, days on market, compete score |
1 credit per call. search_redfin pages with page + limit, up to 350 listings per page; the other two are single-shot.
Realtor.com
| Tool | Description |
|---|---|
search_realtor | US listings for sale, pending, for rent or sold by location, radius or agent: price, beds, baths, sqft, lot, year built, garage, HOA, type, listed/sold/price-cut within N days, keywords in the listing text (all must match), new construction, foreclosure, open house; up to 200 per call |
get_realtor_property | One property by id or URL: price and tax history, three value estimates with history and forecast, schools, flood/wildfire/noise risk, listing agent and office |
get_realtor_locations | Autocomplete cities, counties, ZIPs, neighborhoods, schools and addresses, with the slug_id for market and the property_id for an address |
get_realtor_market | Market stats for a city, county or ZIP: median list, sold and rent price, price per sqft, days on market, year-over-year and month-over-month change, by property type |
search_realtor_agents | Agents by city, ZIP or name: rating, reviews, active listings and price range, homes sold last year, broker and office |
get_realtor_agent | One agent's full profile with every review and four sub-ratings |
1 credit per call. search_realtor returns up to 200 listings per page (default 50) and
serves the first 10,000 results of a search (page x page_size <= 10,000); slice a big
area by price band, property type or radius to reach more. Sold prices are null in US
non-disclosure states (Texas, Utah, Wyoming and about nine others), while sold dates still
come back. An unknown property or agent id is a billed 404.
Rightmove
| Tool | Description |
|---|---|
get_rightmove_locations | UK place, outcode, postcode or station to the location_id search and agents take |
search_rightmove | UK property for sale or to rent: price (GBP), beds, baths, type, must-haves, exclusions, tenure, added within days, under offer, radius, furnishing, let type; 24-25 per page |
get_rightmove_property | One listing in full: tenure and lease years, council tax band, service charge, ground rent, EPC, rooms, floorplans, flood risk, broadband, stations, agent |
get_rightmove_sold | Sold prices for a town, outcode or postcode: 25 addresses per page, each with its sale history since 1995, plus the area's average price over the last year |
get_rightmove_sold_property | One sold address: every sale with price, date, tenure, new-build flag and percent change, plus the archived last listing |
search_rightmove_agents | Estate and letting agent branches for a location: phones, address, brand and company ids, profile URL |
get_rightmove_agent | One branch by id or URL: address, phones, affiliations, listing counts and a teaser |
1 credit per call. Rightmove search has no keyword filter: match on the returned summary
and key_features instead. Paging caps per search: 42 pages for search_rightmove
(about 1,000 listings), 40 for get_rightmove_sold, 50 for search_rightmove_agents;
narrow by price band, type or a smaller area to reach more. Sold prices cover England and
Wales only (not Scotland or Northern Ireland). Live listings carry no price history, so use get_rightmove_sold_property for an
address's past sales. A removed listing or an unknown id is a billed 404.
Indeed
| Tool | Description |
|---|---|
search_indeed_jobs | Job postings: title, employer, rating, location, salary range, job type, apply route |
get_indeed_job | One posting in full: description text and HTML, structured salary, benefits, original ATS link |
get_indeed_company | Employer profile: industry, HQ, size, revenue, CEO approval, per-category ratings, open roles |
get_indeed_company_reviews | Employee reviews with per-category ratings, pros/cons, reviewer job title and location |
2 credits per call. Job search returns 10 postings per page, company reviews 20 per page. get_indeed_job and get_indeed_company are single-shot.
Glassdoor
| Tool | Description |
|---|---|
resolve_glassdoor_company | START HERE - resolve a company name to the employer_id the other tools need |
get_glassdoor_company | Employer profile: ratings, star distribution, CEO approval, size and revenue bands, awards |
get_glassdoor_reviews | Up to three full reviews with per-axis scores and employer response, plus complete rating statistics |
get_glassdoor_salaries | Salaries by job title: base-pay and total-pay percentiles P10-P90, sample counts, pay period |
1 credit per call. Start with resolve_glassdoor_company for the employer_id. Only get_glassdoor_salaries paginates (10 job titles per page; page_count is how many exist). get_glassdoor_reviews returns up to three full reviews plus complete rating statistics - it is not a paginated review feed.
Apple App Store
| Tool | Description |
|---|---|
search_app_store | Up to 200 fully-shaped apps - doubles as a bulk metadata fetch and a publisher lookup |
get_app_store_app | Full listing: developer identity, price, all-time and current-version ratings, release notes, screenshots |
get_app_store_reviews | A page of reviews: star rating, title, full text, author, and the app version reviewed |
1 credit per call. Reviews page 1-10 at 50 per page and stop hard at page 10: 500 reviews per storefront is Apple's anonymous ceiling, and you reach further by asking a different country. Search and app detail do not paginate.
Google Play
| Tool | Description |
|---|---|
search_google_play | Ranked apps: package name, developer, rating, install count, price and IAP range, screenshots |
get_google_play_app | Full store listing: the real install count, star histogram, IAPs, permissions, Data safety table |
get_google_play_reviews | A page of reviews: star score, full text, thumbs-up count, developer reply, app version |
2 credits per call - a separate namespace from google and not on the Google-exempt price. Reviews are cursor-paginated, and the cursor is opaque, single-use and encodes the sort as well as the position, so send it back with the same sort it came from. A cursor past the last review is a 404. Search and app detail do not paginate.
G2 Software Reviews
| Tool | Description |
|---|---|
search_g2_software | Search B2B software: star rating, review count, vendor, categories; each row carries product_id |
get_g2_product | Full profile: per-star histogram, pricing editions, feature groups, integrations, alternatives, AI pros/cons |
get_g2_reviews | A page of reviews: rating, likes/dislikes, problems solved, reviewer firmographics, validated flags |
5 credits per call - the most expensive platform on Scavio. search_g2_software pages with page + limit (capped at 100 on our side); get_g2_reviews is fixed at 10 per page and paginates well past the 10 pages G2's own widget links to. get_g2_product is single-shot.
Capterra Software Reviews
| Tool | Description |
|---|---|
search_capterra_software | Search B2B software: 20 ranked products with rating, review count and paid-placement flag |
get_capterra_product | Full profile: per-star histogram, four scored criteria, pricing table, features, plus 25 recent reviews |
get_capterra_reviews | A page of reviews: overall plus five per-criterion scores, pros, cons, alternatives considered |
2 credits per call. Only get_capterra_reviews paginates: 25 per page, capped at page 100 - past it Capterra answers 200 with page one, so check what came back. get_capterra_product already includes the 25 most recent reviews.
Trustpilot
| Tool | Description |
|---|---|
search_trustpilot | Search businesses by keyword in one country: domain, TrustScore, stars, review count, categories, website, published email/phone/address; up to 100 per page |
get_trustpilot_business | Full profile by domain or URL: rating distribution, review count per language, claimed and verification status, reply rate and days to reply, consumer alerts, AI summary and topics, similar businesses, 20 newest reviews |
get_trustpilot_reviews | A page of 20 reviews filtered by stars, language, date range, topics, text, verified-only and with-replies; sorted by recency or relevance |
get_trustpilot_categories | The category tree (22 top-level, 189 subcategories), or categories matching a name |
get_trustpilot_category | Businesses ranked in a category by country: sort, minimum star rating (TrustScore rounded to stars, so 4 includes 3.8+), claimed profiles only; 20 per page |
get_trustpilot_review | One review by its 24-character id, with the business it is about |
2 credits per call. get_trustpilot_reviews serves 10 pages of 20, so 200 reviews per
filter combination; to read more, slice into separate sets (each stars value, each
language, each date_range) rather than paging further. total_filtered with a
date_range doubles as review velocity. Email and phone appear only when the business
published them; the AI summary and topics only when Trustpilot has them for the chosen
language (default en). No TrustScore history. An unknown domain, category or review
id is a billed 404 that names what was not found.
Google Ads Transparency
| Tool | Description |
|---|---|
resolve_google_ads_advertiser | START HERE - resolve a brand name or domain to the advertiser_id |
search_google_ads | Every ad Google is running for one advertiser, with first/last seen dates and days actually run |
get_google_ads_creative | One creative in full - the only tool carrying size variations, impression bucket and region breakdown |
1 credit per call. Start with resolve_google_ads_advertiser to turn a brand name or domain into an advertiser_id. search_google_ads is cursor-paginated at 100 ads per page - re-send the same filters alongside the cursor. get_google_ads_creative is the only tool carrying a creative's history, region breakdown and impression bucket.
Meta Ad Library
| Tool | Description |
|---|---|
search_meta_ads | Search the Meta Ad Library with full creative: ad copy, headline, CTA, media, platforms, run dates |
get_meta_ads_advertiser | Every ad a Facebook Page is running, by numeric page id, with the same creative detail |
get_meta_ad | One ad in full by archive id: creative, advertiser, run dates, platforms, political disclosure |
1 credit per call, and every cursor page is another credit: page 1 returns 30 ads, then 10 per page thereafter, so the cost of walking a whole query scales with depth. search_meta_ads and get_meta_ads_advertiser both cursor-paginate - walk has_next_page. get_meta_ad is single-shot.
SEC EDGAR
| Tool | Description |
|---|---|
resolve_sec_company | START HERE - resolve a company name or ticker to the CIK everything else is keyed by |
get_sec_company | Filer profile: legal and former names, SIC industry, EIN, LEI, fiscal year end, tickers |
get_sec_filings | A page of one filer's filings: accession number, form, dates, 8-K item codes, document links |
get_sec_concept | Every value a filer reported for one XBRL concept, newest first, with its source filing |
get_sec_facts | The index of every XBRL concept a filer reports - use it to find what to ask get_sec_concept for |
search_sec_filings | EDGAR full-text search, 2001-today, with facets by company, form, industry and state |
1 credit per call on the official free EDGAR JSON API. Start with resolve_sec_company to turn a name or ticker into a CIK. get_sec_filings pages with page + limit; search_sec_filings pages up to 100, because the index refuses a result window past 10,000.
Companies House
| Tool | Description |
|---|---|
search_companies_house | START HERE - search the UK register by name for the company_number |
get_companies_house_company | Full register entry: status, type, dates, registered office, SIC codes, accounts due dates |
get_companies_house_officers | Officers current and resigned: role, appointment and resignation dates, nationality, DOB |
get_companies_house_filing_history | Filings most recent first: date, type code, description, link to the filed PDF |
1 credit per call on the official UK register. Start with search_companies_house for a company_number. Search returns 20 per page and is capped at page 50 - the register serves a 1000-result window per term whatever hit count it prints, then answers page 51 with a 416. Officers (35/page) and filing history have no upper page bound; past the last page they return an ordinary 200 with an empty list, which looks identical to having none.
Account
| Tool | Description |
|---|---|
get_usage | Check credit balance, plan, and usage stats |
About Scavio
Scavio is a unified search API for AI agents and a data API for developers. One key, structured JSON:
- Google Search API — SERP results, news, images, maps, and knowledge graph
- Extract — read any URL as Markdown, plain text or raw HTML
- Amazon Product API and Walmart Product API — product search and details, alongside eBay, Target, Home Depot and Costco (per-warehouse prices, stock, gas prices, coupon book), and Mercado Libre (Mexico, Brazil, Argentina and Colombia listings, sellers, reviews, questions and best sellers)
- TikTok API, Instagram API, Reddit API, X API, LinkedIn API, and YouTube API — social and video data
- Travel and local — Booking.com, Airbnb, Tripadvisor, Yelp
- Real estate — Zillow, Redfin, Realtor.com (listings, sold comps, market stats, agents), Rightmove (UK listings, England and Wales sold prices since 1995, agents)
- Jobs and employer data — Indeed, Glassdoor
- Apps, software reviews and ad libraries — App Store, Google Play, G2, Capterra, Trustpilot (business profiles, filtered reviews, category rankings), Google Ads Transparency, Meta Ad Library
- Company filings — SEC EDGAR, Companies House
Teams use it as a SerpAPI alternative with structured multi-platform data — see Tavily vs Scavio for a head-to-head comparison.
Get a free Search API key at scavio.dev.
License
الأسئلة الشائعة
ما هو Scavio؟
Structured web data from 38 platforms: Google, ChatGPT, Gemini, YouTube, Amazon, Reddit, TikTok
كيف أثبّت Scavio؟
يعمل كخادم بعيد. في Claude Code: claude mcp add --transport http scavio 'https://mcp.scavio.dev/mcp'. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج Scavio إلى مفتاح API؟
نعم. يتطلب SCAVIO_API_KEY، وتضبطها في إعداداته.
هل Scavio مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون Scavio؟
ينشره scavio-ai. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.