Skip to main content
Glama

google_ad_library_company_ads

Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoClient-side sort: last_shown (recent activity first) or first_shown. Default is ATC order.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 20, max 200). Flat 2 credits when results are returned; 0 credits when totalReturned is 0.
topicNoOnly "all" is supported (commercial ATC). Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days.
cursorNoPagination cursor from nextCursor.
regionNoAlias for country.
countryNoTwo-letter ISO country / region code (soft filter). Default US. Alias: region.
end_dateNoYYYY-MM-DD — keep creatives whose shown window overlaps this end.
advertiserYesAdvertiser name, domain (e.g. nike.com), or Google advertiser ID (AR…). Prefer AR… from advertiser-search.
start_dateNoYYYY-MM-DD — keep creatives whose shown window overlaps this start.

TDQS

B3.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and delivers substantial disclosure: flat 2-credit cost, no charge for empty results or failures, free 24h cache hit when cache=true (default always fresh), spend/impression ranges published only for election ads, and the isActive definition (lastShown within 7 UTC days). These all go beyond what the schema states. It stops short of covering rate limits or error behavior, but this is a genuinely informative behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five dense sentences with zero filler; each sentence carries a distinct fact (data availability, isActive rule, cost, billing, caching). The only structural flaw is leading with a caveat instead of the tool's core function, but as a behavioral note it is efficiently packed and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter tool with no output schema and no annotations, the description is incomplete: it never states the core operation or what the response contains (e.g., ad creatives, nextCursor pagination, default ATC sort order). Rich parameter documentation in the schema and the behavioral notes compensate partially, but the central 'what does this return and what do I do with it' is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline of 3 applies. The description adds interpretive context — commercial ads omit spend/impression ranges, and isActive depends on lastShown within 7 UTC days — which helps an agent understand why response fields may be empty, but it provides no parameter-level semantics beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does — there is no verb+resource statement like 'lists an advertiser's ads from the Google Ad Library.' A reader must infer the core function from the tool name and the advertiser parameter. It opens with a data-availability caveat rather than a purpose statement, and does not differentiate from siblings such as google_ad_library_ad_details or google_ad_library_advertiser_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to select this tool over its siblings — google_ad_library_ad_details, google_ad_library_advertiser_search, or the facebook_ad_library_* equivalents are never mentioned. The only operational advice is about caching and billing (cache=true, 2 credits), which is cost optimization rather than tool-selection guidance. The schema's advertiser parameter points to advertiser-search, but the description itself does not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

B3.2/5.0
Disambiguation3/5

The platform-prefix convention keeps most of the 178 tools clearly separated, but several clusters are genuinely ambiguous: tiktok_live_info is explicitly described as 'Identical to TikTok Live', instagram_basic_profile and instagram_channel_details both return profile stats, and facebook_profile_posts overlaps with facebook_profile_reels. The generic 'Summarizer' descriptions for facebook_summarize, instagram_summarize, and tiktok_summarize provide no disambiguating detail at all.

Naming Consistency4/5

The dominant snake_case platform_resource_suffix pattern is followed remarkably consistently across 178 tools (e.g. youtube_channel_videos, tiktok_search_users, reddit_subreddit_posts). Minor deviations exist: the same creator resource is called 'channel' in some tools (tiktok_channel_details, instagram_channel_posts) but 'profile' or 'user' in others (facebook_profile_posts, twitch_user_videos, linnkme_profile); link-in-bio tools mostly use _page but linkme uses _profile; and the video_summarize/video_transcript pair lacks a platform prefix.

Tool Count2/5

At 178 tools this is far beyond what any agent can efficiently navigate in a single flat namespace, and even individual platform subsets exceed reasonable bounds (TikTok alone has ~34 tools, YouTube ~25). The sheer breadth of the multi-platform scope partially justifies the count, but the server would be far more usable split into per-platform servers.

Completeness4/5

The read-only data surface is impressively thorough: nearly every platform has profile + content + search + comments coverage, and TikTok, YouTube, Instagram, and Facebook are covered end-to-end including shops, ads, transcripts, and summaries. Notable gaps are minor: Twitter has no keyword search tool, LinkedIn lacks comments, and Reddit has no user-profile endpoint, but none of these create dead ends for the server's core data-retrieval purpose.