Scavio MCP Server

MCP serverMedia

Your AI can search the web, read the contents of pages, and pull structured commerce, social, and business data. That means it can answer with current, organized information instead of relying only on what it already knows. Scavio is a community-maintained addition in the search category.

Use Scavio MCP Server in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Scavio MCP Server and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use Scavio MCP Server

Details

Available today. Use it from your connected AI after setup.

After adding it, ask your AI to research a company, product, or topic that needs fresh information, and it will search the web and pull the relevant data for you.

Scavio MCP ServerStart free

What your AI can do with it

  • Search the web for current information
  • Extract the contents of web pages
  • Pull structured commerce data
  • Pull structured social data
  • Pull structured business data

Install Scavio MCP Server

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user scavio-mcp-server 'https://mcp.scavio.dev/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://mcp.scavio.dev/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=scavio-mcp-server&config=eyJ1cmwiOiJodHRwczovL21jcC5zY2F2aW8uZGV2L21jcCJ9

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://mcp.scavio.dev/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add scavio-mcp-server --url 'https://mcp.scavio.dev/mcp'

    Run it once, then sign in with codex mcp login scavio-mcp-server if the server asks for an account.

From the project's README

As published by scavio-ai/scavio-mcp in README.md.

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. 224 tools across 35 platforms plus Extract, one API key.

The 22 platforms added in 0.13.0 are opt-in. Registering all 224 tools puts 211KB of tool definitions — roughly 52k tokens — into every session before you type anything. So the default is the surface 0.12.x already had, plus Extract: 107 tools, 82KB. 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

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 224 tools. Loading all of them costs 211KB of tools/list — roughly 52k 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:

ValueRegisters
(unset) or defaultEverything 0.12.x had, plus extract — 107 tools, 82KB
allevery platform — 224 tools, 211KB
extract,sec,g2just those platforms — 11 tools, 12KB
default,zillow,metaadsthe default set plus two more — 113 tools, 89KB
noneno 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, youtube, tiktok, instagram, reddit, x, linkedin, threads, kuaishou, amazon, walmart, ebay, target, homedepot, costco, 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, and the context cost is unchanged. Walmart grew from 2 tools to 7, so the count moves 100 → 106.

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

ToolDescription
extract_urlRead any web page and return it as clean Markdown, plain text, or raw HTML

Extract is tier-priced by the mode parameter, not flat: normal (plain fetch) and advanced (full JavaScript rendering) cost 1 credit, ultra (residential proxy, for hard bot walls) 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.

Google Search API

ToolDescription
search_googleWeb search (v2) with organic results, ads, and AI Overview
google_ai_modeAI Mode conversational answer with cited sources
google_maps_searchSearch Google Maps for local businesses
google_maps_placePlace details: address, phone, hours, rating
google_maps_reviewsReviews for a place with pagination
google_shoppingProduct listings with price, store, and rating
google_shopping_productProduct detail and sellers
google_shopping_storesMore sellers for a product (pagination)
google_flightsFlight itineraries with prices and stops
google_hotelsHotel search with prices and ratings
google_hotels_detailHotel property details
google_newsNews results by query, topic, story, or publication
google_trendsInterest-over-time and related queries
google_trendingTrending searches

YouTube Data API

ToolDescription
search_youtubeSearch videos, channels, and playlists
search_youtube_shortsSearch short-form videos
youtube_search_suggestionsGet search autocomplete suggestions
get_youtube_videoGet full video details, chapters, and captions
get_youtube_metadataDeprecated alias of get_youtube_video
get_youtube_commentsGet comments on a video with pagination
get_youtube_comment_repliesGet replies to a specific comment
get_youtube_transcriptGet a video transcript as plain text or SRT
get_youtube_relatedGet videos related to a video
search_youtube_channelsSearch channels by keyword
get_youtube_channelGet channel profile by ID, handle, or URL
get_youtube_channel_videosList a channel's videos
get_youtube_channel_shortsList a channel's Shorts
get_youtube_channel_communityList a channel's community posts
resolve_youtube_channelResolve a handle or URL to a channel ID
get_youtube_streamsGet direct media stream URLs for a video

Credit cost varies: get_youtube_transcript costs 8, 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

ToolDescription
search_amazonSearch product listings across 22 marketplaces (no sort option)
get_amazon_productGet full product details by ASIN
get_amazon_offersList every seller offering an ASIN, with buy-box winner
get_amazon_optionsList the supported marketplaces and their country codes (free)

Walmart API

ToolDescription
search_walmartSearch product listings with price and delivery filters
get_walmart_productGet full product details by product ID
get_walmart_reviewsCustomer reviews with ratings, text, author, date and the rating breakdown
get_walmart_categoryProducts within a category, same product shape as search
get_walmart_offersThe buy-box offer for a product: price, seller, condition, buy-box flag
get_walmart_sellerMarketplace seller storefront: name, rating, Pro Seller badge, business details
get_walmart_seller_productsA seller's catalogue; total_count is the real size
get_walmart_storesStores 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

ToolDescription
get_tiktok_profileGet user profile (bio, follower/following counts, likes)
get_tiktok_user_postsList a user's videos with stats
get_tiktok_videoGet detailed info for a single video
get_tiktok_video_commentsGet comments on a video
get_tiktok_comment_repliesGet replies to a specific comment
search_tiktok_videosSearch videos by keyword
search_tiktok_usersSearch users by keyword
get_tiktok_hashtagGet hashtag details and stats
get_tiktok_hashtag_videosList videos for a hashtag
get_tiktok_user_followersGet a user's follower list
get_tiktok_user_followingsGet a user's following list

Instagram API

ToolDescription
get_instagram_profileGet user profile (bio, follower/following/post counts)
get_instagram_user_postsList a user's posts with pagination
get_instagram_user_reelsList a user's Reels with pagination
get_instagram_user_taggedList posts a user is tagged in
get_instagram_user_storiesGet a user's active stories
get_instagram_postGet a single post by url, media_id, or shortcode
get_instagram_post_commentsGet comments on a post
get_instagram_comment_repliesGet replies to a specific comment
search_instagram_usersSearch users by keyword
search_instagram_hashtagsSearch hashtags by keyword
get_instagram_user_followersGet a user's follower list
get_instagram_user_followingsGet a user's following list

Instagram is priced per endpoint, not at a flat rate: get_instagram_user_posts costs 2, get_instagram_post and get_instagram_comment_replies cost 8, and the other nine tools cost 10. The 10-credit endpoints hedge two upstream providers and bill both legs, which is what the price reflects.

Reddit API

ToolDescription
search_redditSearch Reddit posts by query, relevance order, cursor pagination
get_reddit_postGet a single post by URL or id (no comments; see below)
get_reddit_search_suggestionsGet search autocomplete suggestions
get_reddit_post_commentsGet a post's top-level comments with pagination
get_reddit_comment_repliesGet replies to a specific comment
get_reddit_subredditGet subreddit metadata and subscriber count
get_reddit_subreddit_postsList a subreddit's post feed
get_reddit_userGet a redditor's profile
get_reddit_user_postsList a redditor's submitted posts
get_reddit_user_commentsList a redditor's comments
get_reddit_popularGet the site-wide popular feed
get_reddit_trendingGet current trending search queries

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 - 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

ToolDescription
search_xSearch tweets and people by keyword
get_tweetGet full details for a single tweet
get_tweet_commentsGet replies to a tweet (ranked or chronological)
get_tweet_retweetersList users who retweeted a tweet
get_x_userGet a user's profile by handle
get_x_user_tweetsList a user's tweets
get_x_user_repliesList a user's tweets and replies
get_x_user_mediaList a user's media tweets
get_x_user_followersList a user's followers
get_x_user_followingsList accounts a user follows
get_x_trendingGet trending topics for a country

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

ToolDescription
get_linkedin_personGet a member's full profile, experience and education
get_linkedin_person_aboutGet a member's about/overview sections
get_linkedin_person_postsList a member's recent posts (up to 50)
get_linkedin_companyGet a company's profile, locations and related companies
get_linkedin_company_postsList a company's recent posts (up to 50)
search_linkedin_jobsSearch for jobs by keyword and location
get_linkedin_jobGet full details for a job listing
get_linkedin_postGet full details for a single post
get_linkedin_post_commentsGet 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.

The upstream provider retired the datasets behind member contact info, the company employee directory, per-company job listings, people search and post search, 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

ToolDescription
search_tiktok_shopSearch TikTok Shop products by keyword (US catalog, exact prices)
get_tiktok_shop_search_suggestionsKeyword autocomplete for a partial query, 8 regions
get_tiktok_shop_productFull product detail (no price; ~44% of search IDs resolve)
get_tiktok_shop_product_reviewsPaginated product reviews, up to 200 per call
get_tiktok_shop_categoriesThe global category tree (28 top-level, 240 nodes)
get_tiktok_shop_category_productsList products under a category ID, with exact prices
get_tiktok_shop_shop_productsList a seller's catalog, 30 per page, with exact prices
resolve_tiktok_shop_urlResolve 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 upstream) - 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 upstream 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

ToolDescription
get_threads_profileProfile details for a Threads user, by user_id or username
get_threads_user_postsA user's Threads posts, cursor-paginated
get_threads_user_repliesA user's replies, cursor-paginated
get_threads_postA single post by id or threads.net URL
get_threads_post_commentsReplies to a post, cursor-paginated
search_threads_usersProfiles 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 buys a second upstream lookup.

Kuaishou (China)

Shortened here. Read the whole README on GitHub.

Signals

GitHub stars
8
Forks
1
Last commit
Oct 2026
Weekly_downloads
72 weekly_downloads
Advanced
Delivery
scavio-mcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-scavio-ai-scavio-mcp
Source
github.com/scavio-ai/scavio-mcp
Hosted endpoint
https://mcp.scavio.dev/mcp