Scavio

Search Google, YouTube, marketplaces, and social platforms through the Scavio API.

ScavioTools gives an agent access to Google, YouTube, Amazon, Walmart, Reddit, TikTok, and Instagram through the Scavio Search API.

Prerequisites

The following examples require the agno, scavio, and openai libraries and an API key from Scavio.

uv pip install -U agno scavio openai
export SCAVIO_API_KEY=***
export OPENAI_API_KEY=***

Example

The following agent will search Google via Scavio and print the response.

cookbook/91_tools/scavio_tools.py
from agno.agent import Agent
from agno.tools.scavio import ScavioTools

web_agent = Agent(
    tools=[
        ScavioTools(
            enable_google=True,
            enable_youtube=True,
            enable_reddit=True,
            enable_amazon=False,
            enable_walmart=False,
            enable_tiktok=False,
            enable_instagram=False,
        )
    ]
)

web_agent.print_response(
    "Search Google for the latest news on AI agent frameworks",
    markdown=True,
    stream=True,
)

Every provider is enabled by default. Use the enable_* flags to expose only the tools you need:

# Web-only agent: Google, YouTube, Reddit
agent = Agent(
    tools=[
        ScavioTools(
            enable_google=True,
            enable_youtube=True,
            enable_reddit=True,
            enable_amazon=False,
            enable_walmart=False,
            enable_tiktok=False,
            enable_instagram=False,
        )
    ],
    markdown=True,
)

Toolkit Params

ParameterTypeDefaultDescription
api_keyOptional[str]NoneScavio API key. If not provided, uses the SCAVIO_API_KEY environment variable.
enable_googleboolTrueRegister the Google web search tool.
enable_amazonboolTrueRegister the Amazon search and product tools.
enable_walmartboolTrueRegister the Walmart search and product tools.
enable_youtubeboolTrueRegister the YouTube search and metadata tools.
enable_redditboolTrueRegister the Reddit search and post tools.
enable_tiktokboolTrueRegister the TikTok tools.
enable_instagramboolTrueRegister the Instagram tools.
allboolFalseRegister every available tool, ignoring the individual flags.

Toolkit Functions

Each function returns the Scavio response as a JSON string. Errors are returned as {"error": "..."} rather than raised.

FunctionDescription
google_searchSearch Google for real-time organic web results. Parameters include query (str), gl (two-letter country code), hl (two-letter UI language), start (result offset: 0, 10, 20, ...), device ("desktop" or "mobile"), nfpr (disable spelling auto-correction), google_domain, location, safe ("active" filters adult content), and time_period ("last_hour", "last_day", "last_week", "last_month", or "last_year").
amazon_searchSearch Amazon for products matching a query. Parameters include query (str), domain, country, language, currency, device ("desktop" or "mobile"), sort_by, start_page, pages, category_id, merchant_id, zip_code, and autoselect_variant.
amazon_productGet full details for a single Amazon product by ASIN. Parameters include asin (str), domain, country, language, currency, device ("desktop" or "mobile"), zip_code, and autoselect_variant.
walmart_searchSearch Walmart for products matching a query. Parameters include query (str), domain, device ("desktop" or "mobile"), sort_by, start_page, min_price, max_price, fulfillment_speed, fulfillment_type, delivery_zip, and store_id.
walmart_productGet full details for a single Walmart product by product ID. Parameters include product_id (str), domain, device ("desktop" or "mobile"), delivery_zip, and store_id.
youtube_searchSearch YouTube for videos matching a query. Parameters include query (str), upload_date, type ("video", "channel", or "playlist"), duration, sort_by, hd, subtitles, creative_commons, and live.
youtube_metadataGet structured metadata for a single YouTube video. Parameters include video_id (str).
reddit_searchSearch Reddit for posts or communities matching a query. Parameters include query (str), type ("posts" or "communities"), sort, and cursor (from a previous response).
reddit_postFetch a Reddit post with its threaded comments. Parameters include url (str), the full URL of the post.
tiktok_profileGet a TikTok user profile. Parameters include username (without "@") and sec_user_id. Provide one.
tiktok_user_postsList the videos posted by a TikTok user. Parameters include sec_user_id (str), cursor, count, and sort_type.
tiktok_videoGet details for a single TikTok video. Parameters include video_id (str).
tiktok_video_commentsList the comments on a TikTok video. Parameters include video_id (str), cursor, and count.
tiktok_comment_repliesList the replies to a TikTok comment. Parameters include video_id (str), comment_id, cursor, and count.
tiktok_search_videosSearch TikTok for videos matching a keyword. Parameters include keyword (str), cursor, count, sort_type, and publish_time.
tiktok_search_usersSearch TikTok for users matching a keyword. Parameters include keyword (str), cursor, and count.
tiktok_hashtagGet information about a TikTok hashtag. Parameters include hashtag_name (without "#") and hashtag_id. Provide one.
tiktok_hashtag_videosList videos for a TikTok hashtag. Parameters include hashtag_id (from tiktok_hashtag), cursor, and count.
tiktok_user_followersList the followers of a TikTok user. Parameters include sec_user_id (str), count, page_token, and min_time.
tiktok_user_followingsList the accounts a TikTok user follows. Parameters include sec_user_id (str), count, page_token, and min_time.
instagram_profileGet an Instagram user profile. Parameters include username (without "@") and user_id. Provide one.
instagram_user_postsList the posts of an Instagram user. Parameters include username (without "@"), user_id, count, and cursor. Provide a username or user ID.
instagram_user_reelsList the reels of an Instagram user. Parameters include username (without "@"), user_id, count, and cursor. Provide a username or user ID.
instagram_user_taggedList posts an Instagram user is tagged in. Parameters include username (without "@"), user_id, count, and cursor. Provide a username or user ID.
instagram_user_storiesGet the active stories of an Instagram user. Parameters include username (without "@") and user_id. Provide one.
instagram_postGet a single Instagram post. Parameters include url, media_id, and shortcode. Provide one.
instagram_post_commentsList the comments on an Instagram post. Parameters include shortcode, url, cursor, and sort_order. Provide a shortcode or URL.
instagram_comment_repliesList the replies to an Instagram comment. Parameters include media_id (str), comment_id, and cursor.
instagram_search_usersSearch Instagram for users matching a keyword. Parameters include keyword (str) and cursor.
instagram_search_hashtagsSearch Instagram for hashtags matching a keyword. Parameters include keyword (str) and cursor.
instagram_user_followersList the followers of an Instagram user. Parameters include username (without "@"), user_id, count, and cursor. Provide a username or user ID.
instagram_user_followingsList the accounts an Instagram user follows. Parameters include username (without "@"), user_id, count, and cursor. Provide a username or user ID.

Developer Resources