Skip to main content
Glama

Server Details

Social media data: 85 tools across 11 platforms (YouTube, TikTok, Instagram, X & more), one key.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
Repository
CDCStream/captapi
GitHub Stars
0

TDQS

C2.9/5.0

Scored across 178 tools

Disambiguation2/5

Platform prefixes separate most tools, but several near-duplicates exist: tiktok_live and tiktok_live_info are explicitly identical with different pricing, and Instagram/Facebook profile endpoints overlap (basic_profile, channel_details, profile_search). With 178 tools, agents will frequently struggle to select the correct endpoint.

Naming Consistency3/5

Most tools follow a readable platform_resource pattern, but naming conventions are inconsistent across platforms: the same concept appears as 'profile', 'channel', or 'user', and search appears as both suffix (youtube_search) and prefix (tiktok_search_users). Generic actions like summarize and transcript are mixed with noun-style resource names.

Tool Count1/5

At 178 endpoints, this is an extreme tool count for any MCP server. Even for a broad multi-platform data API, the set far exceeds a manageable scope and will overwhelm tool selection and prompt planning.

Completeness3/5

The surface is broad across many platforms, but coverage is uneven: TikTok, Instagram, and YouTube are well covered, while Twitter lacks search, Google Ad Library lacks keyword ad search, GitHub lacks issues, and several platforms have only a single endpoint. Core read workflows are present, but obvious per-platform gaps remain.

Available Tools

178 tools
account_balanceCInspect

Plan, subscription vs top-up credits, monthly quota, and renewsAt — 0 credits. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.6/5.0
Behavior2/5

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

The description discloses cost (0 credits) and caching behavior (cache=true for free 24h hit), adding some transparency. However, it instructs to 'Pass cache=true' while the input schema has no parameters, creating a direct contradiction. This is misleading and undermines behavioral clarity, especially without annotations to fill the gap.

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

Conciseness3/5

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

The description is short but not well-structured. It mixes output fields, cost, and caching in a single run-on sentence. While it is concise, the sequence is jumbled and the 'Pass cache=true' instruction is ambiguous. It could be reorganized for clarity.

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

Completeness2/5

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

The description lists output fields (plan, credits, quota, renewsAt) but lacks context on return format, authentication requirements, error behavior, or how the cache feature works given the schema lacks the parameter. For a zero-param tool with no output schema, more detail is needed to fully understand the tool's behavior.

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

Parameters2/5

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

With zero parameters, the baseline is 4, but the description introduces a 'cache' parameter not present in the schema. This is misleading and actively harms understanding of what arguments may be passed. Since the schema is empty and the description adds a nonexistent parameter, it fails to provide value and introduces confusion.

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

Purpose4/5

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

The description clearly indicates the tool returns account balance information: plan type, subscription vs top-up credits, monthly quota, and renewsAt date. It effectively conveys the resource and fields, though it does not explicitly state 'get balance' or 'retrieve account balance.' It is distinguishable from siblings like usage and request history.

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 is provided on when to use this tool versus alternatives. It mentions cost (0 credits) and caching behavior but does not state prerequisites, typical use cases, or why one would call this over related account tools. The context is minimal and lacks explicit 'use when' instructions.

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

account_daily_usageBInspect

Day-by-day credit usage for spend monitoring (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoNumber of days to include (default 30, max 365).

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses zero cost, free failures/empty results, and cache behavior, but the claimed cache parameter does not exist in the schema. It also does not describe the shape of the returned daily usage data.

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

Conciseness3/5

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

The first sentence is front-loaded and clear, but 'Costs 0 credits' redundantly repeats the earlier '(0 credits)'. The invalid cache instruction adds confusion rather than value; two brief sentences still contain notable waste.

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?

This is a simple one-parameter tool with no output schema, and the description covers cost, caching, and failure policy. However, the invalid cache reference makes the instructions internally inconsistent, and it does not clarify what fields each daily usage entry contains.

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

Parameters2/5

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

The schema documents 'days' well with default 30 and max 365, so the baseline is 3. However, the description invents a 'cache=true' parameter that the schema explicitly rejects via additionalProperties:false, creating harmful parameter confusion. It also adds no real meaning to the documented 'days' parameter.

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

Purpose5/5

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

The description opens with a specific verb+resource: 'Day-by-day credit usage for spend monitoring', which clearly distinguishes it from sibling tools like account_balance and account_request_history. The scope and free credit cost are immediately visible.

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?

It provides some context ('for spend monitoring') but no explicit when-to-use vs alternatives or exclusions. More importantly, it instructs 'Pass cache=true' even though the input schema only includes 'days' and additionalProperties is false, so this guidance is misleading and would fail validation.

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

account_most_used_routesBInspect

Ranked list of which Captapi routes your key calls most (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoNumber of days to include (default 30, max 365).
limitNoMax rows to return (default 20, max 100). Free — does not consume credits.

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are present, so the description carries the transparency burden. It usefully discloses that the call costs 0 credits, that empty results and failures are never charged, and that caching is fresh by default. The claim 'Pass cache=true' is not supported by the schema, which creates a transparency gap despite the useful cost-related details.

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?

The description is short, front-loaded, and easy to scan, with the most important facts in the first sentence. The only issue is the redundant mention of 0 credits twice, but overall it avoids unnecessary elaboration.

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 simple tool with two optional schema-described parameters, the description covers purpose, cost, failure behavior, and cache behavior. The unsupported cache parameter and lack of anything describing the ranked output structure or route identifier format leave some gaps, but the tool is mostly understandable.

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

Parameters2/5

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

The input schema already has 100% coverage for days and limit, including defaults and ranges, so the description does not need to add param-level detail. However, the description explicitly instructs callers to pass cache=true, but no such parameter exists in the schema and additionalProperties is false; this actively misleads invocation.

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

Purpose4/5

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

The description clearly says it returns a ranked list of Captapi routes by usage for the caller's key, which makes the purpose specific and distinct from sibling account tools like account_balance or account_daily_usage. It could be more explicit about what a 'route' is and how the ranking is ordered, but the core intent is clear.

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

Usage Guidelines3/5

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

Usage is implied: use this tool to see which Captapi routes your key consumes most, especially when cost is a concern since it is free. However, there is no explicit guidance on when to choose this over account_daily_usage or account_request_history, and no when-not-to-use advice.

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

account_request_historyAInspect

Recent API requests for your key — requestId, status, credits, cacheHit (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax rows to return (default 50, max 500). Free — does not consume credits.
sinceNoInclusive lower bound on createdAt (ISO date or datetime).
untilNoExclusive upper bound on createdAt (ISO date or datetime).
cursorNoPagination cursor from nextCursor (createdAt of the last row). Leave empty for the first page.
endpointNoExact Captapi path filter, e.g. /v1/instagram/basic-profile.
statusCodeNoFilter by HTTP status code (e.g. 500).

TDQS

A3.8/5.0
Behavior3/5

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

The description discloses cost behavior (0 credits, no charge for empty results/failures) and hints at a caching mechanism. However, it references a 'cache' parameter that does not exist in the schema (additionalProperties: false), which is misleading. It does not describe pagination details or error behavior beyond what the schema implies, but the cost transparency is valuable.

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?

The description is a single sentence that conveys multiple pieces of information (purpose, cost, cache behavior). It is concise but slightly dense and could be clearer with line breaks. Overall, it is efficient without unnecessary fluff.

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?

With no output schema, the description provides some context by listing likely return fields (requestId, status, credits, cacheHit). It does not explain pagination beyond the schema's cursor description, nor does it clarify the cache behavior given the missing parameter. The description is adequate but leaves some ambiguity about the cache option and what exactly is returned.

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?

All six parameters are fully described in the schema (100% coverage), so the description does not need to repeat them. The description does not add any extra meaning to the parameters; it only mentions a non-existent 'cache' parameter, which does not help. Baseline is 3 given full schema coverage.

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

Purpose5/5

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

The description clearly states the tool's purpose: retrieving recent API requests for the user's key, listing key fields like requestId, status, credits, and cacheHit. It is distinct from sibling tools such as account_balance and account_daily_usage, which focus on balance and usage totals rather than individual request history.

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

Usage Guidelines4/5

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

The description provides some usage guidance, including that the tool costs 0 credits and that empty results/failures are never charged, which reassures the agent about cost. It also mentions a caching option ('Pass cache=true') but this parameter is not present in the schema, which could mislead. No explicit guidance on when to prefer this over alternatives is given, but its distinct purpose implies when it should be used.

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

amazon_shop_pageAInspect

Third-party seller storefronts (/sp?seller= / /s?me=) — ASIN + canonical /dp URLs, price, badges. Not influencer /shop/{handle}. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesAmazon seller storefront URL (/sp?seller=… or /s?me=…) or raw seller ID. Not influencer /shop/<handle> pages. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax products to include (default 20, max 200; 0 = seller metadata only). Billed per storefront page — 1 credit per ~16 products.
cursorNoPagination cursor from nextCursor (page or page:offset). Leave empty for the first page.
marketplaceNoAmazon marketplace code. Default US.

TDQS

A4.2/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 behavior disclosure burden and largely succeeds: it discloses the 1-credit cost, that empty results and failures are never charged, and the free 24h cache-hit behavior with default always-fresh. It doesn't address auth or rate limits, but the economically important traits are transparent.

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

Conciseness5/5

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

Four sentences with zero filler: purpose, payload scope, exclusion, and cost/caching behavior in order. Every sentence earns its place and the most decision-relevant facts are front-loaded.

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

Completeness4/5

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

For a 5-param tool with no output schema or annotations, the description covers scope, exclusions, output-content hints, pricing and caching, while the schema covers all parameters at 100%. Only auth/rate-limit behavior and the exact return structure go unspecified, which is a minor gap for this tool family.

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%, with url, cache, limit, cursor and marketplace each fully documented, so the baseline 3 applies. The description reinforces cache=true and the credit cost but adds no parameter syntax or format details beyond the schema — appropriate given the rich schema.

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

Purpose5/5

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

States a specific verb+resource: fetching third-party seller storefronts via /sp?seller= or /s?me=. Enumerates the payload (ASIN + canonical /dp URLs, price, badges) and explicitly excludes influencer /shop/{handle} pages, sharply distinguishing it from potential sibling tools.

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

Usage Guidelines4/5

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

Provides clear context: it targets Amazon seller storefronts and excludes influencer /shop pages, with the schema reinforcing the URL-platform-match requirement. No alternative tool is named for influencer storefronts, so the 'when-not' guidance is present but the routing alternative is left for the agent to infer.

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

analytics_compareAInspect

Compare unified metrics across up to 10 URLs — each row is the analytics/post object (1 credit/resolved URL). Costs 1 credit/url. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYesComma-separated post/video/reel URLs (up to 10), any mix of the same 11 platforms as Post Analytics. Example: a TikTok URL and a YouTube URL in one call.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden, and it delivers: it discloses the credit cost per URL, states that empty results and failures are never charged, and explains the cache behavior including the default 'always fresh' mode. This goes well beyond what the input schema states.

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

Conciseness5/5

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

The description uses three tight sentences, front-loading the core purpose before cost and caching details. Every sentence adds distinct information with no filler or repetition of the schema verbatim.

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

Completeness5/5

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

The tool is simple with only two parameters and no output schema, and the description covers purpose, input limits, platform scope, output row semantics, cost behavior, and cache behavior. An agent has everything needed to invoke it correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds extra meaning by clarifying the per-URL credit cost, the cache hit pricing, the unified metrics output shape, and the flexibility of mixing platforms. This is useful context beyond the schema's basic field descriptions.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Compare unified metrics across up to 10 URLs.' It clearly distinguishes this tool from single-URL analytics tools like analytics_post by emphasizing multi-URL comparison. The mention of each row being an analytics/post object further grounds what the tool returns.

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

Usage Guidelines4/5

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

The description clearly implies this tool is for comparing multiple URLs at once, and references Post Analytics to indicate platform scope. It does not explicitly say 'use analytics_post for a single URL' or list exclusion conditions, but the multi-URL comparison context gives an agent clear situational guidance.

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

analytics_postAInspect

Unified metrics for one post, video, or reel — platform auto-detected (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic post/video/reel URL from one of 11 platforms: YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform is auto-detected — cross-platform URLs are expected here (unlike single-platform endpoints). Not in scope: Kwai, Twitch, Spotify, Snapchat, and other Captapi platforms.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and it delivers meaningful behavioral detail: 1-credit cost, no charge for empty results/failures, and cache behavior with a free 24h hit when cache=true. It does not describe what metrics are included or any rate limits, which keeps it from a 5.

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?

The description is short and front-loaded with the core purpose. It loses a point because 'Costs 1 credit' repeats the parenthetical '(1 credit)' in the first sentence.

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 two-parameter tool with no output schema, it covers cost, caching, and platform scope, but 'unified metrics' does not say what metrics are actually returned. An agent can invoke it correctly but may not know whether the response satisfies a request for specific data.

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% and both url and cache are already fully documented, so the description adds only cost/cache context rather than parameter meaning. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb and resource: returns unified metrics for a single post, video, or reel, with platform auto-detection. The schema's 'unlike single-platform endpoints' explicitly distinguishes it from the many platform-specific detail tools in the sibling list.

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

Usage Guidelines4/5

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

The description plus schema gives a clear use case: cross-platform URLs expected for unified metrics, as opposed to single-platform endpoints. It does not explicitly rule out alternatives like analytics_compare or platform-specific deep-dive tools, so it stops short of a full when/when-not decision rule.

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

bluesky_post_detailsAInspect

Post thread via getPostThread — nested replies[], facet links/mentions/hashtags, rich author (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesBluesky post URL, e.g. https://bsky.app/profile/handle/post/RKEY. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
depthNoReply nesting levels under the post (0 = post only with no replies[], default 1, max 6). Maps to Bluesky getPostThread depth.

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden and does so well: it discloses the 1-credit cost, that empty results and failures are never charged, and the free caching behavior. It does not mention rate limits or auth requirements, but for a read-only fetch tool the cost and caching transparency is substantial.

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?

The description is compact and front-loads the core purpose and return content. The cost information is slightly redundant ('(1 credit)' followed by 'Costs 1 credit'), and 'Post thread' is ambiguous as a verb phrase, but the overall structure is efficient.

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

Completeness4/5

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

The description covers the key invocation details: required URL, cache behavior, depth mapping, cost, failure billing, and the main returned fields. With no output schema, it gives enough return-content context for an agent to understand what the tool provides, though it could add explicit sibling differentiation.

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 schema already documents url, cache, and depth. The description adds some context around caching and cost, but it does not add meaningfully new parameter-level semantics beyond what the input schema already provides.

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

Purpose4/5

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

The description states it returns a Bluesky post thread via getPostThread and lists the returned content: nested replies, facet links/mentions/hashtags, and rich author info. This distinguishes it from profile and user-post sibling tools, though the phrasing 'Post thread' is terse and could more explicitly say 'retrieve details for a single Bluesky post and its replies.'

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

Usage Guidelines3/5

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

The description gives clear operational guidance, such as using cache=true for a free 24h cache hit and defaulting to fresh fetches. However, it does not explicitly state when to choose this tool over alternatives like bluesky_profile or bluesky_user_posts, leaving usage context implied rather than explicit.

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

bluesky_profileAInspect

Bluesky profile — handle, did, bio, counts, banner, verification{}, labels[], and associated{} (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesBluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.5/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 does a solid job: it discloses the 1-credit cost, states that empty results and failures are never charged, and explains caching behavior (cache=true gives a free 24h hit; default is always fresh). It does not explicitly state read-only behavior, but that is reasonably implied by 'profile' retrieval. The billing and caching specifics add meaningful transparency beyond basic expectations.

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

Conciseness3/5

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

The description is compact and front-loads the profile contents, but it contains redundancy: '(1 credit)' appears in the first clause and 'Costs 1 credit' repeats the same information in the second sentence. The caching guidance is concise, but the duplication means not every sentence earns its place.

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

Completeness4/5

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

Given there is no output schema and no annotations, the description provides a good inventory of return fields, the credit cost, failure non-charging, and cache options. It doesn't cover rate limits or authentication, but for a straightforward profile fetch these may not be critical. The 'associated{}' and 'verification{}' notation is slightly cryptic but acceptable. Overall, it is reasonably complete for invoking the tool correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3, but the description adds valuable semantic context: it clarifies that cache=true yields a free 24h cache hit, distinguishes this from default always-fresh behavior, and points to cacheMaxAge for 1d–30d freshness control. This goes beyond the schema's generic 'default TTL' and helps the agent make informed caching choices.

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

Purpose4/5

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

The description clearly identifies the resource as a Bluesky profile and lists the returned fields (handle, did, bio, counts, banner, verification{}, labels[], associated{}), so an agent knows exactly what the tool produces. It lacks an explicit verb like 'fetch' or 'get', but the resource and payload scope are clear. It doesn't explicitly distinguish from sibling tools like bluesky_user_posts, but the platform and 'profile' focus make the purpose reasonably distinct.

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?

The description provides no guidance on when to use this tool versus alternative siblings such as bluesky_user_posts or bluesky_post_details. It does offer caching usage tips (cache=true for a free 24h cache hit, prefer cacheMaxAge for 1d–30d), but that is parameter handling rather than tool-selection guidance. No exclusions or alternative references are present.

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

bluesky_user_postsAInspect

Author feed — posts and reposts (isRepost marked), quote/external/images embeds, opaque cursor. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesBluesky profile URL, @handle, or handle, e.g. https://bsky.app/profile/handle.bsky.social. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 100). Billed per result.
cursorNoOpaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not invent a cursor from publishedAt — the feed is ordered by feed time (reposts sort by repost time).
filterNoBluesky getAuthorFeed filter: posts_with_replies (default), posts_no_replies, posts_with_media, posts_and_author_threads, or posts_with_video. Controls replies/media/threads — not reposts. Use includeReposts=false to drop reposts.
includeRepostsNoWhen false, omit repost rows (reasonRepost). Default true — reposts are included and marked with isRepost / repostedBy / repostedAt.

TDQS

A3.6/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 of behavioral disclosure, and it does a strong job: it reveals repost marking, embed types, opaque cursor semantics, credit costs per result, the fact that empty results and failures are not charged, and cache behavior. It does not cover every possible behavior like rate limits or explicit output shape, but the provided details add meaningful transparency.

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

Conciseness5/5

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

The description is extremely compact and front-loaded: it opens with the core resource and content type, then adds cost and caching details in short, scannable sentences. Every sentence contributes useful information with no redundancy or filler.

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

Completeness4/5

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

Given six parameters, no output schema, and no annotations, the description is largely complete: it covers content, repost markers, embeds, cursor pagination, costs, failure billing, and cache behavior. It stops short of describing the exact response envelope or error format, which would make it fully complete in the absence of an output schema.

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 is 3 even without parameter detail in the description. The description adds some value by explaining the opaque cursor, cache hit behavior, and per-result billing, which relate to cursor, cache, and limit, but it does not need to restate the schema's already thorough parameter docs.

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

Purpose4/5

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

The description clearly identifies the resource as an 'Author feed' containing posts and reposts, with reposts marked via isRepost and various embed types. It differentiates from sibling tools like bluesky_profile and bluesky_post_details by emphasizing feed-level listing behavior, though it lacks an explicit verb like 'fetch' or 'list'.

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?

The description gives useful context about caching and cost, but it does not explicitly state when to choose this tool over alternatives such as bluesky_profile or bluesky_post_details. Usage is only implied by the phrase 'Author feed' rather than explicitly routed with when-to-use or when-not-to-use guidance.

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

facebook_ad_library_ad_detailsAInspect

One Meta ad by ID — same creative as search, plus delivery breakdowns when Meta publishes them. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesMeta Ad Library ad URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. It does this well by stating the flat 2-credit cost, that empty results and failures are never charged, that cache=true yields a free 24h hit, and that breakdowns appear only when Meta publishes them. It omits auth and rate-limit details, but those are less critical for a single-ad lookup.

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?

The definition is short, front-loaded, and delivers the core purpose in the opening phrase. The only notable flaw is the redundant 'Flat 2 credits. Costs 2 credits.' which slightly weakens the otherwise tight structure.

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

Completeness4/5

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

For a two-parameter lookup endpoint with no annotations and no output schema, the description is nearly complete: it explains what is returned, how much it costs, when it is free, and how it differs from search. It lacks explicit output-format or auth notes, but those are not essential for invoking this tool correctly.

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 is 3. The description's cache guidance largely duplicates the schema's cache property description, and it adds no URL-format details beyond what the schema already provides for the url parameter.

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

Purpose5/5

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

States a specific operation: retrieve one Meta ad by ID. 'Same creative as search, plus delivery breakdowns' distinguishes it from the search and transcript sibling tools without relying on the tool name alone.

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

Usage Guidelines3/5

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

Implies the tool is for a known Meta ad ID/URL and that it adds delivery breakdowns beyond search results, but it never explicitly says when to choose this over facebook_ad_library_search or facebook_ad_library_ad_transcript. The schema's cross-platform warning is a parameter constraint, not tool-selection guidance.

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

facebook_ad_library_ad_transcriptAInspect

Written creative copy from a Meta ad — headline, body, CTA, landing URL. Not a speech transcript. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesMeta Ad Library ad URL or ad ID. Returns the ad's written copy — headline, body text, CTA and landing URL. Meta does not expose ad audio, so this is not a speech transcript. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. It discloses credit costs (2 credits), that empty results and failures are never charged, and cache semantics (free 24-hour hit vs. always-fresh default). It does not cover rate limits or error types, but it transparently covers the most decision-relevant behaviors.

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

Conciseness5/5

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

The description is three short sentences with no wasted words: the core output and caveat come first, followed by pricing and cache options. Every sentence earns its place and the most critical distinguishing fact (not a speech transcript) is fron-loaded.

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

Completeness5/5

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

For a simple two-parameter read tool with 100% schema coverage and no output schema, the description is sufficient. It states the output fields, pricing, cache behavior, and non-transcript nature, while the schema handles URL platform constraints. Nothing needed to invoke the tool correctly 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?

The input schema already fully describes both parameters, including URL/ID format, platform matching, and cache behavior, so schema coverage is 100% and the baseline is 3. The description adds no significant parameter-level detail beyond what the schema provides; it only reinforces cost and cache semantics.

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

Purpose5/5

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

The description states exactly what the tool returns — written creative copy from a Meta ad (headline, body, CTA, landing URL) — and explicitly separates it from a speech transcript, which is crucial given the tool's name contains 'transcript'. This scope is unambiguous and distinguishes it from transcript-style siblings like youtube_transcript or tiktok_transcript.

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

Usage Guidelines4/5

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

The description provides clear context for when to use it: for Meta ad written copy, not speech audio. It also gives practical invocation guidance such as platform-match requirements and cache behavior. It does not explicitly name an alternative tool like facebook_ad_library_ad_details, but the non-transcript clarification and cost/cache notes give sufficient routing information.

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

facebook_ad_library_company_adsCInspect

Company Ads Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYespageId from /search-companies (preferred), libraryUrl, vanity page URL (facebook.com/nike/), or Ad Library URL with view_all_page_id. Do not pass profileId from facebook.com/{digits}/ when it differs from pageId. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call on the native path; the extended fallback bills per returned ad.
countryNoTwo-letter ISO country code. Default US.

TDQS

C2.6/5.0
Behavior3/5

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

With no annotations, the description carries the burden, and it does add useful operational context: flat 2-credit cost, no charge for empty results/failures, and cache-hit semantics. However, it does not disclose what the tool returns, how results are structured, or any other runtime behavior.

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?

Two short sentences with no filler; the cost and cache behavior are stated efficiently. It is concise, though it front-loads billing details instead of the tool's actual function.

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

Completeness2/5

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

The description is incomplete for a tool with no output schema and no annotations. It covers cost and caching but never states that the tool returns a company's Facebook Ad Library ads, what fields come back, or how it differs from related library tools.

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 schema already documents all four parameters thoroughly. The description adds no parameter-level meaning, but the baseline of 3 is appropriate because the schema does the heavy lifting.

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

Purpose2/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; 'Company Ads' merely echoes the tool name and then moves straight to pricing. There is no verb or resource statement, so an agent cannot tell this apart from facebook_ad_library_search or facebook_ad_library_ad_details.

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 is given about when to use this tool versus alternatives. The description focuses entirely on credits and caching, with no mention of use cases, prerequisites, or exclusions.

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

facebook_ad_library_search_companiesAInspect

Find Meta Ad Library pages by brand — name-matched, pageId for company-ads (not profileId). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesCompany or brand name to search for (min 2 characters). Name-matched — off-brand pages are dropped.
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 per call.
countryNoTwo-letter ISO country code. Default US.

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations provided, the description carries full burden. It discloses pricing (2 credits), that empty results/failures are free, cache behavior (cache=true gives free hit, default fresh), and the output nature (pageId for company-ads, not profileId). This is substantial behavioral context beyond a simple 'find' statement.

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

Conciseness5/5

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

Three short sentences, all earning their place. The first sentence delivers the core purpose with key differentiators, the second covers pricing and failure policy, the third gives the cache hint. No redundant or speculative content.

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

Completeness4/5

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

For a 4-param search tool with no output schema and no annotations, the description covers purpose, cost, failure policy, cache behavior, and ID type. It doesn't explicitly describe the return list shape, but the 'pageId for company-ads' phrase conveys the essential output. Most of the missing parameter details are in the 100%-covered schema.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value by specifying the result contains pageId for company-ads (not profileId), which is not in the schema. It also reiterates cache=true for free hit, reinforcing the schema. This exceeds the baseline.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Find Meta Ad Library pages by brand.' It adds two differentiating details: results are name-matched and return pageId for company-ads (not profileId). This clearly separates it from sibling tools like facebook_ad_library_search and facebook_ad_library_company_ads.

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

Usage Guidelines4/5

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

The description gives clear context: this is for finding Meta Ad Library pages by brand name, name-matched, with pageId output. It doesn't name sibling alternatives or state when not to use it, but the purpose implies the appropriate scenario. Cache and cost behavior also guide usage.

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

facebook_comment_repliesCInspect

Comment Replies Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook post URL the comment belongs to. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
commentIdYesID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id.

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does add useful non-obvious operational details: the 2-credit cost, that empty results and failures are not charged, and that cache=true provides a free 24-hour hit. However, it does not state whether the operation is read-only, what side effects exist, or any rate-limit or authentication considerations.

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?

The description is short and dense, with each sentence delivering distinct operational facts about cost, failure billing, and caching. The only waste is the redundant 'Comment Replies' at the start, but overall the structure is efficient and to the point.

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 simple fetch-replies tool, the schema covers parameters and the description covers credits and caching. However, there is no output schema and the description does not clarify the return shape, pagination, or how the results relate to the provided commentId, so some important context 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 parameters are already well-documented in the input schema. The description adds no new semantic meaning about the parameters beyond echoing the cache option, so the baseline score of 3 is appropriate.

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

Purpose2/5

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

The description opens with 'Comment Replies', which merely restates the tool name rather than stating an action such as 'Fetch' or 'List'. It does not explicitly identify the resource or distinguish this from facebook_comments or the sibling comment-reply tools for other platforms.

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 is given about when to choose this tool over alternatives like facebook_comments or youtube_comment_replies. The description focuses on credits and caching, not on the conditions that should lead an agent to select this endpoint.

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

facebook_commentsAInspect

Facebook post comments with reactionCount, reactions.like when mixed, author.id (pfbid), and replyCount. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoFacebook post or Reel URL. Omit when feedbackId is set. The URL platform must match this endpoint's platform.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
feedbackIdNoPost feedback id from /v1/facebook/details (base64 feedback:POSTID). Prefer when you already have it — also accepts feedback_id.

TDQS

A3.6/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 transparency burden and does substantial work: it discloses the 2-credit cost, the no-charge policy for empty results and failures, the 24h cache behavior, and the default fresh-fetch behavior. It does not mention pagination or reply expansion, but the disclosed behavior is valuable and specific.

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

Conciseness5/5

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

The description is four short sentences with no wasted words, front-loading the output fields before covering cost and caching. Every sentence earns its place.

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

Completeness4/5

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

Combined with the fully described schema, the agent knows the input parameters, the key output fields, the cost model, and the caching behavior, which is sufficient for a moderate-complexity tool with no output schema. The main missing context is routing to facebook_comment_replies if reply bodies are needed.

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 all four parameters are already well documented. The description adds no parameter-level meaning beyond what the schema provides, including the cache behavior which is already described in the schema. This matches the baseline for complete schema coverage.

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

Purpose4/5

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

The description clearly identifies the resource as Facebook post comments and lists distinctive output fields (reactionCount, reactions.like, author.id, replyCount), making the tool's purpose inferable. It lacks an explicit verb such as 'list' or 'get' and does not differentiate from the sibling facebook_comment_replies tool.

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?

The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention facebook_comment_replies or other comment-related siblings, and the cache/cost notes are operational tips rather than tool-selection guidance.

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

facebook_detailsAInspect

Facebook post or Reel — caption, engagement, author id, video{} playback, and music when Facebook exposes them. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description must carry full behavioral disclosure, and it does so by stating the 2-credit cost, the no-charge policy for empty/failed results, the free 24h cache behavior versus default fresh fetch, and the caveat that some fields appear only 'when Facebook exposes them.' It doesn't discuss rate limits or auth, but the public-URL constraint is in the schema, and the disclosed items go well beyond a bare description.

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

Conciseness5/5

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

Four short sentences lead with the resource and returned fields, then cover cost, charge policy, and caching. No filler or repetition; each sentence adds information. The only slight cryptic element is 'video{} playback', but it conveys the object shape without bloat.

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

Completeness4/5

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

Without an output schema, the description supplies the key return categories and the variability caveat ('when Facebook exposes them'), plus cost and caching behavior. It doesn't cover every edge case (e.g., private posts, redirects), but for a 2-parameter tool with a well-documented schema this is sufficient for an agent to invoke it correctly.

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 coverage is 100%, so the schema already documents both url and cache. The description's cache statement ('Pass cache=true for a free 24h cache hit (default always fresh)') restates the schema's default-false semantics, adding no new meaning. Baseline of 3 is appropriate because the description doesn't need to compensate.

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

Purpose4/5

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

The description identifies the target resource ('Facebook post or Reel') and enumerates returned content (caption, engagement, author id, video{} playback, music), distinguishing it from sibling Facebook tools like facebook_comments or facebook_page_details. However, there is no explicit verb like 'retrieves' or 'fetches', so the action is inferred rather than stated.

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

Usage Guidelines3/5

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

The description implies the use case — call when you need details of a single Facebook post or Reel — but it never names alternative tools or conditions for choosing between them (e.g., facebook_comments for comments, facebook_profile_posts for a user's posts). The only guidance present is about not passing cross-platform URLs, which is a parameter constraint in the schema rather than tool-selection advice.

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

facebook_event_detailsAInspect

Get a Facebook event — title, local start/end, timezone, place, host id, and attendance when exposed. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook event URL, e.g. https://facebook.com/events/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and covers several operational traits: costs 2 credits, free 24h cache hits with cache=true, and no charge for empty results or failures. It also notes attendance is only returned 'when exposed,' setting expectations about field availability. It does not mention rate limits, auth, or private-event restrictions, but the core cost/failure behavior is disclosed.

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

Conciseness5/5

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

Three sentences, front-loaded with the tool's purpose followed by cost and caching. No filler or redundancy; every sentence earns its place.

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

Completeness4/5

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

For a simple two-parameter lookup with no output schema, the description is nearly complete: it names returned fields, cost model, and cache behavior. The only notable gap is explicit routing guidance among Facebook sibling tools, but that is more about tool selection than invocation context.

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%, with both url and cache fully documented. The description's cache note ('free 24h cache hit... default always fresh') largely mirrors the schema and adds no new parameter semantics beyond what is already structured.

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

Purpose5/5

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

The description uses a specific verb ('Get') and resource ('Facebook event') and enumerates the exact data fields returned: title, local start/end, timezone, place, host id, and attendance. This clearly differentiates it from sibling tools like facebook_event_search or facebook_profile_events.

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

Usage Guidelines3/5

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

The description implies usage when an agent has a Facebook event URL, and the schema's url parameter reinforces the platform-match constraint. However, it never explicitly names alternatives like facebook_event_search or states when not to use this tool, so guidance is only implied rather than explicit.

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

facebook_group_postsAInspect

Public Facebook group posts — listingHits / hydrateFailures / hydrateSkipped, sortBy, and per-count *IsApproximate. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic Facebook group URL, e.g. https://facebook.com/groups/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.
sortByNoTOP_POSTS | RECENT_ACTIVITY | CHRONOLOGICAL (default) | CHRONOLOGICAL_LISTINGS. Maps to Facebook sorting_setting.

TDQS

A4/5.0
Behavior5/5

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

With no annotations at all, the description carries the full burden and does a strong job: it discloses the 2-credit cost, free handling of empty results and failures, 24-hour cache behavior, and the approximate-count/failure/skip response characteristics. This is far more than a generic read-only statement.

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

Conciseness5/5

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

The description is compact, front-loaded with the core resource, and every sentence adds value: response characteristics, cost, failure policy, and cache behavior. No filler or repetition.

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

Completeness4/5

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

For a tool with no output schema, the description does a reasonable job of hinting at response content via listingHits/hydrateFailures/hydrateSkipped and approximate counts, plus the required url parameter is documented in the schema. It could more clearly state the overall return shape, but the core calling and billing context is complete.

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 coverage is 100%, so the baseline is 3. The description mentions cache, sortBy, and approximate counts, but it mostly echoes or lightly references what the schema already documents rather than adding new parameter-level meaning.

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

Purpose4/5

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

The description identifies the resource as 'Public Facebook group posts' and lists the notable response attributes, so an agent can tell this is a fetch/list operation for group posts. It is specific enough to distinguish from profile posts or page details, though it lacks an explicit verb like 'get' or 'list'.

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

Usage Guidelines3/5

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

The description clearly implies it is for public Facebook group posts, but it never names sibling tools or conditions for when to choose this over, for example, facebook_profile_posts or facebook_page_details. It does provide useful operational guidance on caching and credit charges, but not tool-selection guidance.

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

facebook_marketplace_itemAInspect

Marketplace listing — title, priceAmount, status, seller{}, condition, coords (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook Marketplace item URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/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 discloses meaningful operational behavior: the exact credit cost, that empty results and failures are not charged, and that cache=true provides a free 24h cache hit. It does not explicitly state read-only semantics or rate limits, but the billing and caching details are unusually specific and valuable.

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?

The description is compact and front-loads the resource and key fields before moving to cost and caching details. The phrase 'coords (2 credits)' is slightly cryptic, but the overall structure is efficient and each sentence contributes useful information.

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

Completeness4/5

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

For a simple two-parameter tool with no output schema, the description lists the expected return fields and covers billing, failure charging, and cache behavior. It could be more explicit about URL input and error details, but the schema covers the URL and the description mentions failures.

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?

The input schema already provides 100% parameter coverage, including URL platform matching and cache behavior. The description mostly reiterates the cache parameter and cost, adding no new semantic meaning beyond what the schema already documents.

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

Purpose4/5

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

The description identifies a Marketplace listing and enumerates its returned fields (title, priceAmount, status, seller, condition, coords), making it clear this is an item-detail endpoint. It lacks an explicit verb like 'fetch' or 'get', but the resource scope is unambiguous and distinguishable from the marketplace search siblings.

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

Usage Guidelines3/5

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

The description implies usage with a specific Marketplace item URL and touches on cache usage, but it never explicitly contrasts this tool with facebook_marketplace_search or facebook_marketplace_location_search. The intended use case is inferable from the required URL and the term 'Marketplace listing', but no direct guidance is given.

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

facebook_page_detailsAInspect

Facebook page profile — likes vs followers (distinct), talkingAbout, category, website, and public email. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook page URL, @handle, or page name, e.g. https://facebook.com/PageName. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.6/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 of disclosing behavior. It usefully discloses the 2-credit cost, that empty results and failures are never charged, and the cache behavior with cache=true. This goes beyond surface-level purpose and gives an agent actionable operational expectations, though it does not discuss rate limits or error response specifics.

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

Conciseness5/5

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

The description is a compact two-sentence structure: the first sentence conveys purpose and key output fields, and the second covers cost and caching. There is no filler or redundant elaboration; every clause contributes useful information.

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

Completeness4/5

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

The tool is simple, has only two well-documented parameters, and no output schema, so the description's listing of returned fields partially compensates. It also covers costing and cache behavior, which are important operational details. It could be more complete by clarifying the shape of the response or handling of missing pages, but overall it is sufficient for the tool's complexity.

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 schema already documents both url and cache parameters well. The description restates the cache behavior already present in the schema, adding no meaningful new parameter semantics. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly identifies the resource as a Facebook page profile and lists specific returned data like likes vs followers, talkingAbout, category, website, and public email. However, it lacks an explicit verb like 'retrieves' or 'returns', and it does not explicitly differentiate itself from the similar sibling facebook_details.

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?

The description gives no guidance on when to use this tool versus alternatives such as facebook_details or facebook_summarize. It mentions cache usage and credit cost, but offers no selection criteria or exclusions to help route an agent to the correct endpoint.

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

facebook_profile_eventsAInspect

List a Facebook Page's events — local startDate, timezone, venue. 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call. Response `source` is native or extended (fetch path — not a price change).

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does a solid job: it discloses the 2-credit cost, that empty results and failures are never charged, and the cache semantics (free 24h hit, default always fresh). These are meaningful behavioral details beyond the basic 'list' action, though it does not cover rate limits or detailed return structure.

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

Conciseness3/5

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

The description is short and front-loaded with the core purpose, but it redundantly states '2 credits. Costs 2 credits.' and largely repeats the schema's cache explanation. The redundancy makes it less crisp than it could be.

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

Completeness4/5

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

Together with the fully described schema, the description is nearly complete: it covers the purpose, output fields, cost, cache behavior, and failure charging. The main gap is lack of sibling routing context, which is already accounted for in usage_guidelines; nothing needed for a correct call 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 coverage is 100%, with detailed descriptions for url, cache, and limit, so the baseline applies. The description only restates cache behavior and credit cost already present in the schema, adding no new parameter-level meaning.

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

Purpose5/5

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

The description opens with a specific verb and resource — 'List a Facebook Page's events' — and adds the distinguishing output fields (local startDate, timezone, venue). This makes it clearly distinguishable from siblings like facebook_event_search (general event search) and facebook_event_details (details of a single event).

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

Usage Guidelines3/5

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

The description implies a use case (listing events for a specific Facebook page) but provides no explicit when-to-use guidance or named alternatives. It does not tell the agent to prefer this tool over facebook_event_search or facebook_event_details, nor does it state any exclusions.

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

facebook_profile_photosAInspect

Photo grid from a Facebook Page — full image URL plus accessibilityCaption (alt-text, not a post caption). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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). The public /photos grid is a single SSR batch (often ~8) — retrievableCount is that batch, not a promise Facebook will fill limit. Flat 2 credits per call.

TDQS

A3.8/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 does well: it discloses the 2-credit cost, that empty results and failures are never charged, the 24h cache behavior, and clarifies that accessibilityCaption is alt-text 'not a post caption'—a valuable disambiguation. It lacks only minor context such as rate limits or authentication needs, but the cost/cache/failure disclosures are strong for a public data-fetch tool.

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

Conciseness5/5

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

Four short sentences, each earning its place: purpose/output, cost, failure billing policy, and cache behavior. The core purpose is front-loaded first, and there is zero filler or repetition beyond what a standalone description legitimately needs.

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

Completeness4/5

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

For a 3-parameter tool with 100% schema coverage and no annotations, the description covers the important operational facts: cost, non-charging of failures, cache semantics, and the key return field (accessibilityCaption). The absence of an output schema is a structural gap, but the description partially compensates by naming the return fields. Minor omissions like pagination behavior or error semantics are acceptable given the schema's rich limit parameter explanation.

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 all three parameters are already documented in the schema. The description's cache and credit mentions largely restate what the schema's cache and limit descriptions already say ('0 credits on hit', 'Flat 2 credits per call'). The accessibilityCaption note is output semantics rather than parameter meaning, so the description adds little beyond the schema baseline.

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

Purpose4/5

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

The description clearly identifies the resource—'Photo grid from a Facebook Page'—and specifies the output contents (image URL plus accessibilityCaption). It is easily distinguished from siblings like facebook_profile_posts, facebook_profile_reels, and facebook_details because it is the only photos-oriented Facebook tool. However, it lacks an explicit verb ('Retrieves'/'Fetches'), phrased as a noun phrase rather than a specific verb+resource construction.

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

Usage Guidelines3/5

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

Usage context is implied by the unique 'photo grid' purpose, and operational guidance is given ('Pass cache=true for a free 24h cache hit'). However, it does not explicitly state when to prefer this tool over any Facebook sibling, nor name alternatives or exclusions. The schema's URL note adds cross-platform constraints, but the description itself provides no tool-selection routing among the large sibling set.

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

facebook_profile_postsBInspect

Latest posts and Reels from a Facebook page — listingHits / timings.phase; 60s deadline, failures 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 4, max 4). The logged-out listing hop is ~23–29s typical, hard-capped at 40s. Each hydrate is typically 6–10s (can be ~100ms when listing already carried the post) and is capped at 12s. The next-item fit check uses that 12s cap, not the typical 6–10s, so a call cannot exceed 60s. The loop stops when the next item would miss the 60s deadline and returns what it has (truncatedReason=hydrate-budget | deadline). Asking for 20 cannot return 20 inside that ceiling. Flat 2 credits per call.

TDQS

B3.2/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 behavioral burden. It discloses several non-obvious traits: the 2-credit cost, free 24h cache hits, no charge for empty results or failures, and the 60s deadline. This is valuable context beyond the schema. The cryptic 'listingHits / timings.phase' fragment is unexplained, preventing a perfect score.

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

Conciseness3/5

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

The description is short and front-loads the core purpose, but the phrase 'listingHits / timings.phase; 60s deadline, failures 0 credits' is dense, jargon-heavy, and poorly structured. It could convey the same operational facts more clearly, so it does not reach the level of a tightly written 4 or 5.

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

Completeness2/5

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

The description covers cost, caching, and failure policy, but with no output schema and no sibling differentiation it leaves significant gaps: what fields the response contains, how this endpoint relates to Reels-only or page-details endpoints, and when to prefer it over facebook_profile_reels or facebook_page_details. For an agent choosing among many Facebook tools, this is insufficient.

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%, and the schema already documents url, cache, and limit in substantial detail, including timing caps and truncation behavior. The description mostly repeats the cache guidance and does not add meaningful parameter semantics beyond what the schema provides, so the baseline 3 is appropriate.

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

Purpose4/5

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

The description opens with a clear verb and resource: 'Latest posts and Reels from a Facebook page.' This accurately states what the tool returns. It does not explicitly differentiate it from sibling tools like facebook_profile_reels or facebook_page_details, so it stops short of a 5.

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?

There is no guidance on when to use this tool instead of related siblings such as facebook_profile_reels, facebook_profile_events, or facebook_page_details. The cache and credit guidance is operationally useful, but it does not help an agent decide between this tool and its alternatives.

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

facebook_profile_reelsAInspect

Latest Facebook page Reels — views, likes, comments, shares; newest-first without archive padding. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFacebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations provided, the description carries full behavioral burden and excels: it discloses ordering behavior, exclusion of archive padding, credit cost, no-charge policies for empty results/failures, and cache semantics. All of these are concrete behavioral traits beyond the annotation-free baseline.

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

Conciseness5/5

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

The description is two sentences with zero filler. The core purpose and output characteristics are front-loaded, followed by cost and cache guidance. Every clause earns its place.

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

Completeness5/5

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

For a simple list tool with 3 fully documented parameters and no output schema, the description is complete: it covers what data is returned, the ordering, filtering behavior, cost, failure handling, and cache options. An agent has everything needed to call it correctly.

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 schema already fully documents url, cache, and limit parameters. The description reinforces the cache behavior ('free 24h cache hit' and 'default always fresh') but adds no new meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly identifies the resource and scope: 'Latest Facebook page Reels' with the exact metrics returned (views, likes, comments, shares) and ordering ('newest-first'). It distinguishes itself from sibling profile tools like facebook_profile_posts or instagram_channel_reels by naming 'Facebook page Reels' as the specific target.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool: for the latest Facebook page Reels, with explicit ordering and no archive padding. It also gives actionable guidance on cache usage ('Pass cache=true for a free 24h cache hit'). It does not explicitly name alternatives or when-not-to-use scenarios, but the context is unambiguous enough for an agent to select this tool correctly.

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

facebook_summarizeCInspect

Summarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

C2.8/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 behavioral disclosure burden and does so well for billing and caching: it states the 4-credit cost, that empty results and failures are free, and that cache=true yields a free 24-hour hit with a default of always fresh. This meaningfully informs the agent about side effects and costs, though it omits rate limits, auth, or response-shape behavior.

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?

The description is very short and contains no wasted words; the two sentences deliver the cost and cache facts efficiently. The awkward opening 'Summarizer' is a structural weakness, but overall conciseness is strong.

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

Completeness2/5

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

The tool has no annotations and no output schema, so the description needs to specify what the tool does, what it returns, and when to select it. It does none of those things. The schema documents the parameters well, but the core purpose and selection context are missing, leaving an agent to rely on the tool name.

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?

The input schema already has 100% parameter coverage with detailed descriptions for both url and cache, including the cross-platform URL restriction and cache semantics. The description adds little beyond repeating the freshness default and attaching a cost implication to cache hits, so schema carries the load and the description is adequate but not additive.

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

Purpose2/5

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

The description opens with 'Summarizer' but never states what is summarized — no mention of Facebook, videos, posts, or any other resource. This is effectively a tautology of the tool name 'facebook_summarize'; the actual purpose must be inferred from the name and input schema rather than the description.

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?

The description gives operational guidance about caching and cost, but it does not say when to use this tool versus sibling alternatives like facebook_details, facebook_comments, or video_summarize. There is no when-to-use or when-not-to-use framing for tool selection.

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

github_activityAInspect

Public events with typed payload (Push commits/ref, PR/issue action) — 90-event ceiling. Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 30, max 90). Billed per result.
cursorNoOpaque cursor from a previous nextCursor. Pagination stops after GitHub's 90-event public activity ceiling.
usernameYesGitHub username or profile URL, e.g. getify.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does substantial work: it discloses the 90-event ceiling, credit costs, free failures/empty results, and cache behavior. It does not describe sorting, return structure, or whether authentication is needed, but the core operational behavior is clearly exposed.

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

Conciseness5/5

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

The description is compact, front-loaded with the core purpose, and every clause earns its place: typed payload, ceiling, credits, failure charging, and cache behavior. There is no filler or repetition beyond what the context requires.

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

Completeness4/5

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

Given the moderate parameter complexity and absence of an output schema, the description is mostly complete: it explains what events are returned, gives payload examples, notes the ceiling, and covers costs and caching. It could be slightly stronger by outlining the response shape or pagination contract, but the essential operational details are present.

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 coverage is 100%, so the schema already documents all four parameters thoroughly. The description mostly restates what the schema says (limit's 90 max, cache being free, 24h cache), adding little new semantic meaning beyond emphasizing the overall ceiling and billing context.

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

Purpose4/5

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

The description clearly identifies the resource: GitHub public events with typed payload examples (Push commits/ref, PR/issue action). It is distinguishable from sibling tools like github_repositories or github_contributions, though it lacks an explicit verb like 'list' or 'retrieve' and does not name alternatives.

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

Usage Guidelines3/5

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

The phrase 'Public events' implies this tool is for GitHub user activity feeds, and the payload examples narrow the use case. However, there is no explicit guidance on when to choose this instead of related GitHub tools such as github_contributions, github_repositories, or github_user.

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

github_contributionsAInspect

GitHub contribution graph — sorted days[], currentStreak (today grace), longestStreak (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
usernameYesGitHub username or profile URL, e.g. getify or https://github.com/getify.

TDQS

A4.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 of behavioral disclosure. It reveals important execution traits: a 2-credit cost, no charge for empty results or failures, default fresh fetch behavior, and the availability of a free cached response. The 'today grace' note hints at streak calculation nuance, though it is not fully explained.

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?

The description is compact and front-loaded with the core purpose. However, 'longestStreak (2 credits)' followed by 'Costs 2 credits' creates minor ambiguity about whether the 2 credits refers to the longestStreak field or the entire call, which costs a little clarity.

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

Completeness4/5

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

For a simple two-parameter tool, the description covers the essential operational context: cost, caching, failure charging policy, and a rough sketch of the return shape. It does not explicitly route the agent to a sibling for profile data or describe all output details in the absence of an output schema, but the needed info for a correct call is present.

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 coverage is 100%, so the baseline is 3. The description reiterates the cache parameter's behavior ('cache=true for a free 24h cache hit') and mentions username indirectly through the tool's purpose, but it does not add meaningful detail beyond what the input schema already documents.

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

Purpose5/5

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

The description opens with a specific noun phrase 'GitHub contribution graph' and enumerates the output fields (sorted days[], currentStreak, longestStreak), making it clear this is about contribution history statistics. This distinguishes it from sibling tools like github_user, github_repositories, or github_activity, even without naming them.

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

Usage Guidelines4/5

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

The description gives actionable usage guidance about cost and caching: using cache=true for a free 24-hour hit, and noting that empty results/failures are never charged. It does not explicitly compare to alternative GitHub tools or state when not to use it, so it misses the top score but provides clear operational context.

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

github_followersAInspect

Follower cards {id, login, type, url, avatar} — ~0.1/row; large accounts are expensive to page fully. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 30, max 100). Billed per result.
cursorNoOpaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number.
usernameYesGitHub username or profile URL, e.g. getify.

TDQS

A3.8/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 behavioral disclosure burden. It clearly discloses cost per result, approximate total cost, the 24h cache behavior, and that empty results and failures are never charged. It does not address auth or rate limits, but the cost and failure semantics are unusually explicit and valuable.

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

Conciseness5/5

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

Every sentence earns its place: result shape, pricing and pagination warning, and cache/failure billing. The description is compact, front-loaded with the core purpose, and contains no filler.

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

Completeness4/5

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

Despite having no annotations and no output schema, the description gives the agent the essential return fields, cost expectations, pagination caution, and cache behavior. It could be slightly more explicit that the response is a list for the specified username, but combined with the schema it leaves few gaps.

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?

The input schema already documents all four parameters with 100% coverage, so the baseline is 3. The description adds useful pricing context for cache, limit, and paging, but it does not add new semantic meaning beyond what the schema already provides.

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

Purpose4/5

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

The description identifies the resource as follower cards and lists the returned fields, making it clear this tool returns followers for a GitHub user. It lacks an explicit verb like 'list' or 'get', and it does not explicitly distinguish itself from github_following, but the resource and output shape are clear.

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

Usage Guidelines3/5

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

The description implies usage context: pass a username, control cost with limit, and use cache=true for free repeated calls. It warns that large accounts are expensive to page fully, but it never explicitly says when to prefer this tool over alternatives like github_following or github_user, nor does it state exclusions.

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

github_followingBInspect

Accounts a user follows — same card and ~0.1/row pricing as followers. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 30, max 100). Billed per result.
cursorNoOpaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number.
usernameYesGitHub username or profile URL, e.g. getify.

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It adds useful details about caching (cache=true for free 24h hit, default fresh) and billing behavior (empty results and failures not charged). However, it does not disclose output shape, pagination behavior beyond schema, rate limits, or whether the operation is read-only, though that is mildly implied.

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?

The description is short and front-loads the core purpose. There is some minor redundancy in the pricing statements ('same card and ~0.1/row pricing' followed by 'Costs ~3 credits (0.1/result)'), but the overall length is appropriate and every sentence contributes useful information.

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 simple list tool with a complete schema, the description is mostly adequate but leaves gaps: it does not mention what the response contains beyond 'accounts', lacks an alternative differentiation, and with no output schema, an agent might benefit from a note about pagination or result structure. The cost and cache details are helpful but not sufficient for full context.

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 schema fully documents all four parameters. The description does not add new parameter semantics beyond what the schema already provides; it only reinforces the cache behavior already described in the schema.

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

Purpose4/5

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

The description states the resource clearly: 'Accounts a user follows,' which unambiguously identifies the following list. It does not use an explicit verb like 'list' or 'return', and while it mentions followers for pricing, it does not explicitly contrast itself with the github_followers sibling tool.

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 is given on when to use this tool versus alternatives. The only reference to followers is about pricing, not about choosing between github_followers and github_following. An agent is left to infer the use case from the tool name and description.

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

github_pull_requestsAInspect

List repo PRs — draft, labels, author{}, head/base, opaque Link cursor (state echoed). Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesRepository URL or owner/name, e.g. vercel/next.js.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 30, max 100). Billed per result.
stateNoopen (API default), closed, or all. Echoed as data.state. Docs example uses closed so mergedAt is visible.
cursorNoOpaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses credit costs, free caching semantics, no-charge on empty/failed results, opaque cursor behavior, and state echo. It does not mention auth requirements or error shape, but the important operational behaviors are covered.

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

Conciseness5/5

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

The description is tightly packed and front-loaded: the action and resource come first, followed by return hints, cost, and caching. Every sentence earns its place and there is no redundant restatement of schema fields.

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

Completeness4/5

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

With no output schema and no annotations, the description communicates the essential return fields, pagination cursor behavior, cost model, and cache behavior. It could be more explicit about response envelope or error handling, but the information needed to invoke it correctly is present.

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

Parameters4/5

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

Schema coverage is 100%, setting the baseline at 3. The description adds value beyond the schema by clarifying that the cursor is an opaque GitHub Link token, that state is echoed as data.state, that cache=true yields a free 24h hit, and that billing is per result.

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

Purpose5/5

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

Description opens with a specific verb and resource: "List repo PRs", and enumerates the key returned fields (draft, labels, author{}, head/base, cursor). This clearly distinguishes it from sibling GitHub tools like github_activity or github_repositories, which target different resource types.

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

Usage Guidelines3/5

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

The description implies usage context: call it when you need pull requests for a repository, with cache and state options detailed. It does not explicitly name alternatives or say when not to use it, so guidance is adequate but leaves routing to inference.

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

github_repositoriesAInspect

List a user's repos with sort/direction/type — opaque Link cursor (~0.4/repo). Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNocreated | updated | pushed | full_name (default updated). Not stars — GitHub's user-repos API has no stars sort. Echoed as data.sort.
typeNoowner (default) | member | all — affiliation filter. Echoed as data.type.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 30, max 100). Billed per result.
cursorNoOpaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number.
usernameYesGitHub username or profile URL, e.g. torvalds.
directionNoasc or desc (default desc). Echoed as data.direction.

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations present, the description carries the full burden and delivers: cost model ('~12 credits (0.4/result)'), billing policy ('Empty results and failures are never charged'), cache semantics ('cache=true for a free 24h cache hit (default always fresh)'), and opaque-cursor pagination. This far exceeds typical transparency for a read tool.

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?

Purpose is front-loaded in the first sentence, followed by cost, billing policy, and cache option — every sentence earns its place. A minor flaw: the per-item rate is stated twice ('~0.4/repo' and '0.4/result'), a small redundancy in an otherwise dense description.

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

Completeness4/5

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

For a 7-parameter tool with no annotations and no output schema, the description covers the unusual operational aspects (cost, empty/failure billing, cache, cursor) while the schema covers all parameter semantics. The remaining gap is the response shape, partially mitigated by schema hints like 'from a previous nextCursor' and 'Echoed as data.sort'.

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% and the schema itself is unusually rich (defaults, option lists, the 'Not stars' caveat, 'Not a bare page number' cursor warning, 'Echoed as data.*'). The tool description only references sort/direction/type and cache=true at a high level, adding no incremental parameter meaning beyond the baseline.

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

Purpose5/5

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

States a specific verb ('List') and a specific resource ('a user's repos'), with qualifying dimensions 'sort/direction/type'. The plural resource distinctly separates it from close siblings like github_repository (single repo) and github_trending_repositories (not user-scoped), so an agent can distinguish it without opening schemas.

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

Usage Guidelines3/5

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

The description gives clear operational context — caching, costs, cursor pagination — but never addresses when to pick this over alternatives. Among ~150 siblings, github_repository (singular) is an obvious alternative for one repo's details, yet no when/when-not or alternative routing is given; usage is only implied by the name and 'List a user's repos'.

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

github_repositoryAInspect

GitHub repo — stars, real watchers (subscribers), openIssuesAndPrs, license, parent when fork (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesRepository URL or owner/name, e.g. torvalds/linux or https://github.com/torvalds/linux.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.5/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 disclosure burden. It usefully discloses the 1-credit cost, that empty results and failures are never charged, cache behavior, and a clarification that 'watchers' means real subscribers. This is substantive behavioral context beyond what the schema alone provides.

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?

The description is short and front-loads the returned fields before moving to cost and cache behavior. There is minor redundancy: 'parent when fork (1 credit)' followed by 'Costs 1 credit' re-states the credit cost. Overall, it is compact and scannable.

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

Completeness4/5

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

For a simple single-repository lookup with a well-documented input schema, the description covers the resource, key returned values, cost, failure policy, and caching. It does not explain how it relates to sibling GitHub tools, but the core information needed to invoke the tool correctly is present.

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 is 3. Both parameters are already well documented in the schema, and the description does not meaningfully expand on the repo or cache parameters; it mainly restates cache cost behavior already present in the schema.

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

Purpose4/5

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

The description names a specific resource ('GitHub repo') and enumerates the data fields it returns (stars, real watchers, openIssuesAndPrs, license, parent when fork), making the purpose reasonably clear. However, there is no explicit verb like 'retrieves' or 'fetches,' and it does not distinguish itself from the sibling github_repositories, so it falls short of a 5.

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?

The description gives operational guidance about cost and cache usage ('Pass cache=true for a free 24h cache hit (default always fresh)'), but it never states when to use this tool versus alternatives such as github_repositories, github_user, or github_activity. No prerequisites, exclusions, or selection criteria are provided.

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

github_userAInspect

GitHub public profile — login, type User|Organization, email when public, followers (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
usernameYesGitHub username or profile URL, e.g. getify or https://github.com/getify.

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses genuinely useful behaviors beyond the schema: the 1-credit cost, that empty results and failures are never charged, and the 24h cache semantics with default-always-fresh. Rate limits and error handling are not covered, but the cost/cache/billing disclosure is substantive and well beyond what structured fields provide.

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?

Four compact sentences with the purpose front-loaded and no filler. Minor redundancy: '1 credit' appears in both the first sentence ('followers (1 credit)') and the second sentence ('Costs 1 credit'), which is the only wasted increment.

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

Completeness4/5

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

For a 2-parameter read tool with no annotations and no output schema, the description covers the core facts needed to invoke it correctly: returned fields, cost, cache behavior, and the billing-on-failure policy. Missing only explicit sibling routing and error behavior details, which are minor for a simple profile fetch.

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 coverage is 100%, so the baseline is 3. The description adds cost context to cache=true (free on hit, fresh by default) that goes slightly beyond the schema's cache description, but it adds nothing material for username beyond what the schema already provides ('GitHub username or profile URL'). The schema does the heavy lifting here.

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

Purpose5/5

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

The description states a specific resource (GitHub public profile) and enumerates the returned fields (login, type User|Organization, email when public, followers), which distinguishes it from sibling GitHub tools like github_followers, github_repositories, and github_activity. An agent can infer what data it returns without opening the schema.

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

Usage Guidelines3/5

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

The field listing implies when to use this tool — when a user's profile identity, type, email, or follower count is needed — but it never names an alternative or states exclusions. With many github_* siblings present, explicit routing guidance would materially help selection, so the guidance stays at the implied level.

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

instagram_basic_profileAInspect

Instagram profile by user ID or @handle — camelCase schema aligned with Channel Details (followers, externalUrl, businessAddress). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
userIdYesInstagram numeric user ID (e.g. 13460080). A profile URL, @handle, or username is also accepted and resolved automatically.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.9/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 behavioral disclosure burden. It discloses cost (1 credit), free 24h cache behavior, default fresh fetch, and that empty results/failures are never charged. It does not cover error conditions or rate limits, but transparently addresses the main non-obvious behaviors.

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

Conciseness5/5

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

Several short, information-dense sentences that front-load the core purpose before adding cost and caching details. Every sentence contributes distinct, non-redundant information.

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

Completeness4/5

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

The description covers the essentials for a simple profile fetch: identifier formats, key output fields, cost, and caching. Because there is no output schema, it relies on the Channel Details alignment to convey the response shape; this is adequate but not exhaustive. It doesn't mention auth or rate-limit context, but for this basic lookup the definition is fairly complete.

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

Parameters4/5

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

Schema coverage is 100% and already explains all three parameters in detail. The description adds value by clarifying that cache=true yields a free 24-hour cache hit and that fresh fetches are the default, which is not fully captured in the schema. This strengthens the semantic model for the cache parameter.

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

Purpose4/5

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

States a specific operation (fetch profile) by user ID or @handle, and adds schema context (aligned with Channel Details) with key fields listed. It is clear about the resource, but does not explicitly differentiate from overlapping siblings like instagram_channel_details or instagram_details.

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

Usage Guidelines3/5

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

The description gives useful operational context (credit cost, caching, charge policy) but does not say when to choose this tool over instagram_channel_details, instagram_details, or instagram_profile_search. Usage is implied by the purpose, not explicitly routed.

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

instagram_channel_detailsBInspect

Instagram profile stats — fixed key set (null fillers), fbid, bioLinks, isBusinessAccount, approx flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full transparency burden and does substantial work: it discloses cost ('Costs 1 credit'), the no-charge policy for empty/failed results, the default-fresh behavior versus the free 24h cache hit, and approximate/null-filled values in the output. It could additionally cover rate limits or auth requirements, but for a read-only stats endpoint this is well above the minimum.

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?

The description is compact: four short sentences, with the purpose front-loaded before operational details. Every sentence earns its place (purpose/output shape, cost, failure policy, caching). The first sentence is dense to the point of being slightly cryptic, but there is no redundancy or filler.

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?

Given there is no output schema and no annotations, the description partially compensates by listing key output fields and operational behavior (cost, cache, failure charges). However, it leaves gaps: no explanation of what 'approx flags' or the full fixed key set means, no sibling differentiation among Instagram profile tools, and no error/rate-limit context. It is adequate but not complete.

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 is 3 and the schema already handles url/cache/cacheMaxAge semantics. The description adds a small extra detail for cache ('free 24h cache hit (default always fresh)') beyond the schema, but contributes nothing for url or cacheMaxAge. No compensation beyond baseline is needed.

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

Purpose4/5

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

The description clearly identifies the resource (Instagram profile) and the delivered data type ('profile stats'), and adds concrete output detail ('fbid, bioLinks, isBusinessAccount, approx flags'). However, it uses no explicit verb ('fetch'/'get'), and the cryptic phrase 'fixed key set (null fillers)' muddies exactly what is returned. It also does not differentiate from the overlapping siblings instagram_basic_profile and instagram_details.

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?

There is no statement about when to choose this tool over instagram_basic_profile, instagram_details, or other Instagram siblings, which is a real gap given their overlapping scope. The operational notes about cost and caching are useful but are not tool-selection guidance. Usage is only implied: use it when you need Instagram profile stats.

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

instagram_channel_postsAInspect

Latest posts from a public Instagram profile — carousel children[], mediaCount, user{} in one call. Costs ~6 credits (0.3/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (e.g. 3937014945555313553_1697296). A null nextCursor means the end of the list.

TDQS

A3.9/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 behavioral disclosure burden and does well: it states the profile must be public, explains credit cost per result, notes that empty results/failures are never charged, and clarifies cache behavior and default freshness. This goes beyond the schema's parameter-level descriptions and gives an agent realistic expectations for cost and failure handling.

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

Conciseness5/5

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

The description is only three sentences, front-loads the core function and key output fields, and then packs billing and cache behavior into the remaining sentences. Every sentence earns its place; there is no filler, redundancy, or unnecessary detail.

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

Completeness4/5

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

Given there is no output schema and no annotations, the description compensates well by naming important return fields, stating the public-profile requirement, and covering cost/failure/cache behavior. It also relies appropriately on the schema for parameter details like pagination and URL format. Minor gaps remain around the exact response envelope and how failures manifest, but the essential context for calling the tool is present.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, and the description adds value on top by explaining cost implications (~6 credits, 0.3/result) and the free cache-hit benefit. This helps an agent reason about limit and cache parameter trade-offs. It does not redundantly restate the parameter descriptions, so it earns a point above baseline.

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

Purpose4/5

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

The description clearly states the tool returns 'Latest posts from a public Instagram profile' and highlights key response fields (carousel children[], mediaCount, user{}). It is specific enough about the endpoint's resource and output. However, it does not explicitly contrast with closely related siblings like instagram_channel_reels or instagram_tagged_posts, so it stops short of perfect differentiation.

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

Usage Guidelines3/5

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

The description conveys when the tool is appropriate by focusing on 'latest posts' and 'in one call', and it gives operational guidance about caching and billing. But it does not explicitly state when to use this tool versus alternatives or mention exclusion cases, such as 'use instagram_tagged_posts for tagged content'. Thus guidance is implied rather than explicit.

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

instagram_channel_reelsAInspect

Latest Reels from a public Instagram profile — pass userId to skip resolve; ceil(n×0.3) credits; nextCursor + hasMore. Costs ~6 credits (0.3/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoInstagram profile URL, @handle, or username. Omit when userId is set. The URL platform must match this endpoint's platform.
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). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass nextCursor from the previous response (clips:{userId}:{opaque} on the native Reels path, or legacy {mediaId}_{userId}). Stop when hasMore is false.
userIdNoInstagram numeric user ID (e.g. 173560420). Skips handle→ID resolve (legacy sequential WPI alone could cost ~80s). Prefer when you already have the ID from basic-profile or profile-search.

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations, the description carries the full burden of disclosure, and it excels: it explains the credit cost formula (ceil(n×0.3), ~6 credits at default), pagination contract (nextCursor + hasMore), cache behavior (cache=true for free 24h hit, default fresh), and a no-charge policy for empty results and failures. This is far more transparent than typical tool descriptions.

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?

The description is dense and informative, front-loading the core purpose. However, 'costs ~6 credits (0.3/result)' restates the earlier 'ceil(n×0.3) credits' formula, introducing slight redundancy. Still, every other clause earns its place, so it remains well-structured.

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

Completeness4/5

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

For a tool with no annotations and no output schema, the description provides a remarkably complete picture: cost, caching, pagination, resolve behavior, and failure charging. The only notable gap is the lack of any description of the returned reels data shape, which is partially mitigated by the mention of nextCursor and hasMore.

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%, and each parameter (url, cache, limit, cursor, userId) is already well documented in the schema. The description adds some context around cost per result and the resolve-skip optimization, but these mostly reinforce the schema rather than add new semantic meaning, so the baseline of 3 applies.

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

Purpose5/5

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

The description states a specific verb ('Latest Reels') and a specific resource ('from a public Instagram profile'), making the tool's function immediately clear. It distinguishes this from sibling reels tools like instagram_trending_reels and instagram_reels_search by anchoring to a specific profile's channel.

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

Usage Guidelines3/5

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

The description implies usage context by saying 'from a public Instagram profile', but it never explicitly states when to choose this tool over alternatives like instagram_reels_search or instagram_channel_posts, nor does it mention exclusions or prerequisites beyond 'public'. The guidance is clear but not directly comparative.

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

instagram_commentsAInspect

Session-paged Instagram comments — a logged-out 2-row preview of a larger thread is 503 SESSION_UNAVAILABLE at 0 credits. Costs ~45 credits (0.9/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Billed per result.
cursorNoPagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true when nextCursor is set, or when more exist and cannot be paged (nextCursor null + truncatedReason).

TDQS

A4.1/5.0
Behavior5/5

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

No annotations are supplied, so the description carries the full burden of behavioral disclosure. It discloses cost (~45 credits, 0.9/result), no charge on empty/failed results, cache behavior, and a specific failure mode (503 SESSION_UNAVAILABLE for a logged-out 2-row preview of a larger thread at 0 credits). This goes well beyond what the input schema or name alone convey.

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?

The description is compact and front-loaded: the core resource appears first, followed by short, dense operational caveats. The phrase about the 'logged-out 2-row preview... 503 SESSION_UNAVAILABLE' is cryptic, but the overall text is efficient rather than padded.

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

Completeness4/5

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

For a four-parameter, read-style endpoint with no output schema and no annotations, the description covers the main invocation concerns: session/error behavior, caching, cost, and pagination context. It does not describe the response shape, but the fully documented schema reduces that burden.

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 schema already documents url, cache, limit, and cursor, including defaults, minimums, and the nextCursor format. The description reinforces cache and billing behavior but does not add new meaning to any individual parameter beyond what the schema provides.

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

Purpose4/5

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

The description identifies the resource ('Instagram comments') and the pagination mode ('Session-paged'), and the schema's URL parameter clarifies that it operates on Instagram post/reel URLs. It does not open with an explicit verb phrase like 'Retrieves comments for...' and it does not differentiate against sibling tools, but the tool name plus schema make the operation unambiguous.

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

Usage Guidelines4/5

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

It gives actionable call guidance: pass cache=true for a free 24h cache hit, default is always fresh, and empty/failed calls are not charged. It does not name alternative endpoints or explicit exclusions, but within the Instagram sibling set there is no direct comments alternative, so the context provided is sufficient.

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

instagram_detailsAInspect

Get an Instagram post, Reel or carousel — caption, likes, comments, views, media URLs, author, and per-slide children on carousels. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/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 behavioral burden. It discloses the 1-credit cost, that empty results and failures are never charged, and the free 24h cache-hit behavior with fresh-by-default semantics. It does not mention auth, rate limits, or error formats, but for a simple read endpoint this is solidly transparent.

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

Conciseness5/5

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

The description is two sentences with no filler. It front-loads the action and returned data, then packs cost, failure policy, and cache behavior into the second sentence. Every clause earns its place.

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

Completeness4/5

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

For a simple 2-parameter read tool with no output schema, the description compensates by listing the expected return fields and operational details like credits and caching. It is sufficient for an agent to call correctly, though it could go further by naming sibling alternatives for disambiguation.

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%, and the schema already thoroughly documents both url and cache semantics. The description repeats the cache behavior but adds no new parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.

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

Purpose5/5

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

Description uses a specific verb and resource: 'Get an Instagram post, Reel or carousel' and lists concrete return fields (caption, likes, comments, views, media URLs, author, per-slide children). This clearly distinguishes it from sibling endpoints like instagram_basic_profile, instagram_channel_posts, or instagram_embed.

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

Usage Guidelines3/5

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

The description implies when to use this tool by scoping it to posts, Reels, and carousels, and it gives useful cache usage guidance. However, it never explicitly names alternatives or states when to prefer a sibling tool such as instagram_comments or instagram_channel_posts, so usage context is implied rather than explicitly routed.

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

instagram_embedAInspect

Classic Instagram embed snippet — blockquote.instagram-media + embed.js. Drop html into your page. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram post, reel, or profile URL (or @handle), e.g. https://instagram.com/reel/ID/ or https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries full behavioral burden and does so well. It discloses the 1-credit cost, that empty/failed results are not charged, the 24-hour cache behavior, and that the default is always fresh. This is valuable operational context beyond what the schema states.

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

Conciseness5/5

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

Three short, front-loaded sentences with no fluff. The purpose comes first, followed by cost, failure policy, and caching behavior. Every clause earns its place.

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

Completeness5/5

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

For a low-complexity tool with two simple parameters and no output schema, the description plus schema fully covers what the tool does, how to use it, what it returns, and its operational behavior around credits and caching. Nothing essential is missing for an agent to invoke it correctly.

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 coverage is 100%, so both url and cache are already well documented. The description reinforces the cache default and cost implications, but adds no new meaning about the parameters themselves beyond the schema.

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

Purpose5/5

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

The description clearly identifies a specific deliverable: a classic Instagram embed snippet using blockquote.instagram-media and embed.js, to be dropped into a page. This distinguishes it from the many Instagram data-fetching siblings like instagram_details or instagram_channel_posts.

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

Usage Guidelines4/5

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

It clearly conveys the use case: generate an HTML embed snippet for a page, with an optional cache=true path for free cached results. It doesn't explicitly compare against sibling alternatives, but no sibling serves the same embed purpose, so the context is clear without exclusions.

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

instagram_highlightsAInspect

Persistent Story Highlight albums for a public profile — id, title, cover, owner. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoInstagram profile URL, @handle, or username. Omit when userId is set.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
userIdNoNumeric Instagram user ID. Prefer when known — skips handle→ID resolve. When only userId is set we reverse-resolve the username so the WPI / profile-HTML shelf can still run.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the disclosure burden and covers pricing (flat 1 credit), cache behavior (cache=true free 24h hit, default fresh), and the guarantee that empty results/failures aren't charged. It doesn't discuss rate limits or auth, but for a simple public read tool the key operational behavior is disclosed.

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?

The description is short and front-loads the core purpose before pricing/caching details. The only blemish is redundancy—'Flat 1 credit. Costs 1 credit.'—which keeps it from top marks.

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

Completeness4/5

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

For a low-complexity tool with fully documented schema, the description covers what the tool returns, cost, cache, and failure charging. It could be more complete by explicitly noting the relationship to instagram_highlights_details, but nothing essential is missing for an agent to call it correctly.

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

Parameters4/5

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

The schema already documents all three parameters at 100% coverage. The description adds value beyond the schema by explaining the cache parameter's effect and the default freshness behavior, which is directly actionable for invocation.

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

Purpose4/5

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

States the resource and returned fields (id, title, cover, owner) clearly, and 'for a public profile' sets scope. However it lacks an explicit verb and does not directly distinguish itself from the sibling instagram_highlights_details, so it falls short of a 5.

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

Usage Guidelines3/5

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

The description implies this is for retrieving a profile's highlight albums and gives clear context (public profile, cache behavior), but it never states when to choose this tool over the similar instagram_highlights_details or other Instagram tools. No exclusions or alternatives are mentioned.

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

instagram_highlights_detailsAInspect

Items inside one Instagram Story Highlight album — media URLs, type, takenAt. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesHighlight id from /v1/instagram/highlights (with or without highlight: prefix).
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.6/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 burden of behavioral disclosure. It does well by covering credit cost, the free 24h cache behavior, the default fresh-fetch behavior, and the policy that empty results and failures are not charged. It does not state read-only status or rate limits, but the read nature is clear from the described output.

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

Conciseness3/5

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

The description is short and front-loaded with the main purpose, but 'Flat 1 credit. Costs 1 credit.' is redundant repetition. The cache guidance also largely duplicates the schema, so not every phrase earns its place.

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

Completeness4/5

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

For a simple two-parameter read operation with no output schema, the description is reasonably complete: it states the input source context via the schema, the returned fields, pricing, cache options, and failure/empty-result charging behavior. It could mention how to obtain the highlight id more directly, but the schema already references /v1/instagram/highlights.

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 both parameters are already documented. The description mostly restates the cache behavior already present in the schema, adding no significant new parameter semantics beyond the schema.

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

Purpose5/5

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

The description clearly identifies the resource: items inside one Instagram Story Highlight album, and names the returned data (media URLs, type, takenAt). The word 'one' distinguishes it from the sibling tool instagram_highlights, which lists highlight albums themselves.

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 is given about when to use this tool versus alternatives such as instagram_highlights. The cache parameter is explained, but tool-selection context is absent.

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

instagram_reels_by_audio_idAInspect

Is this Instagram sound trending? Reels that use it + isTrendingInClips / trendRank / rich music{}. Costs ~28 credits (1.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
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). Billed per result.
audioIdYesInstagram audio/music ID or full audio URL, e.g. 27919946310946207.

TDQS

A3.7/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does this well by revealing the credit cost (~28 credits, 1.4/result), the no-charge policy for empty/failed results, and the cache behavior (cache=true gives a free 24h hit). It does not mention rate limits or authentication, but the key operational traits are disclosed.

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?

The description is compact and front-loaded with the core value proposition; every sentence carries purpose or operational information. The only weakness is the cryptic 'rich music{}' notation, which is not as self-explanatory as the rest of the text.

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

Completeness4/5

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

With no output schema, the description compensates reasonably by naming expected response fields (isTrendingInClips, trendRank, rich music) and explaining cost and cache behavior. It does not fully define the shape or nesting of returned objects, but combined with a fully documented input schema it is adequate for an agent to invoke the tool correctly.

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 is 3. The description reinforces cache semantics and billing per result, but those details are already present in the schema, and it adds no new parameter-level meaning beyond what the schema provides.

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

Purpose4/5

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

The description states that the tool tells whether an Instagram sound is trending and returns reels using that sound, plus trend-related fields (isTrendingInClips, trendRank, rich music). The action is implied rather than expressed as a direct verb like 'fetch', but the resource and purpose are clear enough to distinguish it from generic reels search tools.

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

Usage Guidelines3/5

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

The opening question 'Is this Instagram sound trending?' implies the main use case, and the cost/cache details add useful decision context. However, it never explicitly says when to choose this tool over related siblings such as instagram_trending_reels, instagram_reels_search, or tiktok_music_posts, nor does it state any exclusions.

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

instagram_summarizeAInspect

Get an AI summary of any Instagram Reel — a short paragraph plus key points, without watching the video. Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoISO code, e.g. "tr": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary.

TDQS

A4.2/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 transparency burden and does well: it discloses credit cost, that failures and empty results are not charged, and the cache hit behavior. It could add more about failure conditions or privacy restrictions, but the current information is genuinely useful beyond the schema.

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

Conciseness5/5

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

Three short sentences, each adding distinct value: core purpose, pricing/failure policy, and cache behavior. No filler or redundancy; the most important information is front-loaded.

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

Completeness4/5

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

For a tool with no output schema and no annotations, the description adequately covers the return shape, cost, failure charging, and caching. The language parameter is left to the schema, which fully documents it. This is sufficient for an agent to select and call the tool correctly in most cases.

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 schema already documents url, cache, and language. The description does not add meaning beyond the schema — it mostly repeats the cache behavior. This meets the baseline but does not go further.

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

Purpose5/5

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

The description states a specific verb and resource: 'Get an AI summary of any Instagram Reel' and defines the output as 'a short paragraph plus key points.' This clearly distinguishes it from transcript tools like instagram_transcript and from platform-specific summarize siblings like tiktok_summarize or youtube_summarize.

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

Usage Guidelines4/5

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

The description clearly communicates when to use this tool: when a concise AI summary of an Instagram Reel is needed 'without watching the video.' It also gives cost-related context that helps an agent decide, though it does not explicitly name alternatives such as instagram_transcript for verbatim text.

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

instagram_tagged_postsAInspect

Posts that tag an Instagram account — author verified/avatar when available, staleFeed when Instagram only exposes an archive. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 1 credit per call.
cursorNoLeave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations to lean on, the description fully carries the behavioral disclosure burden. It transparently covers the 1-credit cost, free handling of empty/failed results, fresh-by-default caching behavior, the free 24h cache hit path, and the staleFeed fallback when Instagram only exposes an archive.

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

Conciseness5/5

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

Three tight sentences front-load the core purpose, then add cost, failure, and cache semantics without filler. Every sentence adds a distinct piece of information an agent needs before invoking the tool.

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

Completeness4/5

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

For a tool with no annotations and no output schema, the description covers the essential contextual ground: what the posts are, data-quality caveats, cost, cache behavior, and the fallback case. It does not enumerate exact output fields or pagination response shape, but the schema's cursor description and the strong behavioral notes make the tool sufficiently callable.

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 schema already documents url, cache, limit, and cursor in detail. The description mostly repeats the cache behavior already present in the schema rather than adding new parameter-level meaning, so it stays at the baseline.

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

Purpose4/5

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

The description names the resource explicitly ('posts that tag an Instagram account') and adds useful distinctions such as author verified/avatar availability and the staleFeed archive fallback. This lets an agent distinguish it from sibling tools like instagram_channel_posts or instagram_hashtag_search, though it lacks an explicit operation verb like 'list' or 'retrieve.'

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

Usage Guidelines4/5

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

The use case is clear: call this when you need posts that tag an Instagram account, and the cache note gives concrete guidance on when to pass cache=true. It does not explicitly compare against sibling tools or state exclusion cases, but the context is specific enough to guide selection.

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

instagram_transcriptAInspect

Turn any Instagram Reel's speech into text — the full transcript plus timestamped segments, ready for search, subtitles, or AI pipelines. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden. It adds meaningful operational context: the 2-credit cost, no charge for empty results or failures, and the cache=true free cache-hit behavior with a default fresh fetch. This gives an agent a realistic picture of cost and side effects.

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

Conciseness5/5

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

The description is two compact sentences with no filler. The core purpose is front-loaded, followed by essential cost and cache policy. Every sentence earns its place.

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

Completeness4/5

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

There is no output schema or annotations, so the description must explain both output and behavior. It covers the transcript output, timestamped segments, cost, failure billing, and cache semantics. Missing an explicit alternative-tool routing note, but the clear platform scope makes the definition sufficiently complete for a straightforward transcription tool.

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 schema already fully documents all three parameters, including the URL platform-match warning, cache behavior, and language ISO default. The description reinforces cache behavior but adds no significant new parameter-level meaning beyond the schema.

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

Purpose5/5

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

The description uses a specific verb ('Turn speech into text'), a specific resource ('Instagram Reel's speech'), and specifies the output ('full transcript plus timestamped segments'). This clearly distinguishes the tool from sibling transcript tools for YouTube, TikTok, LinkedIn, and other platforms.

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

Usage Guidelines4/5

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

The Instagram Reel scope makes the intended use case explicit and unambiguous. It does not explicitly name alternative transcript tools or state when not to use them, but the platform constraint is clear enough for an agent to select the correct tool.

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

kick_clipAInspect

Get a Kick clip — source + stages/ms, 7d clip cache, Evomi→Webshare→Decodo→Apify. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesKick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel input for recent clips[]: kick.com/{name}, kick.com/@{name}, @{name}, or {name}. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
limitNoChannel mode only — max recent clips to return (default 30, max 100). Ignored when url is a clip. Flat 1 credit. No cursor — Kick returns a single page.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.8/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 behavioral burden and does substantial work: it discloses flat pricing, no charge for empty results/failures, a 24-hour cache option, a 7-day clip cache, and the proxy chain. It stops short of describing output structure, side effects, or rate limits, but the disclosed cost and caching behavior are genuinely valuable.

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

Conciseness3/5

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

The description is short and front-loaded with the core purpose, but it contains direct redundancy: 'Flat 1 credit' and 'Costs 1 credit' say the same thing. The proxy chain and cache details earn their place, but the duplicate pricing sentence is clear waste.

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

Completeness4/5

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

For a four-parameter, no-output-schema tool with no annotations, the description covers the most decision-relevant context: cost, failure charging policy, caching semantics, and the execution pipeline. It does not explain return shape, but it does preview 'source + stages/ms' and the schema fully covers parameter inputs.

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 is 3; the schema already documents all four parameters thoroughly. The description adds meaningful extra detail for cache=true ('free 24h cache hit') and the default freshness behavior, but it does not enrich url, limit, or cacheMaxAge beyond what the schema already says.

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

Purpose5/5

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

The description opens with a specific verb and resource — 'Get a Kick clip' — and adds distinguishing detail: source plus stage timings, cache behavior, and proxy chain. It clearly identifies this as the Kick-specific clip tool, separating it from twitch_clip and other platform tools by name and content.

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

Usage Guidelines3/5

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

Usage context is implied through the Kick-specific naming and description, but no explicit alternatives or exclusions are stated. The cache guidance ('Pass cache=true for a free 24h cache hit') gives operational direction, but the description does not say when to prefer this tool over twitch_clip or other platform-specific tools.

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

komi_pageBInspect

Komi link-in-bio → identity, socials{} (incl. website), content LINK/PRODUCT rows with price/currency. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesKomi page URL or username, e.g. https://komi.io/kimkardashian or https://kimkardashian.komi.io/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

B3.1/5.0
Behavior3/5

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

No annotations are present, so the description carries the full burden. It usefully discloses the flat credit cost, that empty results and failures are not charged, and the cache behavior. However, the pricing wording is redundant and slightly ambiguous: 'Flat 1 credit. Costs 1 credit.' followed by 'free 24h cache hit' leaves uncertainty about whether cache hits consume a credit.

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

Conciseness3/5

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

The description is compact and front-loaded with the tool's purpose. It loses points because 'Flat 1 credit. Costs 1 credit.' directly repeats the same fact, wasting one sentence. The rest is dense and scannable.

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 simple single-URL fetch tool with fully documented parameters, the description covers the main outputs, cost, and caching. Still, without an output schema, a bit more specificity about the socials{} structure and row format would help, and the Komi-only URL constraint is left to the schema rather than the description.

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?

The input schema already documents all three parameters with 100% coverage, so the baseline is 3. The description adds only a hint about cache=true and default freshness, but does not explain url format or cacheMaxAge beyond what the schema already states.

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

Purpose4/5

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

The description clearly identifies the resource (Komi link-in-bio page) and what data it returns: identity, socials, and content LINK/PRODUCT rows with price/currency. This distinguishes it from similar link-in-bio siblings like linktree_page and linkme_profile. It lacks an explicit verb such as 'fetch' or 'extract', relying on the arrow notation, so it stops just short of a 5.

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?

The description does not say when to prefer this tool over the many sibling tools for other link-in-bio platforms, nor does it mention any exclusions or alternatives. The 'Komi' label implies the intended platform, but there is no explicit routing guidance for the agent.

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

kwai_postAInspect

Single Kwai video — caption ("" when none), hashtags[], author, mp4 (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesKwai video URL, e.g. https://www.kwai.com/@topfilmeseseriesnatv/video/5240932700689736196. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.3/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 behavioral disclosure burden. It transparently states the credit cost, that empty results and failures are never charged, and how the cache parameter affects freshness and cost. This goes beyond basic operation descriptions.

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

Conciseness5/5

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

The description is compact and front-loaded with the most important information: what the tool returns, the cost, the no-charge guarantee, and cache behavior. Every sentence adds value and none are redundant.

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

Completeness5/5

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

For a simple single-resource fetch tool, the description covers the essential return fields, cost implications, failure charging policy, and cache behavior. Even without an output schema, an agent has enough context to correctly invoke and interpret the result.

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?

The input schema already documents both parameters with 100% coverage, including the URL format and cache behavior. The description repeats and clarifies the cache semantics but does not add meaningful new parameter-level meaning beyond the schema.

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

Purpose5/5

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

The description explicitly states this tool returns a single Kwai video with specific fields (caption, hashtags, author, mp4), clearly distinguishing it from sibling tools like kwai_profile and kwai_user_posts. The resource and action are immediately identifiable.

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

Usage Guidelines4/5

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

The description clearly conveys when to use this tool: for an individual Kwai video, with guidance on cache usage and cost behavior. It does not explicitly name alternative tools for other scenarios, but the intended use case is unambiguous.

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

kwai_profileAInspect

Fetch Kwai profile — display name, bio, counts, and verification as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesKwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/5.0
Behavior4/5

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

With no annotations at all, the description carries the behavioral burden. It clearly discloses cost (1 credit), the no-charge policy for empty results and failures, and cache behavior (free 24h cache hit, default always fresh). This is strong behavioral context, though it stops short of richer execution details like rate limits or retry behavior.

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

Conciseness5/5

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

Four short sentences, each earning its place: what the tool returns, cost, failure charging policy, and cache usage. The core purpose is front-loaded and there is no filler or repetition beyond what is necessary for context.

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

Completeness4/5

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

For a simple two-parameter read tool with no output schema or annotations, the description conveys the essential information: input expected, output shape, pricing, failure charging behavior, and cache option. It does not detail what exactly the 'counts' mean and there is no output schema, but the definition is sufficiently complete for a capable agent to call it correctly.

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?

The schema already covers both parameters at 100% and describes URL format/platform matching and cache semantics in detail. The description adds little beyond the schema, restating the cache behavior in equivalent terms. Baseline 3 is appropriate because the schema does the heavy lifting.

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

Purpose5/5

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

The description has a specific verb ('Fetch'), a specific resource ('Kwai profile'), and a concrete list of returned data (display name, bio, counts, verification as structured JSON). It clearly distinguishes from siblings like kwai_post and kwai_user_posts which are post-oriented endpoints.

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

Usage Guidelines3/5

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

The description implies 'use this for Kwai profile metadata' and gives operational guidance around credits and caching, but it does not explicitly tell the agent when to choose this tool over related siblings such as kwai_user_posts or kwai_post. Selection guidance is inferred from the name and returned fields rather than stated directly.

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

kwai_user_postsAInspect

Kwai profile posts — caption ("" when none), engagement, mp4 + transcript (~1 credit/post). Costs ~20 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesKwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax posts to return (1–200). Default 20. ~1 credit per post returned (min 2).
cursorNoOpaque pagination cursor from the previous nextCursor. Pages within posts from one profile fetch.

TDQS

A3.8/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses pricing (~1 credit/post, ~20 credits per result), the cache=true free 24h hit behavior, and that empty results/failures are never charged. It does not cover auth requirements or rate limits, but the material cost and caching behaviors are explicit and useful.

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?

The description is compact and front-loaded: purpose and output content come first, followed by cost, failure billing, and cache behavior. Every sentence adds value, though the phrase 'Costs ~20 credits (1/result)' is slightly ambiguous next to '~1 credit/post'.

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

Completeness4/5

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

For a tool with no annotations and no output schema, the description covers the essential selection and invocation details: what posts are returned, approximate cost, cache behavior, and no-charge-on-failure policy. Pagination details come from the cursor schema, and sibling disambiguation is mostly left to the names.

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

Parameters4/5

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

The input schema already documents all four parameters at 100% coverage. The description adds operational meaning beyond the schema: cache=true gives a free 24-hour cache hit while the default is always fresh, and the credit-per-post note connects the limit parameter to cost. URL and cursor semantics are already handled by the schema.

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

Purpose4/5

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

The description identifies the resource as Kwai profile posts and enumerates the returned content (caption, engagement, MP4, transcript), so an agent can see what the tool produces. It lacks an explicit verb such as 'list' or 'fetch' and does not distinguish itself from siblings like kwai_post or other platform user_posts, but the platform and resource scope are clear.

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

Usage Guidelines3/5

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

Use is implied: this is the tool for posts from a Kwai profile, based on the name and first line. There is no explicit guidance about when to choose kwai_user_posts over kwai_post, kwai_profile, or other user_posts tools, so the agent must infer routing.

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

linkbio_pageAInspect

lnk.bio → id, socials{}, titled links[], website/email/whatsapp, other[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkbio (lnk.bio) page URL or username, e.g. https://lnk.bio/charlidamelio. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does a solid job: it discloses the flat credit cost, that empty/failed results are never charged, and that fresh fetches are the default with an optional free cache hit. This is meaningful behavioral context beyond the input schema, though it does not address error handling or rate limits.

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

Conciseness3/5

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

The description is short and front-loaded with the output shape, but it wastes a sentence on redundancy: 'Flat 1 credit. Costs 1 credit.' say the same thing. The structure is otherwise compact and scannable.

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

Completeness4/5

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

Despite no output schema, the description sketches the return structure (id, socials, titled links, website/email/whatsapp, other[]) and covers cost, failure charging, and caching. It is not fully complete because the cache=true 24h claim clashes with cacheMaxAge's longer TTLs, but for a simple three-parameter fetch tool it provides enough context.

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 is 3. The description adds a concrete 'free 24h cache hit' claim and 'default always fresh' behavior, but this slightly conflicts with the schema's cacheMaxAge options (1d-30d) and the default-TTL wording for cache=true. Thus the added value is marginal and somewhat ambiguous.

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

Purpose4/5

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

The description identifies the resource (lnk.bio pages) and the output shape (id, socials, titled links, website/emailwhatsapp, other[]), making it clear this is a page parser/extractor. It does not use an explicit verb like 'fetch and parse', but the arrow notation conveys the transformation and distinguishes it from sibling tools like linktree_page and komi_page by platform name.

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

Usage Guidelines3/5

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

The description gives parameter-level usage guidance ('Pass cache=true for a free 24h cache hit') and cost behavior, but it never states when to choose this tool over siblings like linktree_page, komi_page, linkme_profile, or pillar_page. Usage context is implied by the lnk.bio platform name rather than explicitly articulated.

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

linkedin_ad_library_ad_detailsAInspect

One LinkedIn Ad Library ad by ID. LinkedIn withholds Ran-from / impressions / targeting on most creatives — those keys are omitted, not 404. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn Ad Library URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations provided, the description fully carries the behavioral disclosure burden. It discloses that LinkedIn withholds certain fields, that missing keys are omitted rather than 404s, that the request costs 2 credits, that empty results and failures are not charged, and how caching affects cost and freshness. This is excellent behavioral transparency.

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

Conciseness5/5

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

The description is compact and front-loaded: the core purpose appears in the first sentence, followed by high-value caveats and usage tips. Every sentence earns its place; there is no filler or repetition of schema content.

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

Completeness5/5

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

For a simple two-parameter tool with no output schema, the description covers the essential call context: required identifier type, platform restrictions are already in the schema, cost, failure/empty behavior, and caching tradeoffs. An agent has enough information to decide whether and how to call this tool and to interpret missing fields in the response.

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%: the url parameter is fully explained as a LinkedIn Ad Library URL or ad ID with platform-matching restrictions, and cache is explained as a 24h cache flag. The description adds behavioral and pricing context but no new parameter-level semantic detail beyond what the schema already provides, so the baseline 3 is appropriate.

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

Purpose5/5

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

The opening sentence, 'One LinkedIn Ad Library ad by ID,' states a specific verb, resource, and selection method. It clearly distinguishes this tool from search-oriented siblings like linkedin_ad_library_search_ads and other platform-specific ad detail tools.

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

Usage Guidelines4/5

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

The description clearly communicates when to use this tool: when you have a specific LinkedIn ad ID or URL. It also provides practical usage context like cache=true for free hits and explains that missing fields are omitted rather than errors. It does not explicitly name an alternative to use when no ID is available, but the singular-by-ID framing makes the intended use unambiguous.

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

linkedin_ad_library_search_adsBInspect

LinkedIn publishes run dates, impressions and targeting only on a subset of creatives. Search is the SERP card; source is native|extended. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoAdvertiser / account owner name (min 2 when used). Provide q/company, keyword, or companyId.
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 per call on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended so you can see which price applied.
cursorNoPagination token from paginationToken / nextCursor.
companyNoAlias of q — advertiser / account owner name.
countryNoSingle ISO country code. Default US. Ignored when countries is set.
endDateNoCustom range end YYYY-MM-DD (use with startDate).
keywordNoOptional keyword filter on ad creative copy.
companyIdNoLinkedIn numeric company id for exact advertiser match.
countriesNoComma-separated ISO country codes (e.g. US,CA,MX).
startDateNoCustom range start YYYY-MM-DD (use with endDate).
paginationTokenNoAlias of cursor.

TDQS

B3.1/5.0
Behavior4/5

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

With no annotations, the description carries the disclosure burden and does meaningful work: it reveals that run dates/impressions/targeting appear only on a subset of creatives, that results come from native or extended sources, that empties/failures aren't billed, and that cache=true gives a free 24h hit. The blanket 'Costs 2 credits' slightly oversimplifies the schema's extended-fallback ~3.5 credit billing, but overall it is transparent and useful.

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?

The description is four dense sentences with no filler, and it front-loads the most important caveat about data availability. The 'SERP card' phrasing is slightly jargon-heavy, but the text is compact and each clause adds operational value.

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 12-parameter search tool with no output schema and no annotations, the description covers pricing, caching, and data limitations but never states what the response contains beyond 'SERP card'. It also omits any pointer to when this should be used instead of linkedin_ad_library_ad_details, so an agent is left without the full decision context.

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 coverage is 100%, and every parameter already has a substantive description including defaults, aliases, and constraints. The tool description adds no new parameter meaning beyond repeating cache=true; therefore a baseline 3 is appropriate.

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 does not explicitly say 'searches LinkedIn Ad Library ads'; it opens with a data caveat and defines 'Search is the SERP card'. The tool name and schema make the intent clear, but the description itself is vague about the verb+resource and does not distinguish itself from linkedin_ad_library_ad_details.

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?

It provides operational guidance (cache behavior, credit cost, no charge for failures) but no when-to-use or when-not-to-use guidance relative to sibling ad-library tools. There is no mention of alternatives such as linkedin_ad_library_ad_details or the conditions that would select this search tool.

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

linkedin_companyAInspect

Company page for B2B intel — specialties, similarPages, employeeCount, founded, slogan, cover. Native 1 / enrich 2. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn company URL, e.g. https://www.linkedin.com/company/shopify. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the transparency burden. It usefully discloses that the operation costs 2 credits, that empty results and failures are never charged, and that cache=true returns a free 24h cache hit. However, 'Native 1 / enrich 2' is an unexplained, internal-sounding behavior that could confuse an agent, and it does not mention authentication, rate limits, or response shape.

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?

The description is short and front-loads the core purpose and key data fields before moving to compact operational notes. It earns most of its place, but the cryptic 'Native 1 / enrich 2' fragment is unexplained and slightly undermines the structure.

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

Completeness4/5

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

For a simple two-parameter read tool with no output schema, the description covers the main purpose, listed return fields, credit cost, failure billing, and cache behavior. The remaining gaps are the unexplained 'Native/enrich' distinction and the absence of explicit sibling routing, but an agent can likely invoke it correctly using the provided URL and cache parameters.

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 coverage is 100%, and the input schema already contains strong descriptions for both url and cache. The description adds operational details about credits and caching, but it mostly restates or supplements the schema without adding new parameter-level meaning. Baseline 3 is appropriate.

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

Purpose4/5

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

The description identifies a specific resource (LinkedIn company page) and enumerates the data fields it exposes: specialties, similarPages, employeeCount, founded, slogan, cover. It is clear enough to distinguish from sibling tools like linkedin_company_posts or linkedin_profile, though it lacks an explicit verb like 'fetches' or 'returns'.

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

Usage Guidelines3/5

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

The phrase 'Company page for B2B intel' implies when the tool should be used. However, the description never names alternatives or explicitly says when not to use it, such as 'for company posts use linkedin_company_posts' or 'for individual profiles use linkedin_profile'. This is implied guidance rather than explicit routing.

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

linkedin_company_postsBInspect

Company posts with engagement{likes,comments} — cursor pages up to 100. Flat 1 credit on the native path. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 100). Flat 1 credit per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 100 posts).

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral disclosure burden. It covers billing, cache behavior, pagination limits, and the no-charge policy for empty or failed results, which is useful. However, 'native path' is left undefined, and the description does not clarify read-only status, auth requirements, or rate limits.

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

Conciseness3/5

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

The description is short and front-loaded with the main purpose, which is good. But 'Flat 1 credit on the native path. Costs 1 credit.' is redundant, and 'native path' is an unexplained term that could confuse an agent.

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 4-parameter tool with no annotations and no output schema, the description supplies useful operational context: cost, caching, pagination, and failure billing. Still, it omits a clear statement of the return structure beyond 'posts with engagement' and leaves the 'native path' term ambiguous.

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 coverage is 100%, so the baseline of 3 applies and the description is not required to re-document parameters. The description's references to cache and cursor align with the schema but do not add substantive meaning beyond what the input schema already provides.

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

Purpose4/5

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

The description identifies the resource — LinkedIn company posts — and the key output feature (engagement likes/comments) plus pagination up to 100. It lacks an explicit verb like 'Fetch' or 'List,' but the noun phrase and tool name make the purpose distinguishable from siblings like linkedin_company and linkedin_search_posts.

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?

The description gives no guidance on when to use this tool versus alternatives such as linkedin_post_details or linkedin_search_posts. There are no when-to-use or when-not-to-use conditions, nor any pointer to a sibling for different LinkedIn post use cases.

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

linkedin_post_detailsAInspect

Get a LinkedIn post — text, author, reactions, and comments count as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the transparency burden and does well: it discloses the 1-credit cost, that empty results and failures are not charged, and the 24-hour cache behavior. It does not mention rate limits or auth, but the disclosed billing and caching behaviors are meaningful beyond the schema.

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

Conciseness5/5

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

Three tight, front-loaded sentences: the first states what the tool returns, and the next two cover cost and caching. No wasted words or repetition of schema content.

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

Completeness5/5

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

For a simple two-parameter read tool with no output schema, the description provides enough: what fields are returned, what it costs, when failures are free, and how caching works. There is no missing information that would prevent an agent from calling it correctly.

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 schema already explains both the url and cache parameters. The description reinforces the cache behavior but does not add new semantic meaning beyond what the parameter descriptions already provide, matching the baseline.

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

Purpose5/5

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

States a specific verb ('Get'), a precise resource ('a LinkedIn post'), and the exact returned fields ('text, author, reactions, and comments count as structured JSON'). This clearly differentiates it from siblings like linkedin_post_transcript or linkedin_search_posts without needing to open their schemas.

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

Usage Guidelines4/5

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

The description gives clear usage context by requiring a specific post URL and explaining when to use cache=true versus the default fresh fetch. It does not explicitly name alternatives or exclusion conditions, but the context is clear enough for an agent to know this is the single-post details endpoint.

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

linkedin_post_transcriptBInspect

LinkedIn post text as a transcript — paragraph segments, timingSource none. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does a good job: it discloses cost, the fact that empty results and failures are never charged, cache behavior, and the paragraph-segment/timingSource-none output trait. It does not mention rate limits or response failure shapes, which prevents a higher score.

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

Conciseness3/5

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

The description is short and front-loaded, but 'Flat 1 credit. Costs 1 credit.' is a redundant pair that wastes a sentence. Overall it is efficient, but not every sentence earns its place.

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

Completeness4/5

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

For a simple two-parameter tool with full schema coverage and no annotations, the description covers the essential operational context: output characteristics, cost, failure charging policy, and cache behavior. It lacks tool-selection context and a fuller return-shape explanation, but these are minor given the schema richness.

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 both url and cache are already well documented in the schema. The description adds no new parameter-level meaning beyond restating the cache default, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly identifies the resource (LinkedIn post text) and the output form (transcript with paragraph segments and no timing source), which distinguishes it from generic post-details endpoints. However, it lacks an explicit verb like 'fetches' or 'returns', and it does not explicitly name sibling alternatives, so it stops short of a 5.

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?

There is no guidance on when to choose this tool over alternatives such as linkedin_post_details, linkedin_search_posts, or platform-specific transcript endpoints. The only usage-related guidance is operational (pass cache=true for a free cache hit), not about tool selection.

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

linkedin_profileAInspect

LinkedIn person profile with experience[], education[], skills[], similarProfiles[] — masked guest text becomes restricted:true. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkedIn profile URL, e.g. https://www.linkedin.com/in/paul-martin-a5aa98. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the credit cost (2), that empty results and failures are not charged, the caching behavior (24h free hit with cache=true, default always fresh), and the behavior of masked guest text becoming restricted:true. It does not mention authentication, rate limits, or error details, but the key operational traits are covered.

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

Conciseness5/5

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

The description is a compact set of sentences that front-loads the core content (profile fields), then adds cost and caching details. There is zero filler; every clause earns its place.

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

Completeness4/5

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

For a profile tool with no output schema, the description covers the returned fields, cost, caching, and a specific behavioral quirk. It lacks some edge-case details (e.g., invalid URL handling, rate limits) but is sufficiently complete for an agent to call it correctly.

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

Parameters4/5

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

Schema coverage is 100% for both parameters, but the description adds meaning beyond the schema: it explains the cache parameter's cost implications and default behavior. The url parameter is already well described in the schema, so the description adds incremental value without redundancy.

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

Purpose5/5

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

The description clearly states it is a LinkedIn person profile and enumerates the returned fields (experience, education, skills, similarProfiles). This distinguishes it from sibling tools like linkedin_company and linkedin_post_details by naming the resource type (person vs company/post).

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

Usage Guidelines3/5

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

Usage guidance is only implied through the phrase 'LinkedIn person profile' — an agent can infer this is for individual profiles rather than companies or posts, but the description never explicitly states when to choose this tool over alternatives or when not to use it. No exclusions or direct comparisons are given.

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

linkedin_search_postsAInspect

Keyword search of public LinkedIn posts — offset cursor, ceiling 50. Costs ~16 credits (0.8/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query or keywords (min 2 characters).
sortNorelevance (default, search-engine rank — dates can span years) or date (recency).
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 50). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 50 posts).

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full behavioral burden and delivers: credit cost (~16 credits, 0.8/result), no charge on empty results/failures, cache behavior with a 24h hit, default fresh fetching, offset cursor, and a ceiling of 50. This goes well beyond the schema and gives an agent a realistic model of cost and side-effect behavior.

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

Conciseness5/5

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

Two sentences with high information density. The main purpose is front-loaded, followed by cost, failure handling, and cache guidance. No wasted words or redundant restatement of the schema.

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

Completeness5/5

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

For a search tool with no output schema and no annotations, the description covers the key operational details: scope, cost, pagination mechanism, result ceiling, cache behavior, and failure-charge policy. An agent has enough information to select the tool, set parameters sensibly, and interpret likely outcomes.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: per-result billing for limit, the cache-default behavior, and the credit cost. It also reinforces cursor pagination. It does not add much about q or sort, but those are already well-described in the schema.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Keyword search of public LinkedIn posts'. This clearly distinguishes the tool from sibling tools like linkedin_company_posts (company feed retrieval) and linkedin_post_details (single post). The scope ('public', 'keyword search') tells an agent exactly what this tool does and roughly when it applies.

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

Usage Guidelines4/5

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

The description gives clear context: use this for keyword-based searching of public LinkedIn posts. It does not explicitly name alternatives or exclusion criteria, but the phrase 'keyword search of public LinkedIn posts' strongly implies when this tool is relevant relative to siblings that fetch company posts or post details. The lack of explicit 'when not to use' guidance prevents a 5.

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

linkme_profileAInspect

Linkme profile → bio, profileVisitCount, featured links, webLinks, email/infoLinks, stripeStatus. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinkme profile URL or username, e.g. https://link.me/danucd or danucd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.7/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 behavioral burden. It discloses meaningful traits: flat credit cost, no charge for empty results/failures, and cache behavior with a default fresh fetch. It does not mention rate limits or side effects, but for a read-only profile fetch the charging and caching policies are the key behavioral facts.

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?

The description is mostly tight and front-loaded with output fields and credit policy. However, 'Flat 1 credit. Costs 1 credit.' repeats the same fact in two consecutive sentences, which prevents a perfect score.

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

Completeness4/5

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

For a single-resource profile fetch with no output schema, the description adequately lists returned fields and covers cost/caching behavior. It omits detailed response structure or error shape, but the field enumeration plus fully documented input schema make the definition reasonably complete for correct invocation.

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 input schema already fully documents url, cache, and cacheMaxAge. The description does not add parameter-level meaning beyond what the schema provides, so the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description specifies the resource (Linkme profile) and enumerates the returned fields (bio, profileVisitCount, featured links, webLinks, email/infoLinks, stripeStatus), which helps distinguish it from sibling profile/page tools. It lacks an explicit action verb like 'fetch' or 'get', so it falls just short of a fully explicit purpose statement.

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

Usage Guidelines3/5

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

The description provides cost and caching guidance ('Flat 1 credit', 'Pass cache=true for a free 24h cache hit'), which is useful operational context. However, it never explicitly says when to prefer this tool over alternatives or states exclusions; usage context is only implied by the Linkme platform and the schema's cross-platform warning.

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

linktree_pageAInspect

Link-in-bio → creator graph: typed links, socialAccounts{} that feed TikTok/Instagram/Spotify/SoundCloud, email, verticals. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesLinktree profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It clearly states the flat 1-credit cost, the no-charge policy for empty results and failures, and the cachebehavior (cache=true → free 24h hit, default always fresh). This goes well beyond the structured schema and gives an agent actionable operational expectations.

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?

The description is short and front-loaded with the core purpose, then pricing, then cache behavior. There is minor redundancy ('Flat 1 credit. Costs 1 credit.') that adds no information, but overall each remaining clause earns its place and the structure is scannable.

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

Completeness4/5

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

Given no output schema, the description does a reasonable job of summarizing what the result contains: typed links, socialAccounts that feed specific platforms, email, and verticals. It also covers cost and caching, which are important contextual facts. Missing is any guidance on distinguishing Linktree from other link-in-bio providers, but the schema covers input constaints and the description covers the output shape enough for a 3-parameter tool.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds real value by clarifying the cache parameter's semantics: cache=true gives a free 24-hour cache hit, and the default is always fresh. It also reinforces the cost model, which aids the agent in estimating usage. The description does not need to repeat the URL or cacheMaxAge schema text.

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

Purpose4/5

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

The phrase 'Link-in-bio → creator graph' plus the enumerated content (typed links, socialAccounts, email, verticals) makes clear this tool extracts a creator profile from a Linktree page. It is distinguishable from platform-specific tools, though it does not explicitly differentiate itself from sibling link-in-bio tools like linkbio_page, komi_page, or pillar_page.

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?

The description implies usage for Linktree link-in-bio pages and creator graph extraction, but it gives no explicit when-to-use guidance or exclusions. It fails to mention alternatives like linkbio_page or linkme_profile, which appear to cover the same general link-in-bio purpose.

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

pillar_pageAInspect

Pillar link-in-bio → identity, socials{}, links[] with per-link clicks, products[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPillar page URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden and does so well: it explains credit cost, that empty results and failures are never charged, and the cache behavior including a free 24-hour cached hit. It omits explicit statements about being read-only, but the return-shape makes that reasonably inferable.

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

Conciseness3/5

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

The description is short and front-loaded with the return shape, which is good. However, 'Flat 1 credit' and 'Costs 1 credit' are redundant statements that waste space. The arrow-heavy style is efficient but slightly cryptic.

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

Completeness4/5

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

Given the absence of an output schema, the description provides a useful return-shape summary. It also covers pricing, failure billing, and caching behavior. It does not explain what 'Pillar' is as a platform, but the URL schema and platform-matching warning compensate for that.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value by specifying that cache=true gives a free 24-hour cache hit and that the default is always fresh, going beyond the schema's generic 'response cache' wording. It does not discuss cacheMaxAge in the tool description, but the schema already describes it fully.

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

Purpose5/5

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

The description names a specific resource, Pillar link-in-bio pages, and enumerates the returned content: identity, socials, links with per-link clicks, and products. This clearly distinguishes it from sibling link-in-bio tools like linktree_page and linkbio_page by platform.

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

Usage Guidelines3/5

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

The description implies usage by naming the Pillar platform, and the schema explicitly warns against passing cross-platform URLs. However, it does not directly state when to choose this tool over sibling link-in-bio tools, nor does it mention alternative tools by name. Cache usage guidance is present, but the when-to-use guidance is mostly implicit.

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

pinterest_boardAInspect

Pins on a Pinterest board — saves, imageOriginal, destinationUrl, top-level author. ~0.5 credits/pin. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPinterest board URL (.../username/board-name/), not a /pin/ URL. Example: https://www.pinterest.com/potterybarn/rustic-lodge-lookbook/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 200). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100).

TDQS

A3.7/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 behavioral disclosure burden and does so well: it discloses per-result credit cost, approximate total cost, that empty results and failures are not charged, and that cache=true provides a free 24-hour hit while the default is a fresh fetch. This goes beyond a simple read-only statement.

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?

The description is compact and front-loaded with the resource and output fields. The only minor issue is redundancy around credit cost: '~0.5 credits/pin' and '~13 credits (0.5/result)' restate the same per-result pricing information.

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

Completeness4/5

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

Given the detailed input schema and no output schema, the description is mostly complete: it names the core returned fields, explains costs and cache behavior, and the schema handles pagination, limits, and URL constraints. A small gap is the lack of explicit sibling-tool routing, but an agent can still invoke this tool correctly.

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 schema already documents url, cache, limit, and cursor in detail. The description reinforces the cache behavior and per-result billing, but it does not add significant parameter-level meaning beyond what the schema provides. Baseline 3 applies.

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

Purpose4/5

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

The description clearly identifies the resource as pins on a Pinterest board and names the key returned fields (saves, imageOriginal, destinationUrl, top-level author). It lacks an explicit verb like 'list' or 'fetch' and does not distinguish itself from sibling tools such as pinterest_user_pins, but the intent is unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for Pinterest board scraping through its name and content, and the URL parameter schema reinforces what kind of URL is valid. However, it never explicitly states when to choose this tool over alternatives like pinterest_pin_details, pinterest_search, or pinterest_user_boards.

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

pinterest_pin_detailsAInspect

Get a Pinterest pin — title, description, link, board, origin creator, and engagement as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPinterest pin URL, e.g. https://pinterest.com/pin/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.8/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 behavioral disclosure burden. It usefully discloses the 1-credit cost, no charge for empty results or failures, cache=true yielding a free 24h hit, and default always-fresh fetching. It does not cover rate limits or error response shape, but for a simple read tool these disclosures are meaningful and sufficient.

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

Conciseness5/5

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

The description is three tight, front-loaded sentences: outcome first, then cost, failure charging, and cache guidance. Every sentence earns its place with no filler or redundancy.

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

Completeness4/5

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

For a simple two-parameter tool with no output schema, the description covers the purpose, response fields, credit cost, failure charging, and cache mode. It does not describe exact error/empty response shapes, but alongside a complete schema this is sufficient for an agent to invoke it correctly.

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?

The input schema already fully describes both parameters (url and cache) with detailed commentary, so the baseline is 3 per the high schema coverage. The description's cache=true mention adds little beyond the schema, mostly restating the 24h cache and default-fresh behavior.

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

Purpose4/5

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

The description uses a specific verb ('Get') and clearly identifies the resource (a Pinterest pin) and the fields returned (title, description, link, board, origin creator, engagement), making the tool's scope unambiguous. It does not explicitly distinguish itself from sibling Pinterest tools like pinterest_user_pins or pinterest_board, but the single-pin focus is clearly implied.

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

Usage Guidelines3/5

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

The intended use is inferable: fetch details for one Pinterest pin. However, the description does not name alternative tools or state when not to use it, such as when needing a user's pins or a board's pins, leaving tool-selection guidance mostly implicit.

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

pinterest_user_boardsBInspect

Boards on a Pinterest profile — pinCount, coverImage (474x), privacy, sections. Board followers when scoped. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 200). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (max 200).

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral disclosure burden and does it well: it discloses approximate credit cost, per-result billing, no charge for empty or failed results, and the always-fresh default with an optional free cache hit. The phrase 'when scoped' is ambiguous about when board followers are included, preventing a perfect score.

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?

The description is compact, front-loaded with the resource and data fields, then cost and cache behavior. Each sentence earns its place, though the ambiguous 'when scoped' fragment and the dense credit-cost formulation keep it from being perfectly clean.

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?

There is no output schema, so the description should explain return values more fully; it lists key fields but leaves out the response envelope and when exactly board followers appear. Pagination, cursor, and limits are covered by the schema, but the missing clarification around 'scoped' leaves moderate gaps for an unfamiliar agent.

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 is 3. The description adds some value by tying the limit to per-result billing and emphasizing the cache cost, but it mostly restates cache behavior already documented in the schema. It contributes little beyond what an agent already gets from the parameter descriptions.

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

Purpose4/5

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

The description identifies the resource as 'Boards on a Pinterest profile' and enumerates returned fields, making it clear this is a profile-scoped listing tool rather than a single-board or pin-fetching tool. It is clear enough to be distinguished from siblings like pinterest_user_pins, though it does not explicitly name the alternatives.

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?

There is no explicit guidance about when to use this tool versus siblings such as pinterest_board, pinterest_search, or pinterest_user_pins. The intended use is only implied by the phrase 'Boards on a Pinterest profile', leaving the routing decision entirely to the agent.

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

pinterest_user_pinsAInspect

Pins from a Pinterest profile — offset cursor, pidgets window ~100. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 200). Billed per result.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100).

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well: it discloses credit cost, per-result billing, no charge on empty/failure, 24h cache semantics, and default fresh fetch. It does not detail rate limits or failure responses, but the key operational behavior is transparent.

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?

Four short sentences, front-loaded with the core purpose; every sentence adds distinct operational info. Minor jargon ('pidgets' window) and the approximate credit figure keep it from a 5.

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

Completeness4/5

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

The schema fully documents all four parameters, and the description covers costs, caching, pagination cursor, and the ~100-result window. Since there is no output schema, a one-line statement of the returned pin fields would strengthen it, but it is complete enough for correct invocation.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value by tying limit to cost (0.5/result) and by explaining the effective retrieval window (~100) and cache behavior, which clarifies how to set cache and limit.

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

Purpose4/5

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

The opening phrase 'Pins from a Pinterest profile' identifies the resource and collection type, distinguishing it from sibling tools like pinterest_user_boards and pinterest_pin_details. It lacks an explicit verb, but the tool name and phrase together make the retrieval action unambiguous.

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

Usage Guidelines3/5

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

The description gives clear context—this is for a user's pins, with pagination and cache options—but never says when to prefer it over siblings such as pinterest_user_boards or pinterest_search. It implies usage but provides no explicit when/when-not guidance or alternatives.

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

reddit_post_commentsAInspect

Flat Reddit comment threads with depth/parentId, cursor pagination, and the parent post in one call. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesReddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A4/5.0
Behavior5/5

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

With no annotations present, the description carries the full behavioral burden and does so thoroughly: it discloses flat vs. threaded structure, parent linkage via depth/parentId, pagination, inclusion of the parent post, credit cost, free empty/failed calls, and cache behavior. This exceeds typical tool descriptions.

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

Conciseness5/5

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

Three tight sentences, each earning its place: the first defines output shape, the second states cost/failure policy, and the third explains cache behavior. There is no filler or duplication of schema details.

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

Completeness4/5

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

For a read-only listing endpoint with a fully documented input schema, the description covers the important non-obvious aspects: cost, caching, flat shape, and pagination. It stops slightly short of describing the full response envelope beyond depth/parentId and the parent post, though the schema already hints at cursor mechanics.

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 schema already documents all four parameters: url, cache, limit, and cursor. The description reinforces cache and cursor behavior but does not add meaning substantially beyond the schema, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly identifies the resource — Reddit comment threads — and the key shape of what is returned: flat structure, depth/parentId, cursor pagination, and the parent post. It is unambiguous and easily distinguishable from siblings like reddit_post_details or reddit_post_transcript, though it uses a noun phrase rather than an explicit imperative verb like 'fetch'.

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

Usage Guidelines3/5

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

It is implied that this tool is for retrieving comments for a Reddit post, but the description never states when to prefer it over related tools or what the alternatives are. There are no explicit when-to-use, when-not-to-use, or alternative-tool conditions.

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

reddit_post_detailsAInspect

Get a Reddit post — title, body, score, comments count, subreddit, and author as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesReddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it discloses meaningful behavior: cost of 1 credit, no charge on empty results/failures, and the cache=true behavior with 24h hits and default fresh fetching. It does not mention rate limits or auth, but for a simple read tool the key behavioral traits are covered.

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

Conciseness5/5

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

Three tight sentences: first identifies the tool and its output, second states cost and failure policy, third explains the cache control. It is front-loaded with the most important information and contains no padding.

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

Completeness4/5

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

For a two-parameter tool with no output schema, the description is nearly complete: it lists the essential return fields, cost, failure policy, and caching. Missing explicit sibling routing is minor because the field list already clarifies scope. No output schema exists, but the described return fields give enough context for correct selection.

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 is 3. The description adds cache semantics ('Pass cache=true for a free 24h cache hit') but this largely restates the schema's cache field description. It adds no extra meaning for the required 'url' parameter.

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

Purpose5/5

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

The description states a specific verb ('Get'), a distinct resource ('a Reddit post'), and enumerates the exact fields returned (title, body, score, comments count, subreddit, author). This clearly separates it from siblings like reddit_post_comments and reddit_post_transcript.

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

Usage Guidelines3/5

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

The description implies when to use it: whenever you need basic Reddit post metadata as JSON. But it never explicitly says 'use reddit_post_comments for the actual comments' or 'use reddit_post_transcript for a transcript', so guidance vs alternatives is only inferred from the sibling names and field list.

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

reddit_post_transcriptAInspect

Written post text — title, body and top comments. Not a speech transcript. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesReddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 200). Flat 2 credits per call.

TDQS

A3.5/5.0
Behavior4/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. It goes beyond the schema by stating 'Flat 2 credits', 'Empty results and failures are never charged', and the cache behavior 'cache=true for a free 24h cache hit (default always fresh)'. It does not cover auth, rate limits, or error details, but the disclosed pricing and cache semantics are substantial.

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

Conciseness3/5

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

The description is front-loaded with the core content definition and is mostly compact. However, 'Flat 2 credits' and 'Costs 2 credits' are redundant, wasting a sentence on the same fact. Overall it is efficient but not perfectly polished.

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 3-parameter tool with no output schema and no annotations, the description covers the key operational facts: content returned, cost, failure no-charge, and cache usage. It is missing explicit routing guidance versus reddit_post_details/reddit_post_comments and some return-format details, but it is sufficient for basic correct invocation.

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 coverage is 100%, so the baseline is 3. The description adds operational meaning for the cache parameter ('free 24h cache hit') and reinforces flat pricing, but it does not clarify parameter-specific behavior such as how limit interacts with top comments. The schema already documents url, cache, and limit adequately.

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

Purpose4/5

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

The description clearly states the tool returns 'Written post text — title, body and top comments', which is a specific resource and content type. It also explicitly says 'Not a speech transcript', helping distinguish it from the many *_transcript sibling tools. However, it does not explicitly differentiate from reddit_post_details or reddit_post_comments.

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

Usage Guidelines3/5

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

Usage is implied: use when you want a Reddit post's written text, not when you need a speech transcript. The phrase 'Not a speech transcript' provides an exclusion but no explicit alternative tool names or conditions such as 'use reddit_post_details for metadata' are given.

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

reddit_subreddit_detailsAInspect

Subreddit card — id (t5_…), members, activeUsers, rules[], ISO createdAt, nsfw/type. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSubreddit URL, r/name, or bare name (case-insensitive), e.g. r/technology or AskReddit. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/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 discloses meaningful behavior: flat 1-credit pricing, no charge for empty results or failures, and a cache=true option that produces free 24h-cache hits with an always-fresh default. This goes well beyond a typical one-liner by explaining the cost model and failure-charging policy. It omits auth and rate limits, but those are minor for a read-style card endpoint.

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

Conciseness3/5

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

The payload list is front-loaded and each clause is short, but 'Flat 1 credit. Costs 1 credit.' is a redundant pair that wastes an entire sentence. Beyond that duplication, every other part earns its place and the structure is scannable.

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

Completeness4/5

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

For a 2-parameter tool with no output schema and no annotations, the description covers the returned fields, the pricing and no-charge-on-failure policy, and the caching escape hatch — leaving little an agent must guess. The schema fills in all parameter semantics, and missing items like auth or rate limits are secondary for a low-complexity read endpoint.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already documents accepted url formats and the cache boolean with solid examples. The description adds value beyond the schema by linking cache=true to a 0-credit outcome and stating the default always-fresh behavior, which directly affects how an agent should set the parameter. This complements rather than repeats the schema.

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

Purpose5/5

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

The description names the resource (subreddit) and the exact payload (id t5_…, members, activeUsers, rules[], ISO createdAt, nsfw/type), framing the operation as a 'card' retrieval. This clearly differentiates it from siblings like reddit_subreddit_posts and reddit_subreddit_search, which fetch posts or search results rather than profile metadata. The lack of an explicit verb is mitigated by 'card' plus the concrete field list.

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

Usage Guidelines3/5

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

The field list implies this tool is for subreddit metadata rather than posts or transcripts, but no sibling is named and no explicit when-to-use or when-not-to-use condition is stated. The schema's url parameter adds a cross-platform exclusion, yet the description itself offers no routing guidance among the several reddit_* siblings. Usage context is implied rather than stated.

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

reddit_subreddit_postsAInspect

List posts from a subreddit with sort, timeframe, and cursor pagination — title, score, upvote ratio, flair, and more. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSubreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
sortNoFeed sort: best, hot, new (default), top, or rising.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 200). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.
timeframeNoFor sort=top: hour, day (default), week, month, year, or all.

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral burden, and it does disclose meaningful traits: the 2-credit cost, the no-charge policy for empty results/failures, and the cache semantics. However, most of the cost and cache behavior is already present in the schema's parameter descriptions (limit says 'Flat 2 credits per call'; cache says '0 credits on hit'), so the only genuinely novel disclosure is 'Empty results and failures are never charged.' No rate-limit, auth, or data-freshness caveats are covered.

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

Conciseness5/5

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

Three tight sentences: the core capability is front-loaded, followed by cost and cache policy. Every sentence earns its place; there is no filler, repetition of the tool name, or abstract marketing language.

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

Completeness4/5

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

For a 6-parameter tool with 100% schema coverage and no output schema, the combination of description and schema is fairly complete: the description covers cost, failure-charge policy, cache behavior, and a sample of the return fields, while the schema covers all parameter semantics and the cross-platform URL constraint. Gaps are minor — no rate-limit or auth disclosure and no explicit differentiation from reddit_search — but nothing essential for correctly invoking the tool 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 is 3 — every parameter (url, sort, cache, limit, cursor, timeframe) already has a rich schema description including defaults and constraints. The description only echoes 'sort, timeframe, and cursor pagination' and hints at return fields, adding minimal parameter meaning beyond the schema.

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

Purpose4/5

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

The description states a clear verb+resource ('List posts from a subreddit') and adds specific scope details: sort, timeframe, cursor pagination, and the returned fields (title, score, upvote ratio, flair). It is readily distinguishable from siblings like reddit_subreddit_details or reddit_post_comments, though it does not explicitly name any sibling to disambiguate against (e.g., reddit_search), so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage context is implied by the purpose statement — if you want a subreddit's post feed with sorting/pagination, this is the tool — but there is no explicit when-to-use guidance or naming of alternatives such as reddit_search (for finding posts by query) or reddit_post_details (for a single post). The operational notes (credits, cache) are useful, but they don't route the agent among the many reddit siblings.

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

rumble_channel_videosAInspect

Rumble channel uploads — lean streams[{url,type}]; call video-details for rendition meta. Costs ~12 credits (0.6/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesRumble channel URL, e.g. https://rumble.com/c/name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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). Billed per result.

TDQS

A4.2/5.0
Behavior5/5

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

With no annotations provided, the description carries the full disclosure burden and meets it thoroughly: it reveals cost (~12 credits, 0.6/result), that empty results and failures are never charged, and the caching behavior (free 24h hit, default always fresh). This is precisely the behavioral context beyond the schema that an agent needs for billing-aware invocation and retry decisions.

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?

Three sentences, each earning its place: purpose plus alternative routing, cost model, and cache/failure policy. The 'lean streams[{url,type}]' shorthand is efficient but mildly cryptic for an agent, which keeps this from a 5.

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

Completeness4/5

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

For a 3-parameter tool with no output schema and no annotations, the description compensates strongly by stating the return shape (url, type), cost, failure billing policy, and cache behavior — everything needed to call it correctly. Minor unspecified details such as pagination, sort order, and the explicit response array wrapper prevent a higher score.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, and the description adds value on top: it ties the limit parameter to per-result billing (0.6/result) and the cache parameter to a free hit, which directly informs how an agent selects values. It correctly leaves URL-format and default semantics to the schema rather than repeating them.

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

Purpose4/5

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

The description identifies the resource ('Rumble channel uploads') and the lean output shape ('streams[{url,type}]'), which conveys that this tool lists a channel's uploads in minimal form. It distinguishes itself from the sibling rumble_video_details by explicitly directing rendition-metadata needs elsewhere. It stops short of a 5 because the verb is only implicit and the 'lean streams[{url,type}]' notation is terse.

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

Usage Guidelines4/5

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

The description explicitly names the alternative ('call video-details') and the condition for choosing it ('for rendition meta'), establishing a clear lean-vs-detailed split. It doesn't state comprehensive when-to-use/when-not-to-use criteria, but the context and cost contrast give an agent enough to route correctly.

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

rumble_commentsAInspect

Rumble top-level comments — publishedAt ISO-8601 UTC from title= on the comment time link. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesRumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does disclose important behavioral details: 2-credit cost, no charge on empty results/failures, 24h cache semantics, and the ISO-8601 publishedAt source. It does not cover rate limits or auth, but those are minor for this read-only comments fetch.

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

Conciseness5/5

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

The definition is two sentences with no filler. Core scope is front-loaded, followed by compact billing and caching guidance — every clause earns its place.

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

Completeness4/5

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

For a simple 3-parameter read tool with no output schema and no annotations, it covers platform, comment scope, pricing, failure policy, and cache behavior. Response shape and pagination are not described, but the expected output is reasonably inferable from 'comments'.

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?

The input schema already provides 100% parameter descriptions, including cache expiration, default freshness, and flat credit cost. The description repeats this information without adding new parameter-level meaning, so the baseline score of 3 applies.

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

Purpose4/5

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

The description names a specific resource ('Rumble top-level comments') and distinguishes itself from reply/transcript/details tools through the 'top-level' qualifier. It lacks an explicit verb like 'retrieves' but the intent is unambiguous.

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

Usage Guidelines3/5

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

The platform and comment scope are clear, and cache/credit usage is explained. However, it does not explicitly say when to choose this over related Rumble tools such as rumble_video_details or rumble_video_transcript, and no alternatives or exclusions are mentioned.

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

rumble_video_detailsAInspect

Rumble video metadata — uniform streams[] with rendition meta, captions[], audioStreams. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesRumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.2/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 burden of behavioral disclosure and does so well: it states the 1-credit cost, that empty results and failures are not charged, and that cache=true provides a free 24h hit while default is always fresh. This goes beyond the schema and gives the agent actionable operational knowledge, though it does not cover rate limits or error formats.

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

Conciseness5/5

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

The description is three tight sentences with no filler. Each sentence contributes distinct value: output shape, pricing/charge policy, and cache behavior. The core purpose is front-loaded, and all content is relevant.

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

Completeness4/5

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

Given the tool's low complexity (2 params, no output schema, no annotations), the description covers the essentials: what it returns, cost, failure behavior, and cache semantics. It could be more complete by explicitly pointing to rumble_video_transcript as the alternative for transcript text, but it is sufficient for an agent to invoke correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds value by clarifying the cache parameter's behavior — free 24h hit and default freshness — which augments the schema's more generic boolean description. The URL parameter is already thoroughly documented in the schema, including platform-matching constraints.

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

Purpose5/5

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

The description clearly identifies the resource as 'Rumble video metadata' and specifies the key output components (streams[], captions[], audioStreams), making the tool's function unmistakable. It also distinguishes itself from sibling tools like rumble_video_transcript and rumble_search by focusing on metadata rather than transcripts or search results.

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

Usage Guidelines3/5

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

The description implies usage when metadata is needed rather than transcripts or search, and it gives explicit usage guidance for the cache parameter ('Pass cache=true for a free 24h cache hit'). However, it never names alternative tools or states when not to use this tool, leaving the decision to inference.

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

rumble_video_transcriptAInspect

Rumble published captions as timed segments — parses the .vtt from video-details (not speech-to-text). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesRumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden of disclosure. It meaningfully reveals credit costs, that empty results and failures are not charged, and the cache behavior — none of which appears in structured metadata. It does not describe auth prerequisites or rate limits, but the cost and cache details are valuable behavioral context.

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

Conciseness5/5

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

The description is compact and front-loaded: it states the core function first, then cost, failure charging, and cache behavior. Every sentence contributes useful information and there is no redundant or filler content.

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

Completeness4/5

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

Given the tool has no annotations and no output schema, the description provides the essential usage constraints: source of captions, non-speech-to-text nature, credit cost, failure/empty handling, and cache semantics. It could include a bit more about the returned data shape, but 'timed segments' and the schema's URL guidance make the tool callable without major gaps.

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?

The schema already describes all three parameters with 100% coverage, so the baseline is 3. The description adds value by clarifying the cache parameter's credit implications and default freshness, but does not add much beyond the schema's own description of language or URL behavior.

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

Purpose5/5

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

The description states a specific verb and resource: it parses Rumble published captions as timed segments from the .vtt file in video-details. It also distinguishes itself from speech-to-text approaches, making the tool's scope clear among many transcript-related siblings.

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

Usage Guidelines4/5

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

The description gives clear context that this tool handles Rumble's published caption files, not speech-to-text, which tells an agent when it is appropriate. It does not name a sibling alternative explicitly, but the platform-specific and source-specific context is strong enough to select it correctly.

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

snapchat_user_profileAInspect

Snapchat profile — stable identity card, millisecond timestamps, mediaType image/video (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSnapchat username or profile URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations are absent, so the description carries the burden, and it delivers meaningful details: cost of 1 credit, no charges on empty results/failures, and cache behavior. It discloses failure cost, freshness behavior, and output nature, though it does not address auth or rate limits.

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?

The description is short and front-loaded with output characteristics, then cost, then caching. The only minor issue is slight redundancy: '(1 credit)' and 'Costs 1 credit' state the same information twice.

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

Completeness4/5

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

Given only two parameters, one required, and no output schema, the description covers the essential invocation context: what kind of data is returned, cost implications, and cache behavior. It is sufficiently complete for an agent to select and call the tool correctly, though a bit more detail on the response shape would help.

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 is 3. The description does not add material semantics beyond the schema: cache=true and default fresh behavior are already documented in the schema, and the URL parameter is fully explained there. It does not clarify parameter semantics further.

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

Purpose4/5

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

The description clearly identifies the resource as a Snapchat profile and specifies what it returns: a stable identity card, millisecond timestamps, and media type image/video. While it lacks an explicit verb like 'fetch' or 'get', the meaning is unambiguous and the platform distinction separates it from sibling profile tools.

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

Usage Guidelines3/5

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

The description implies usage for Snapchat profiles through the tool name and first phrase, but it does not explicitly state when to use this tool versus alternatives or mention exclusions. It offers practical advice about cache=true and cost, but no direct comparison to other profile tools.

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

soundcloud_artistBInspect

SoundCloud artist — handle + name, subscriptionTier, externalLinks, verified (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

B3.4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. It clearly states the 1-credit cost, that empty results and failures are never charged, and the cache behavior. This is useful non-obvious information, though it omits any mention of rate limits or response pagination.

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

Conciseness3/5

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

The description is short and front-loaded with the resource and returned fields. However, it is redundant: '(1 credit)' appears twice, once parenthetically and again in 'Costs 1 credit', and 'SoundCloud artist' repeats the tool name.

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

Completeness4/5

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

For a low-complexity read tool with no output schema, the description covers the returned fields, credit cost, failure-charging behavior, and cache option. It does not specify the exact response envelope, but the field list plus the thorough input schema give an agent enough to call it correctly.

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?

The input schema has 100% coverage for all three parameters, so the schema already documents url, cache, and cacheMaxAge. The description adds a small semantic hint with 'free 24h cache hit', but it does not meaningfully enrich the parameters beyond what the schema states.

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

Purpose4/5

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

The description identifies the resource as 'SoundCloud artist' and enumerates the returned fields ('handle + name, subscriptionTier, externalLinks, verified'), making the tool's purpose inferable. It does not use an explicit verb like 'get' or 'fetch', and the opening phrase overlaps with the tool name, so it is not a 5.

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?

There is no guidance on when to choose soundcloud_artist versus the closely related siblings soundcloud_artist_tracks or soundcloud_track. The only conditional advice is about cache=true yielding a free 24h cache hit, which is operational guidance rather than tool-selection guidance.

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

soundcloud_artist_tracksAInspect

Artist track list — opaque cursor, native-window when the api-v2 page ends (2 credits; empty is 0). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 100). Flat 2 credits per call.
cursorNoOpaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not edit or invent values.

TDQS

A3.6/5.0
Behavior4/5

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

No annotations exist, so the description carries the burden, and it does disclose useful behavior: the 2-credit cost, free on empty results/failures, cache behavior with cache=true, and the opaque-cursor/native-window pagination note. It does not cover output shape or error details, but for a read/list tool this is a solid level of disclosure.

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

Conciseness3/5

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

The description is short and front-loaded, but it is somewhat cryptic and redundant. Phrases like 'native-window when the api-v2 page ends' are unexplained jargon, and 'Costs 2 credits' repeats the earlier credit information without adding much value.

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

Completeness4/5

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

For a list tool with well-documented parameters and no output schema, the description covers the essential operational concerns: cost, caching, pagination, and failure charging. It lacks a plain statement of what fields the returned tracks will contain, but the tool name and 'track list' phrase make the primary purpose unambiguous.

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 schema already documents all four parameters (url, cache, limit, cursor). The description adds a bit of context around caching and cursor opacity, but it largely repeats or restates what the parameter descriptions already provide.

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

Purpose4/5

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

The description clearly identifies the resource ('artist track list') and the action (retrieve/list), and the name 'soundcloud_artist_tracks' reinforces this. It does not explicitly differentiate from siblings like soundcloud_artist or soundcloud_track, but the phrase makes the tool's scope reasonably clear.

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

Usage Guidelines3/5

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

Usage context is implied rather than explicit: the name and 'Artist track list' suggest this is for getting a SoundCloud artist's tracks, as opposed to artist profile details or a single track. There is no explicit when-to-use guidance or mention of alternatives such as soundcloud_artist or soundcloud_track.

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

soundcloud_trackAInspect

SoundCloud track — plays/likes/license, tags[], nested artist{}, streamUrl when streamable (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSoundCloud track URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.5/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 it delivers: it discloses the 1-credit cost, that empty results and failures are never charged, and the cache semantics (default fresh, cache=true gives a free 24h hit). The conditional 'streamUrl when streamable' also tells the agent the output is shape-dependent. It stops short of covering rate limits or auth, but billing and caching are the most decision-relevant traits.

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?

Two compact sentences that front-load the data fields, then cover billing and caching. The payload shorthand (plays/likes/license, tags[], nested artist{}) is efficient. Minor redundancy: '(1 credit)' is immediately restated as 'Costs 1 credit'.

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

Completeness4/5

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

For a single-resource fetch tool with three fully documented parameters and no output schema, the description covers the essentials: what data comes back, cost, failure charging, and cache control. It is complete enough for an agent to call it correctly. The absence of error-format or rate-limit detail is a minor gap given the billing and cache coverage.

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 is 3. The schema already thoroughly documents url (including the cross-platform prohibition), cache, and cacheMaxAge TTL values. The description adds only the 24h specificity for cache=true and the fact that the hit is free, which is marginal value over the schema.

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

Purpose4/5

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

The description identifies a specific resource (SoundCloud track) and enumerates the returned payload: plays/likes/license, tags[], nested artist{}, and conditional streamUrl. This makes the tool's scope clear and distinguishes it from siblings like soundcloud_artist and soundcloud_artist_tracks, though it never explicitly names those alternatives.

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 choose this tool over alternatives. It does not say 'use this for track-level data, use soundcloud_artist for artist profiles' or contrast with spotify_track. The cache and billing notes describe how to invoke, but the description provides no tool-selection context in a large sibling list.

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

spotify_albumAInspect

Spotify album — tracks[] with playCount, joinable artists[], releaseDate, explicit (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoInclude the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape.
urlYesSpotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.5/5.0
Behavior4/5

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

Because no annotations are provided, the description carries the burden of behavioral disclosure. It reveals the 1-credit cost, the fact that empty results and failures are never charged, and the default fresh fetch versus free cache-hit behavior — all beyond the schema. It does not mention auth, rate limits, or detailed error semantics, but the most operationally relevant behavior is covered.

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?

The description is concise and front-loaded, starting with the resource and return fields, then cost and cache policy in a compact second sentence. The parenthetical "(1 credit)" right before "Costs 1 credit." is slightly redundant or ambiguous, so it is not perfectly clean, but there is almost no filler.

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

Completeness4/5

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

With no output schema and no annotations, the description provides essential calling context: the main return fields, the credit cost, and the free-cache and no-charge-on-failure behaviors. It could add a sibling comparison or a fuller return-shape description, but for a straightforward fetch tool with a complete input schema, the core context is covered.

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?

All three parameters — url, raw, and cache — are already described in the schema, which has 100% coverage. The description mostly restates the well-documented cache behavior and adds no new meaning for url or raw. The schema does the heavy lifting, so the baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly identifies the tool as a Spotify album lookup and lists the normalized fields it returns, including tracks[], playCount, joinable artists[], releaseDate, and explicit. It distinguishes itself from sibling Spotify tools by naming the album resource, though it lacks an explicit verb such as "fetch" or "get" and does not name alternatives.

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?

The description gives operational guidance for caching — pass cache=true for a free 24h hit — but no guidance on when to use this tool versus spotify_track, spotify_artist, or spotify_search. An agent must infer usage from the tool name alone; there are no exclusions, alternatives, or conditions for selection.

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

spotify_artistAInspect

Spotify artist — followers, monthlyListeners, worldRank, topCities, topTracks with playCount, concerts, and related artists (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoInclude the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape (~80% of the old response body).
urlYesSpotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/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 behavioral burden and does real work: it discloses the 1-credit cost, guarantees that empty results and failures are never charged, and explains the cache-strue free 24h hit with a default of always fresh. These are exactly the operational behaviors an agent needs to decide whether to call the tool, though it does not cover error-shape or upstream-unavailable behavior.

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?

The description is front-loaded with the field list and stays compact at roughly 60 words, with the cache guidance earning its place. The main flaw is redundancy: the 1-credit cost is stated twice, once parenthetically '(1 credit)' and once as its own sentence 'Costs 1 credit.'

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

Completeness4/5

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

Although no output schema exists, the description enumerates the expected return fields, giving the agent a concrete picture of the result shape. Given the low complexity (3 params, 1 required) and complete 100% schema coverage plus the disclosed cost/cache/failure policies, little is missing — only field types and error-response structure go unspecified.

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% and the schema itself is detailed: raw explains its purpose and when to omit it, url explains accepted formats plus the cross-platform warning, and cache covers defaults and costing. The description only restates the cache behavior ('free 24h cache hit'), adding no new parameter meaning, so the baseline 3 for full-coverage schemas applies.

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

Purpose4/5

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

The description names the exact resource ('Spotify artist') and enumerates the concrete fields returned: followers, monthlyListeners, worldRank, topCities, topTracks with playCount, concerts, and related artists. This differentiates it from the Spotify siblings (spotify_track, spotify_album, spotify_podcast) at a glance, but the verb is implicit — it never states 'get' or 'fetch' — so it stops just short of a fully explicit purpose statement.

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

Usage Guidelines3/5

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

Usage context is implied by the resource type and field list: an agent needing monthlyListeners or worldRank for a Spotify artist would naturally route here. However, no explicit 'use when' condition, exclusion, or alternative is named, so the agent gets no help deciding between this and spotify_track, spotify_album, or the platform-mislatched URL cases beyond what the schema's url parameter warns about.

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

spotify_podcastAInspect

Spotify podcast show — publisher, rating, topics, explicit flag, and totalEpisodes as clean JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSpotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.8/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 behavioral burden and does meaningful work: it discloses the 1-credit cost, states that empty results and failures are never charged, and explains the cache=true behavior (free 24h hit) versus the default always-fresh fetch. This is genuinely useful operational context beyond what the schema states. It does not mention rate limits or failure conditions, but for a simple read-only fetch tool the disclosed cost/caching behavior is strong.

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

Conciseness5/5

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

The description is three compact sentences with zero waste: purpose, cost/charging policy, and cache behavior. The core purpose is front-loaded in the first sentence, and each subsequent sentence carries distinct operational information. Every sentence earns its place.

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

Completeness4/5

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

For a 2-parameter tool with no output schema, the description compensates well by enumerating the returned fields, substituting for the missing output schema, and by covering cost and caching semantics. The main gap is the absence of any differentiation from the sibling spotify_podcast_episodes tool, which an agent could easily confuse with this one.

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 schema fully documents both `url` (with format, example, and a negative constraint) and `cache` (with credit semantics and default). The description's cache=true note largely restates what the schema already says, adding marginal value. Baseline 3 is appropriate since the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly identifies the resource (Spotify podcast show) and enumerates the specific output fields (publisher, rating, topics, explicit flag, totalEpisodes) delivered as clean JSON, which makes the tool's function unambiguous. It lacks an explicit verb like 'get' or 'fetch', though 'as clean JSON' strongly implies retrieval. Differentiation from siblings is implicit via the show-level field list rather than explicit naming.

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

Usage Guidelines3/5

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

The field list implies the tool is for retrieving podcast show metadata, but the description gives no explicit when-to-use guidance or exclusions relative to closely related siblings like spotify_podcast_episodes or spotify_search. The 'Not an artist URL' constraint exists in the schema but not in the description, so the usage context is implied rather than stated.

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

spotify_podcast_episodesAInspect

Podcast episode archive — previewUrl, releaseDate, explicit, cursor pagination (flat 2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoInclude slimmed per-episode upstream payload as episodes[].raw. Default false. visualIdentity / playedState / podcastV2 are never included.
urlYesSpotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL.
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 50). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.9/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the flat 2-credit cost, that empty results and failures are never charged, that cache=true gives a free 24h cache hit while the default is always fresh, and that cursor pagination is used. These are non-obvious, decision-relevant behaviors an agent would not otherwise know.

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?

The description is short and front-loaded with the purpose and key fields, followed by cost, caching, and failure behavior. There is minor redundancy in saying 'flat 2 credits' and then 'Costs 2 credits' within consecutive clauses, but overall every sentence earns its place.

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

Completeness4/5

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

Given there is no output schema, the description usefully names the returned episode fields and indicates cursor pagination, while the schema covers URL formats and parameter defaults. It could have described response envelopedetails or episode ordering, but an agent has enough to select and invoke the tool correctly.

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 parameters are already well documented. The description reinforces cursor pagination, flat pricing, and cache behavior, but it does not add substantial meaning beyond what the schema already provides for each parameter.

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

Purpose4/5

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

The description identifies the tool as a podcast episode archive and lists key returned fields (previewUrl, releaseDate, explicit), which makes its purpose clear and distinguishes it from sibling tools like spotify_podcast. It lacks an explicit imperative verb like 'fetch' or 'list,' but the resource and field list leave little ambiguity.

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

Usage Guidelines3/5

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

The description provides useful operational context such as cost, caching, and pagination, but it never explicitly states when to use this tool versus alternatives like spotify_podcast, spotify_album, or spotify_search. Usage is implied by the name and 'episode archive' phrasing rather than prescribed.

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

spotify_trackAInspect

Spotify track — playCount, joinable artists[]/album{}, explicit, releaseDate (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoInclude the upstream GraphQL payload as data.raw. Default false — getTrack embeds bulky artist discography.
urlYesSpotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.5/5.0
Behavior4/5

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

With no annotations, the description carries the burden of behavioral disclosure and does meaningfully disclose the 1-credit cost, the no-charge policy for empty results and failures, and the cache behavior with default always-fresh versus a free 24h cache hit. It does not cover auth, rate limits, or error response shapes, but for a simple single-resource fetch this is solid context beyond the schema.

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?

The description is short and front-loaded with the primary output fields and cost. It loses a point for redundancy: the credit cost is stated twice ('(1 credit)' and 'Costs 1 credit'), and the cache behavior repeats the schema description.

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

Completeness4/5

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

For a tool with only three params, a fully self-documenting schema, and no output schema, the description covers the key return fields, credit cost, failure billing, and cache semantics. A fuller statement of the return shape would improve completeness, but the existing text plus schema is adequate for an agent to call it correctly.

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%, and each parameter already has a clear explanation. The main description adds some cost and caching context, but largely restates what the schema already documents for cache and url, so it does not materially extend parameter semantics.

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

Purpose4/5

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

The description identifies the resource (Spotify track) and the key fields returned (playCount, joinable artists, album, explicit, releaseDate), which distinguishes it from sibling tools like spotify_album, spotify_artist, and spotify_search. However, it is a noun phrase rather than an explicit verb+resource statement like 'Retrieve...' and relies partly on the tool name for the action.

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?

There is no guidance on when to use spotify_track versus alternatives such as spotify_album, spotify_artist, or spotify_search. The only nearby usage constraint is the schema-level warning about not passing cross-platform URLs, which is a validity check rather than tool-selection guidance.

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

threads_post_detailsBInspect

Threads post — engagement (views when exposed), comments[], relatedPosts[], threadId/isReply. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThreads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it does well by disclosing cost behavior (flat 1 credit, failures/empty results not charged), caching semantics (cache=true for free 24h hit, default fresh), and a nuance about engagement ('views when exposed'). It does not mention rate limits or auth, but for a read-only post details tool these are less critical.

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

Conciseness3/5

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

The description is compact and front-loaded with the most important payload information. However, 'Flat 1 credit. Costs 1 credit.' is redundant—both clauses convey the same pricing fact—so not every sentence earns its place.

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

Completeness4/5

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

For a simple two-parameter, no-output-schema endpoint, the description covers the key return fields, pricing, caching, and failure-cost policy. The main gap is that 'views when exposed' is slightly ambiguous and the field list is not exhaustive, but the agent has enough to call the tool and interpret typical results.

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%, with both 'url' and 'cache' already documented. The description mostly restates the cache behavior already in the schema, adding no new parameter-level meaning, so the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description identifies the resource as a Threads post and lists the exact data returned (engagement, comments[], relatedPosts[], threadId/isReply), making it clear this is the post-details endpoint. It lacks an explicit action verb like 'retrieve' or 'get', and does not explicitly contrast with sibling tools like threads_user_posts or threads_search, but the payload list is specific enough to distinguish it.

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?

The description provides no guidance on when to use this tool versus alternatives such as threads_user_posts or threads_profile, nor any exclusions. It only explains caching and pricing behavior, which is operational guidance, not tool-selection guidance.

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

threads_profileAInspect

Threads profile — displayName, private/isPrivate, bioLinks (Meta verified), isThreadsOnlyUser, transparencyLabel, bioFragments, HD avatars (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThreads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations provided, the description must carry the behavioral disclosure burden, and it does so well. It discloses the cost of 1 credit, that empty results and failures are never charged, and that cache=true provides a free 24-hour hit while the default is always fresh. This gives the agent a clear picture of side effects and resource usage beyond the schema. It does not mention rate limits or authentication, but the most relevant behavioral traits are covered.

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?

The description is compact and front-loaded with the tool's purpose and key returned fields. It packs cost, failure policy, and cache behavior into a short text. Minor redundancy exists between "HD avatars (1 credit)" and "Costs 1 credit," but overall every sentence earns its place.

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

Completeness4/5

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

Given there is no output schema, the description compensates by listing the main response fields, which helps the agent know what to expect. It also covers cost, cache, and failure handling. It does not fully describe response shape or error cases, but for a simple profile-lookup tool with only two well-documented parameters, the description is reasonably complete.

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 is 3 because the schema already documents both parameters thoroughly. The description does not add semantic value for the url parameter beyond what the schema says, and the cache explanation in the description largely duplicates the schema's cache description. No credit is lost, but no additional parameter insight is provided either.

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

Purpose4/5

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

The description clearly identifies the tool as a Threads profile fetch and enumerates the specific fields returned (displayName, privacy, bioLinks, avatars). It does not use an explicit verb like "fetch" or "get," but the resource and output are unmistakable. It differentiates from sibling tools like threads_user_posts or threads_search because it targets a single profile rather than posts or search results.

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

Usage Guidelines3/5

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

The description provides practical usage details such as credit cost, no charge on empty/failed results, and cache behavior. It also implicitly tells users when to use this tool: when they need a single Threads profile's metadata. However, it does not explicitly contrast it with alternatives like threads_search_users or threads_user_posts, nor does it state exclusions or when not to use it.

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

threads_search_usersAInspect

Threads user discovery from keyword search — id, handle, avatar, verified. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesKeyword to find Threads users / creators (min 2 characters).
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 100). Flat 1 credit per call.

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does a solid job: it discloses the flat credit cost, that empty results and failures are never charged, and the cache=true behavior with a 24h window and default fresh fetch. This goes beyond simple operation descriptions and gives the agent useful cost/retry expectations, though it does not cover rate limits or error formats.

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?

The description is compact and front-loaded with the core purpose before behavior details. However, 'Flat 1 credit. Costs 1 credit.' is redundant, which prevents a perfect score for zero-waste structure.

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

Completeness4/5

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

For a simple three-parameter tool with no output schema, the description gives enough context: purpose, output fields, pricing, failure charging, and cache semantics. It does not explain the limit parameter's default/max, but the schema covers that, so the omission is acceptable.

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 coverage is 100%, so the baseline is 3. The description does not add meaning beyond what the schema already documents for q, cache, or limit; it references cache behavior but repeats the schema's own description. No additional parameter guidance is provided.

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

Purpose5/5

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

The description states a precise verb and resource: 'Threads user discovery from keyword search'. It also enumerates the returned fields (id, handle, avatar, verified), which makes the tool's purpose unmistakable and distinguishes it from sibling tools like threads_search or threads_profile.

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

Usage Guidelines4/5

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

The description clearly frames the tool as the one for discovering Threads users via keyword search, giving an agent clear context for when to pick it. It does not explicitly name alternatives or exclusions, but the purpose phrasing alone is enough to route correctly among many search siblings.

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

threads_user_postsAInspect

Recent Threads posts — engagement{views,likes,replies,reposts,quotes}, threadId/isReply. Flat 2 credits. source + stages/ms. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThreads profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 100). Threads exposes only a short window of recent public posts on this surface. limit caps what you receive; it cannot increase what Threads returns. Flat 2 credits on every successful path (native and extended).

TDQS

A3.6/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 does well by disclosing the credit cost, the free cache-hit path, the no-charge behavior for empty results and failures, and the always-fresh default. It also reveals result contents and the platform-matching constraint. It does not explicitly state that the operation is read-only or discuss rate limits, but the nature of the tool and the disclosed cost/cache behavior provide substantial transparency.

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

Conciseness3/5

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

The description is compact and front-loads the core resource and fields, but it contains redundancy: 'Flat 2 credits' appears twice, and 'Costs 2 credits' repeats the same information. The fragment 'source + stages/ms' is cryptic and could be clearer. Worthy information is present, but the duplicate pricing statement is unnecessary.

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

Completeness4/5

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

There is no output schema, so the description must communicate enough about the return value, and it does by listing engagement fields and thread metadata. It also covers pricing, cache behavior, failure charging, and platform restrictions. The main gap is that 'source + stages/ms' is undefined, and there is no mention of pagination beyond the limit parameter, but overall the description is adequate for invoking the tool correctly.

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?

The input schema has 100% parameter coverage, so the baseline is 3. The description adds no significant parameter meaning beyond the schema: the cache behavior and limit caveat are already fully documented in the schema property descriptions. The description's credit and result-field notes are valuable but not parameter-specific.

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

Purpose4/5

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

The description identifies the resource as 'Recent Threads posts' and lists the key returned fields (engagement metrics, threadId/isReply), which makes the tool's purpose clear. It lacks an explicit verb like 'list' or 'fetch' and does not directly say 'for a profile,' though the required url parameter clarifies that the target is a Threads profile or @handle. It is sufficiently distinct from siblings like threads_post_details, which targets a single post.

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

Usage Guidelines3/5

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

The description gives useful operational guidance, such as passing cache=true for a free cache hit, the flat credit cost, and the fact that limit cannot increase what Threads returns. However, it does not explicitly state when to choose this tool over alternatives like threads_post_details, threads_profile, or threads_search. Usage context is implied rather than stated with clear when-to-use or when-not-to-use conditions.

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

tiktok_ad_library_ad_detailsAInspect

One TikTok Commercial Content Library ad by ID — calendar-day dates, always 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok Ad Library URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
countryNoTwo-letter ISO country code. Default GB.

TDQS

A4/5.0
Behavior5/5

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

With no annotations provided, the description carries full behavioral disclosure responsibility. It clearly states credit costs, free empty/failure results, and cache behavior, giving the agent accurate expectations about side effects and resource usage.

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

Conciseness3/5

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

The description is short and front-loaded with purpose, but it redundantly states the 2-credit cost twice ('always 2 credits' and 'Costs 2 credits'). The extra sentence could be merged without losing meaning.

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

Completeness4/5

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

For a simple one-record fetch with three well-documented parameters, the description plus schema provides enough context to call the tool correctly. The main gap is the lack of detail about what fields the returned ad details contain, but the tool name and 'details' framing partially cover this.

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?

The input schema already documents all three parameters with 100% coverage, including URL platform constraints, cache behavior, and country default. The description adds little beyond what the schema already states, so the baseline 3 applies.

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

Purpose5/5

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

The description clearly states the tool retrieves a single TikTok Commercial Content Library ad by ID, which is a specific verb-plus-resource statement. It distinguishes itself from tiktok_ad_library_search and top_ads by emphasizing 'One ... ad by ID'.

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

Usage Guidelines3/5

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

The description implies usage when the user has a specific ad ID or URL, but it does not explicitly direct the agent to use search tools to find IDs first, nor does it name alternatives. The cross-platform URL warning is a constraint, not a routing guideline.

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

tiktok_ad_library_top_adsAInspect

TikTok Creative Center Top Ads — one ~20-row leaderboard page, not a library search (flat 2 / ~1 Apify). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoOptional keyword that filters the one ~20-row leaderboard page — not a library search. Case-insensitive whole-word match on title/brandName/industry/objective (hair ≠ wheelchair). There is no tags field. advertiser.name is often null in the default US market. Envelope candidatesScanned is the pre-filter pool size. For a known advertiser, use /tiktok/ad-details by ad id.
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 20). One Creative Center leaderboard page is ~20 rows; limit only trims that pool — it cannot scan more candidates. Flat 2 credits on Decodo-native; Apify ~1 credit per returned ad (min 2).
matchNoKeyword token mode: "any" (default, OR) or "all" (AND). Zero whole-word hits still return TikTok's keyword-ranked page as matchBasis=ranked (literalMatches=0).
periodNoLookback window in days: 7, 30, or 180. Default 30.
countryNoTwo-letter ISO country code. Default US.
orderByNoSort: for_you, likes, ctr, impressions, or cost. Default for_you.
adFormatNoOptional format filter: spark or non_spark.
industryNoOptional industry key or label from Creative Center.
objectiveNoOptional campaign objective (e.g. Traffic, Conversion, Reach).

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description carries the full disclosure burden and exceeds it: flat pricing (2 credits / ~1 Apify per ad), 'Empty results and failures are never charged', 24h cache semantics with free hits, the fact that limit only trims a fixed ~20-row pool and cannot scan more, and edge cases (zero whole-word hits still return ranked results; advertiser.name often null). This is unusually rich behavioral disclosure for a tool with zero annotation coverage.

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

Conciseness5/5

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

The main description is four sentences, each earning its place: identity + scope, flat cost, billing-on-failure safety, and cache behavior. It is front-loaded with the core resource identity before the cost detail. Schema descriptions are similarly tight despite covering ten parameters.

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

Completeness4/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 annotations and no output schema, the definition covers a great deal: pricing, failure billing, cache behavior, edge-case ranked results, null advertiser.name, and even envelope fields (candidatesScanned, matchBasis, literalMatches). The only real gap is that the row-level structure of the returned leaderboard is never systematically described — an agent infers fields (title, brandName, industry, objective) only from the q filter docs.

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%, with all 10 parameters richly documented (q's match semantics, cache behavior, limit's payout model, match's ranked fallback). The top-level description adds cost/cache framing but that overlaps with the schema's own param descriptions, so per the baseline rule for high coverage, a 3 is correct — the schema does the heavy lifting.

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

Purpose5/5

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

The description names a specific resource ('TikTok Creative Center Top Ads — one ~20-row leaderboard page') and explicitly distinguishes it from a library search ('not a library search'). An agent can immediately tell this apart from siblings like tiktok_ad_library_search and tiktok_ad_library_ad_details without opening the schema.

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

Usage Guidelines4/5

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

The description gives explicit when-not guidance ('not a library search') and the q parameter routes to an explicit alternative ('For a known advertiser, use /tiktok/ad-details by ad id'). The positive when-to-use is implied by the leaderboard framing rather than stated outright, and the cost distinction (flat 2 vs ~1 Apify) helps but doesn't fully articulate when to prefer this over the library search.

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

tiktok_audience_demographicsAInspect

Audience country + language mix for a TikTok creator — engagement sample, not a follower census. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
videosNoHow many recent videos to sample comments from: 12 (default, 3 credits), 30 (5 credits), or 60 (8 credits).
countriesLimitNoMax countries in audienceLocations; remainder folds into other{count,percentage}. Omit for the full list (other is omitted when unused).

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden. It discloses that results are engagement-based and not a follower census, normally cost 3 credits, are not charged on empty results/failures, and support a free 24-hour cache hit via cache=true while defaulting to fresh data. The 'Costs 3 credits' phrasing is slightly oversimplified since videos=30/60 cost more, but the schema clarifies this and the overall disclosure is strong.

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

Conciseness5/5

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

Three sentences with no filler: the first states core purpose and methodology, the second covers pricing and failure billing, and the third explains cache behavior. Information is front-loaded and every sentence earns its place.

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

Completeness4/5

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

The description covers purpose, sampling methodology, cost, failure billing, and caching, which are the key elements for selecting and invoking the tool correctly. A brief mention of the output structure would have been helpful given there is no output schema, but the first sentence and the countriesLimit schema description referencing audienceLocations provide enough high-level context.

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 schema already documents all four parameters and the baseline is 3. The description adds little beyond what the schema already states about cache and cost; it actually provides less precise cost information than the videos parameter's description. No additional meaning is provided for url, videos, or countriesLimit.

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

Purpose4/5

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

The description clearly states the data domain: audience country and language mix for a TikTok creator, with an important scoping detail ('engagement sample, not a follower census'). It does not use an explicit verb like 'retrieves' and does not name sibling tools to differentiate from alternatives such as tiktok_profile_region or tiktok_channel_details, but the resource and resource type are unambiguous.

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

Usage Guidelines3/5

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

The description implies when to use this tool (when you need a TikTok creator's audience country/language mix) and gives practical guidance on cost, non-charging of empty results/failures, and the cache=true free hit. However, it does not explicitly compare to alternative TikTok endpoints or state when not to use this tool, leaving selection vs. siblings to inference.

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

tiktok_channel_detailsAInspect

Resolve a TikTok @handle to id + secUid — createTime, ttSeller, bioLink, decoded privacy flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoSet true to include TikTok's upstream user/statsV2 blob under raw, plus createTimeUnix (unix twin of createTime). Default false — curated fields only.
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A4.2/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 of behavioral disclosure. It does so well by stating the credit cost, the no-charge policy for empty results/failures, the free cache-hit behavior, and the default fresh-fetch behavior. It does not cover rate limits or error response details, but the key operational behaviors are disclosed.

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

Conciseness5/5

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

The description is two tight sentences with no filler. The purpose is front-loaded, and the credit/cache caveats are packed into the second sentence without redundancy. Every clause earns its place.

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

Completeness4/5

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

The description is reasonably complete for a metadata-resolution tool: it names the output fields, input formats, platform-matching constraint, cost model, and caching behavior. There is no output schema, so listing return fields is valuable. It could mention error cases or rate limits, but for this tool's complexity the description covers the essential context.

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 is 3 and the description need not re-explain parameters. It does add marginal value by clarifying that cache=true yields a free 24h hit and by stating the credit implication, which goes slightly beyond the schema's 'default TTL' wording. That is useful but not a substantial parameter-semantic contribution.

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

Purpose5/5

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

The description opens with a specific verb ('Resolve') and a precise resource ('a TikTok @handle to id + secUid'), then lists the returned fields. This clearly distinguishes the tool from siblings like tiktok_channel_posts or tiktok_search_users by framing it as an ID/metadata resolver rather than a content or search tool.

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

Usage Guidelines4/5

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

The description gives clear context for when the tool is appropriate: resolving TikTok handles to IDs and account metadata. It also provides explicit exclusions ('Not a YouTube channel URL', 'Do not pass cross-platform URLs'), which help an agent avoid misuse. It does not name sibling alternatives explicitly, so it misses the top bar for this dimension.

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

tiktok_channel_postsAInspect

Latest videos from a TikTok profile. May return a labelled 6h-stale snapshot (degraded + staleAgeMs) when the live list is blocked. Failures are 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoHow many of the creator's latest videos to return on this page (default 20, max 200). Newest first. Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (TikTok's max_cursor timestamp, e.g. 1783614676000). A null nextCursor means the end of the list.

TDQS

A3.9/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure and does it well. It reveals the possibility of a 6h-stale degraded snapshot, specifies the degraded and staleAgeMs signals, clarifies zero-credit failures and empty results, states the 2-credit cost, and explains the cache behavior. This is rich, practical context that an agent needs to interpret results correctly.

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?

The description is short, front-loaded with the main purpose, and quickly covers the critical operational facts. There is slight redundancy between 'Failures are 0 credits' and 'Empty results and failures are never charged,' but the overall text remains compact and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the most important contextual aspects: what the tool returns, stale-data behavior, pricing, and caching. Since there is no output schema, the description could have explained the response shape a bit more, but the schema already documents pagination via cursor and limit, and the core return value is clear from the name and first sentence.

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 coverage is 100%, so the parameters are already thoroughly documented in the input schema. The description adds no new semantics for url, limit, or cursor beyond what the schema provides, and its cache explanation largely restates the schema's cache parameter description. Baseline 3 is appropriate because the schema handles parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as returning the latest videos from a TikTok profile, which is specific and unambiguous. It does not explicitly distinguish itself from related siblings like tiktok_channel_details or tiktok_video_details, but the purpose is clear enough for an agent to understand the core function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives useful guidance on when to use cache=true for a free hit and warns about stale snapshot behavior, but it does not state when to prefer this tool over alternatives such as tiktok_channel_details or tiktok_video_details. The use case is implied by 'Latest videos from a TikTok profile' rather than explicitly contrasted with siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_comment_repliesAInspect

Replies under a TikTok comment — same authorId/authorSecUid/commentLanguage shape as comments. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value from the previous response.
commentIdYesID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does it well: it discloses the 2-credit cost, that empty/failed calls are not charged, and the cache=true free-hit behavior with fresh-by-default semantics. It also previews the reply field shape, which is material behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact, front-loaded sentences communicate purpose, shape, billing, and cache behavior without filler. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter tool with no output schema and no annotations, the description is quite complete: it covers return shape, cost, failure charging, and cache behavior. It could be slightly more explicit about the full response envelope/pagination metadata, but the schema already documents limit and cursor.

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 coverage is 100%, so the schema fully documents all five parameters. The description only restates the cache behavior in pricing terms and does not add meaning beyond the schema, matching the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource ('Replies under a TikTok comment') and a clear retrieval action, distinguishing itself from sibling comment endpoints like tiktok_comments and youtube_comment_replies. It also ties the reply shape to the comments endpoint, removing ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is clear: this tool is for fetching replies on a TikTok comment, and the 'same shape as comments' phrasing points to the related comments endpoint. It lacks an explicit when-not-to-use statement or named alternative, but the intent is not ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_commentsAInspect

TikTok comments — clean schema plus authorName, stable authorId/authorSecUid and commentLanguage for listening loops. Unresolvable videos are 404 at 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (a numeric offset, e.g. 50). A null nextCursor means the end of the comments.

TDQS

A3.8/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 behavioral burden and does substantial work: it discloses the 2-credit cost, the 404-at-0-credits edge case for unresolvable videos, no-charge on empty/failed results, and the free 24h cache hit with default-fresh behavior. It stops short of covering auth needs or rate limits, but the pricing, failure, and caching semantics are unusually explicit for a description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences front-load the core purpose and pack in output-shape, pricing, failure, and caching semantics without filler. There is minor pricing redundancy ('Costs 2 credits', 'never charged', 'free 24h cache hit'), but each mention adds a distinct nuance, so every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-parameter tool with no annotations and no output schema, the description covers pricing, failure modes, caching behavior, and key response fields, while leaving pagination mechanics to the well-documented schema. It is missing only minor context such as rate limits and authentication expectations, which are likely shared across the account-level sibling tools.

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 is 3; the schema already documents url (with cross-platform warnings), cache, limit, and cursor/nextCursor pagination. The description adds only marginal value by tying cache=true to the free 24h cache hit, which mostly restates what the schema's cache parameter already explains.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the resource ('TikTok comments') and hints at the output shape (authorName, stable authorId/authorSecUid, commentLanguage), making the tool's function unambiguous. It lacks an explicit verb like 'fetch' or 'list' and never names sibling tools such as tiktok_comment_replies, so sibling differentiation relies on inference from the platform and field details rather than explicit statement.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'for listening loops' implies a use case (tracking commenters over time via stable author IDs), and the cache/cost notes signal when the cheap path applies. However, there is no explicit when-to-use guidance, no exclusions, and no mention of alternatives like tiktok_comment_replies or youtube_comments, so an agent must infer when this tool is preferred over siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_liveAInspect

Is this TikTok creator live — isLive/status, creator.id/secUid, room, streamQualities with flv/hls/cmaf/dash. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.6/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 of behavioral disclosure, and it delivers substantive context: the 1-credit cost, the guarantee that empty results and failures are never charged, and the 24h cache semantics with default-fresh behavior. These are genuine operational traits beyond what the schema expresses. It stops short of describing edge-case response behavior, but the core cost and failure profile is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero filler. The core question and response fields lead, followed by cost, failure-charging policy, and caching details. Every clause earns its place, and dense information like pricing and cache behavior is packed efficiently without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with no output schema and no annotations, the description covers the key ground: response field names and formats, credit cost, empty/failure charging, and cache behavior. The main gap is the missing differentiation from tiktok_live_info, which prevents the agent from fully understanding when this endpoint is the right one.

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%, and the schema already documents both parameters thoroughly, including URL format constraints and the cache default false behavior. The description's mention of cache=true adds only marginal meaning beyond the schema's boolean documentation, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific purpose — checking whether a TikTok creator is live — and enumerates the exact response fields (isLive/status, creator.id/secUid, room, streamQualities with flv/hls/cmaf/dash). This is specific enough to separate it from most of the sibling list, but it does not explicitly differentiate itself from the closely named sibling tiktok_live_info, leaving that distinction to inference.

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 is given on when to choose this tool over alternatives, and the sibling list includes tiktok_live_info, which plausibly overlaps. The only usage-adjacent information is the cache=true strategy, which concerns parameter selection rather than tool selection. An agent comparing live-status tools gets no decision rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_live_infoAInspect

Identical to TikTok Live (isLive, creator.id/secUid, streamQualities hls/cmaf). Costs 7 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.6/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 behavioral burden and does useful work: it discloses a 7-credit cost, that empty results and failures are never charged, the 24h cache hit behavior, and the default always-fresh behavior. It also reveals key response fields. It does not mention rate limits or authentication, but for a read-style info endpoint this is substantial transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three short, information-dense sentences: output shape, cost/billing policy, and cache behavior. Every sentence earns its place and there is no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given only two simple parameters, no output schema, and no annotations, the description covers the essential operational context: response fields, credit cost, failure billing, and caching. Its main gap is that it leans on the sibling tiktok_live for full output semantics and never explains why both tools exist, but the cross-reference is a reasonable shorthand in a tool suite.

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 is 3. The description restates the cache parameter's behavior and default, which the schema already documents, and adds no new meaning for the url parameter beyond what the schema's format and examples provide. No parameter semantics gap needs compensating.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as TikTok live information and lists concrete output fields (isLive, creator.id/secUid, streamQualities hls/cmaf), making the tool's purpose reasonably clear. It does not use a direct verb like 'get' or 'fetch', and it characterizes itself as 'identical to TikTok Live' rather than distinguishing itself from that sibling, which slightly weakens clarity.

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?

There is no explicit guidance on when to use this tool versus alternatives. The description references tiktok_live as identical but does not explain when an agent should choose tiktok_live_info over tiktok_live or other TikTok tools. The cache parameter advice is operational rather than tool-selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_music_postsAInspect

List TikTok videos that use a specific sound — caption, author, exact engagement, canonical hashtags, and mentions, with cursor pagination. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. hasMore is true only when nextCursor is present.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses credit cost (2 credits), free cache hits on cache=true, default-fresh behavior, and that empty results and failures are never charged. This goes beyond the schema and provides meaningful operational context, though it omits rate limits and authentication details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loads the core operation and output contents, and then packs cost, cache, and failure-policy details without redundancy. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a four-parameter tool with no output schema and no annotations, the description covers purpose, returned categories, pagination, cost, cache behavior, and no-charge-on-failure. It lacks an explicit return-shape explanation or ordering note, but the schema already documents pagination mechanics and URL constraints, so the remaining gaps are minor.

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 is 3. The description adds little to parameter meaning beyond what the schema already provides, such as the URL format, platform-match warning, cache behavior, limit defaults, and cursor usage. It doesn't deepen the understanding of the parameters themselves.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'List TikTok videos that use a specific sound.' It also enumerates the returned data categories (caption, author, exact engagement, canonical hashtags, mentions), which clearly distinguishes it from broader siblings like tiktok_trending_feed or tiktok_song_details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening clause states the exact condition for use: when a TikTok sound/music URL is available and the agent needs videos using that sound. It doesn't explicitly name alternatives or exclusions, but the context is clear enough for an agent to route correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_profile_regionAInspect

Find out where a TikTok creator is likely based and what language they use — country, language, stable ids, and core profile stats. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoSet true to include TikTok's upstream user/statsV2 blob under raw. Default false — curated fields only.
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 7d response cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.7/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 transparency burden. It discloses meaningful behavior: 2-credit cost, no charge for empty results or failures, cache=true gives a free cached hit, and the default is always fresh. It does not mention rate limits or auth, but for a read-only lookup these disclosures are strong.

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?

The description is compact and front-loaded: three sentences cover purpose, pricing, failure charging, and cache behavior. Every sentence earns its place, though the cache sentence is inaccurate relative to the schema.

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?

The description covers purpose, main output categories, cost, and cache behavior, which is adequate for basic selection and invocation. However, there is no output schema and no description of result shape or rate limits, and the cache TTL inconsistency leaves a real gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters are already documented in the schema, so the baseline is 3. The description adds no useful meaning for raw or cacheMaxAge, and it introduces a conflicting cache claim: it says cache=true gives a 24h cache hit, while the schema says the 7d response cache with 0 credits on hit. This ambiguity hurts parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Find out where a TikTok creator is likely based and what language they use' and lists concrete outputs: country, language, stable ids, and core profile stats. This clearly distinguishes it from generic TikTok profile or channel tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The use case is implied from the stated purpose, but the description never names sibling tools or says when not to use it, such as when full channel details or audience demographics are needed. The cost and cache advice is operational rather than selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_search_by_hashtagAInspect

Videos from TikTok's /tag/{name} challenge feed — not keyword or username search. Cursor + hasMore. Costs ~14 credits (0.7/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSingle hashtag token for the /tag/{name} challenge feed, with or without # (min 2). Spaces are 400 — use /v1/tiktok/search/top for a keyword query.
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 100). Billed per result.
cursorNoPagination offset. Leave at 0 (or omit) for the first page; then pass the nextCursor value returned in the previous response. A null nextCursor means the end of the results.
regionNoTwo-letter ISO 3166-1 country our request is sent from. Default US. Does not filter results by country.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It discloses pagination behavior ('Cursor + hasMore'), pricing semantics (~14 credits, 0.7/result), no-charge cases for empty results/failures, and cache behavior with default freshness. This goes well beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four dense sentences with zero fluff. The core purpose and key exclusions are front-loaded, followed by pagination, pricing, and cache behavior. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description covers the essential operational details: pagination, cost, failure charging, cache behavior, and scope. For a search tool with fully documented parameters, an agent has enough to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics not in the schema, such as what cache=true actually guarantees (free 24h cache hit) and the cursor/hasMore pagination model, which helps an agent use the parameters correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the exact resource ('Videos from TikTok's /tag/{name} challenge feed') with a specific verb and immediately distinguishes it from keyword and username search. This clearly separates it from the many TikTok search siblings in the tool list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states what this tool is not ('not keyword or username search') and the schema adds 'use /v1/tiktok/search/top for a keyword query.' It gives clear context and an explicit exclusion, though it does not name the analogous sibling tools directly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_search_suggestionsAInspect

Get the autocomplete terms TikTok suggests in its search bar for a keyword — the real phrases people search, ranked, so you can find trending queries and long-tail keyword ideas. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSeed keyword to expand into autocomplete suggestions, e.g. skincare.
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 100). Flat 2 credits per call.
countryNoTwo-letter ISO country code that localizes the suggestions to a market, e.g. US, GB, DE. Default US.
languageNoInterface language for the suggestions, e.g. en-US or de-DE. Default en-US.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden and does a good job: it discloses a 2-credit cost, no charge for empty/failed results, and the 24h cache option with default always-fresh behavior. It does not mention potential rate limits or auth requirements, but the operational behavior most relevant to invoking correctly is covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with what the tool does, and every sentence earns its place: value proposition, cost, no-charge guarantee, and cache behavior. No redundant fluff or repetition of raw schema attributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter tool with no output schema and no annotations, the description covers the essential context: what is returned, why it is useful, cost behavior, failure charging, and cache semantics. The remaining parameters are fully documented in the schema, so nothing an agent needs to select and invoke this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes all five parameters (100% coverage), and the description adds meaningful semantics beyond the schema: 'q' is a seed keyword, cache=true yields a free 24h cache hit, and calls carry a flat 2-credit cost. Country and language are left to the schema, but the description raises the overall value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get the autocomplete terms TikTok suggests in its search bar for a keyword') and clearly identifies the resource and output. It distinguishes this tool from search-focused siblings by emphasizing autocomplete/ranked phrases for canonical and long-tail keyword discovery, not user/hashtag/top-search lists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states the intended use case: finding trending queries and long-tail keyword ideas. It does not explicitly compare against alternatives or state when not to use it, but the context is clear enough that an agent can infer when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_search_usersAInspect

Search TikTok users — distinct creators only, id + secUid, per-counter isApproximate flags, cursor pagination. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query matched against usernames, display names and bios (min 2 characters).
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 100). Flat 1 credit per call.
cursorNoPagination cursor. Omit (or pass 0) for the first page; then pass the nextCursor value from the previous response verbatim — it carries the search session, not just an offset. A null nextCursor means the end of the results.
fallbackNoOpt into the scraper actor when native search is unavailable (~2 min, capped at 100 s, degraded-empty on timeout). Default false — return an empty degraded page (0 credits) instead.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does so impressively: it discloses the 1-credit cost, no charge for empty results or failures, 24h cache semantics, and the fallback scraper behavior with timeout degradation. It also reveals deduplication behavior ('distinct creators') and the presence of isApproximate flags, neither of which is visible in the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four dense sentences front-load the core purpose before cost, cache, and fallback details, with no filler. Each clause carries operational value, though the telegraphic middle section is compact at the expense of slight readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers returned identifiers (id, secUid), isApproximate flags, cursor pagination, costs, failure behavior, and fallback — enough for an agent to invoke the tool correctly even without an output schema. The exact response envelope and the precise meaning of 'per-counter' are left implicit, which is a minor gap in an otherwise complete definition.

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 coverage is 100% and the schema already thoroughly documents q, cache, limit, cursor, and fallback including defaults and costs, so the description adds limited new parameter-level meaning. It does reinforce global cost and failure semantics and output characteristics, but those are more behavioral than parameter-specific. Baseline 3 is appropriate here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource — 'Search TikTok users' — and immediately narrows scope with 'distinct creators only, id + secUid', distinguishing it from sibling tools that return posts, channel details, or suggestions. Pagination and output focus make the tool's purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description establishes clear context: use this when you need to find TikTok creator accounts by query, and it explains caching, costs, and fallback behavior that affect invocation choices. It does not explicitly name sibling alternatives or state when not to use this tool, so it falls short of fully explicit routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_shop_product_detailsAInspect

PDP — price (sku_min when guest min is *), sold vs stock, seller id/url, images[]. Unresolved URL is 404 at 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok Shop product URL, e.g. https://shop.tiktok.com/view/product/1731410956394792439?region=BR or https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
regionNoTwo-letter market region (default US). A region= or oec_region= query on the product URL wins over this default so a BR share URL is not fetched as US. Echoed as data.region.

TDQS

A3.8/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 does well: discloses cost (2 credits), free failures, 404 behavior on unresolved URLs, and caching behavior. It also notes that empty results are never charged. Missing details like authentication or rate limits, but the core behavioral traits are clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, dense sentence that front-loads the core purpose (PDP and fields) then packs cost, failure, and caching behaviors. Every phrase earns its place; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple product-details fetch with no output schema, the description conveys return fields and key behavioral context (cost, caching, region handling). It doesn't mention pagination or error codes, but the tool's scope is narrow and the essentials are covered.

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 is 3. The description adds marginal value: reiterates cache=true as free hit and notes region is echoed as data.region, but these are also present in the schema. No additional parameter semantics beyond that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (fetch product details) and resource (PDP for TikTok Shop), and enumerates the exact fields returned (price, sold vs stock, seller id/url, images[]). It clearly distinguishes from siblings like tiktok_shop_product_reviews and tiktok_shop_search by naming the PDP scope.

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 explicit when-to-use or when-not-to-use guidance relative to sibling tools. It mentions cost-saving via cache=true but does not direct the agent to alternatives like tiktok_shop_product_reviews for reviews or tiktok_shop_search for discovery. The usage context is only implied by the resource type.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_shop_product_reviewsAInspect

TikTok Shop product reviews — star rating, text, SKU variant, verified purchase, country, and review photos. Costs ~45 credits (2.25/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731962298839634826. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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). Billed per result.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden, and it does well by disclosing credit costs (~45 credits, 2.25/result), the no-charge policy for empty results/failures, and the cache=true behavior with free 24h hits. It omits details like pagination, rate limits, or output structure, but the most operationally important behavior is covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three tight sentences with no filler: the first defines the output, the second covers pricing, and the third explains the caching option. Every sentence adds distinct value and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema, the description usefully enumerates the review fields returned and explains cost/cache behavior, which helps an agent understand what it will get. It does not describe the exact output structure or edge-case error behavior, but the combination of schema plus description is reasonably complete for a straightforward fetch-reviews tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage with descriptions for url, cache, and limit, including an example URL and constraints. The description adds meaningful operational semantics beyond the schema by explaining per-result billing and the free-cache-hit behavior, which clarifies the practical effect of the limit and cache parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource as TikTok Shop product reviews and lists the specific data points returned (star rating, text, SKU variant, verified purchase, country, review photos). The name plus field list distinguish it from product_details and product search siblings, though it does not explicitly call out that distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description and schema make it clear that a TikTok Shop product URL is required and gives a concrete example plus a warning about cross-platform URLs. However, it does not explain when to choose this tool over related siblings like tiktok_shop_product_details or tiktok_shop_products, leaving that differentiation to be inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_shop_productsAInspect

Store catalog with shopInfo (sold/followers/rating) + products priced with sold, rating, typed discount. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok Shop store URL, e.g. https://www.tiktok.com/shop/store/goli-nutrition/7495794203056835079. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.
regionNoTwo-letter market region (default US). Non-US coverage depends on TikTok exposing that shop in the selected region — empty results outside the US are often a platform limit, not a Captapi bug.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations absent, the description carries the behavioral disclosure burden and does it well: it discloses the 2-credit cost, that empty results and failures are never charged, and the cache semantics (default fresh, cache=true for a free 24h hit). This goes beyond the schema by explaining billing and failure behavior. It does not mention rate limits or pagination, but the covered behaviors are material to an agent's decision.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no filler. The first sentence states the core value, the second conveys billing/failure behavior, and the third covers caching. Every sentence earns its place, and the most decision-relevant facts (cost, no charge on empty/failure, cache option) are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Strong coverage of cost, caching, failure, and region semantics. The lack of an output schema is partly compensated by the brief output summary in sentence one. The main gap is no mention of pagination beyond the limit parameter, and no explicit exclusion of per-product detail/reviews routes to siblings, but the description is otherwise sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the structured definitions already document all four parameters. The description still adds value by explaining the region failure nuance (non-US empty results are often a platform limit, not a bug), which is not present in the schema and prevents an agent from misdiagnosing API issues. It doesn't add syntax details for url or limit, but they are already fully described.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool fetches a store catalog with shopInfo and product pricing/discount data, which is clear about what it does. However, it doesn't distinguish itself from the closely related tiktok_shop_product_details, tiktok_shop_product_reviews, tiktok_shop_search, or tiktok_shop_user_showcase siblings, so an agent must rely on the name 'products' to infer scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the credit cost and the cache=true behavior, which guides when to use it (when a 24h-old cached result is acceptable). It also documents the cost implications of fresh calls. However, it does not explicitly say when to prefer a sibling like tiktok_shop_product_details for per-product detail or tiktok_shop_search for discovery, so routing among siblings is left implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_shop_user_showcaseAInspect

Creator Shop showcase — affiliate shelf products with per-product sold, rating, typed discount, and seller name/url. Costs ~45 credits (2.25/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
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). Billed per result.
usernameYesTikTok username, @handle, or profile URL, e.g. jeffreestar or https://www.tiktok.com/@jeffreestar.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description takes on behavioral disclosure: it specifies credit cost, per-result billing, free empty/failure results, and cache semantics. This is substantial and useful. It does not mention auth, rate limits, or output format, but for a read-style fetch these are minor gaps given the disclosure already provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences: product scope, cost/billing, and cache behavior. No filler, every sentence adds value, and the primary purpose is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema and no annotations, the description covers purpose, return fields, cost, cache, and failure billing. It lacks explicit return-shape and pagination detail, but the schema provides limit and the description's field list is enough for an agent to understand what to expect.

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 covers 100% of parameters, so baseline is 3. The description reiterates the cache behavior and implies limit affects billing, but does not add new meaning beyond the schema for username or limit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as a Creator Shop showcase and enumerates what it returns: per-product sold, rating, typed discount, and seller name/url. This distinguishes it from more generic TikTok shop tools, though it lacks an explicit retrieval verb and direct comparison to sibling shop tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case — fetching a TikTok user's Creator Shop affiliate showcase — but gives no explicit when-to-use vs alternatives guidance. Among many tiktok_shop_* siblings, it does not name tiktok_shop_products or tiktok_shop_search as alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_song_detailsAInspect

TikTok sound metadata — usageCount, artists[{id,secUid,handle}], audio{bpm,loudness,beats}, commerce rights (1 credit native). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description takes on the full burden and discloses meaningful behavioral traits: the 1-credit cost, the free-cache condition, and the never-charge-on-empty/failure policy. It stops short of covering rate limits or response envelope details, but covers the most decision-relevant traits for an agent comparing costs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Only two sentences, with the core purpose and returned fields front-loaded. The second sentence packs cost, failure behavior, and cache control without redundancy. Every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with only 2 params and no output schema, the description covers the main returned fields, cost, cache behavior, and failure-charge policy. It might have mentioned the response error shape, but an agent has enough information to invoke and interpret the tool correctly for a simple metadata lookup.

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% — both url and cache are already fully described, including the cross-platform URL restriction and cache cost semantics. The description only restates the cache behavior in shorthand and adds the word 'native' to the credit cost, so it adds minimal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'TikTok sound metadata' and enumerates the concrete fields returned (usageCount, artists, audio bpm/loudness/beats, commerce rights), making the resource and scope clear. It does not explicitly differentiate itself from siblings like tiktok_music_posts or tiktok_popular_songs, though the listed fields make the distinction inferable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description carries operational guidance: cache=true for free 24h cache hit, default fresh, and no charge on empty results/failures. However, it never states when to choose this tool over sibling alternatives, so usage timing is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_summarizeCInspect

Summarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoISO code, e.g. "tr": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary.

TDQS

C2.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does add valuable behavioral context: the 4-credit cost, the no-charge guarantee for empty/failed results, and the cache=true 24-hour cache hit behavior with fresh-by-default semantics. These are concrete operational traits beyond the name and schema.

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?

Three short sentences with no filler, and the most operationally important detail (cost) is front-loaded. It loses a point for starting with a standalone fragment rather than a clear functional sentence, but overall it is tightly written.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, so the description must explain what the tool returns and when it should be used. It covers billing and caching but omits the actual purpose, output format, and relationship to sibling tools, leaving an agent without enough context to confidently invoke it.

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 is 3. The description adds the billing angle for cache=true but largely restates what the schema already says about cache behavior and defaults; it does not meaningfully enrich parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Summarizer', which restates the tool name rather than stating a clear verb and resource. It never explicitly says the tool generates a summary of a TikTok video, and it does not differentiate itself from siblings like tiktok_transcript or video_summarize.

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 is given about when to choose this tool over alternatives. The description only discusses credit costs and caching, with no mention of when a summary is preferable to a transcript or video details.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_transcriptCInspect

Transcript Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoServe from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

C2.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the transparency burden. It does disclose meaningful traits: the 2-credit cost, that empty/failed results are not charged, and the 24h cache behavior. However, it also states 'default always fresh', which conflicts with the schema's cache default of true, muddying the behavioral picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief, but brevity isn't conciseness when the core action is omitted. It leads with billing ('Costs 2 credits') instead of stating the tool's function, and the two sentences don't form a clear, front-loaded definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema and no annotations, the description must at minimum state what it returns and when to use it. It provides cost and cache behavior but never explicitly says it retrieves a TikTok transcript, and it leaves the cache default ambiguous, so the definition is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so a baseline of 3 applies, and the description adds little beyond the schema's already-detailed cache and language parameters. Worse, the description's 'default always fresh' contradicts the schema's 'Default true' for cache, actively reducing semantic clarity rather than adding value.

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 uses the noun 'Transcript' and never states the action (e.g., 'Fetches the transcript of a TikTok video'). The name and URL parameter hint at the purpose, but the description itself is vague about what the tool does, only providing cost and cache details.

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?

The description gives no guidance on when to use this tool or how it differs from the many transcript sibling tools (youtube_transcript, instagram_transcript, etc.). The only platform constraint appears in the schema's URL parameter description, not in the tool description, so the description itself offers no usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_user_followersAInspect

List a TikTok user's followers — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 1 credit per call.
cursorNoPagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response.

TDQS

A4.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 transparency burden. It discloses credit cost, cache behavior, no-charge on empty/failed results, freshness policy, and pagination traits. This is strong for a list endpoint, though it doesn't mention authentication, rate limits, or handling of private accounts.

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?

The description is compact and front-loaded with the core action and returned fields. The phrase 'Flat 1 credit. Costs 1 credit.' is redundant, but the rest is economical and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given four parameters, full schema coverage, and no output schema, the description covers the essential outcomes: returned fields, pagination, cost, failure behavior, and cache. It is slightly shy of a 5 because it doesn't mention edge cases like private accounts or rate limits, but nothing critical is missing for invoking the tool correctly.

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 schema already documents url, cache, limit, and cursor semantics. The description adds some context (e.g., cursor pagination, cache free hit) but mostly reinforces rather than extends the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a specific verb and resource: 'List a TikTok user's followers', distinguishing it from the sibling tool tiktok_user_followings. It also names the key returned fields, making the tool's purpose immediately clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear operational context: pagination via cursor, use of cache for free 24h hits, and that empty/failed results are not charged. It doesn't explicitly say 'use this instead of tiktok_user_followings', but the name and field list make the primary use case obvious. The schema reinforces platform-matching restrictions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_user_followingsAInspect

List who a TikTok user follows — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 1 credit per call.
cursorNoPagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It discloses the cost model (flat 1 credit), free charges on empty results/failures, cache behavior (free 24h cache hit with cache=true, default fresh), and the returned fields with pagination. It does not mention potential rate limits or auth requirements, but it is substantially transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise and front-loaded with the core purpose, but it contains redundancy: 'Flat 1 credit' and 'Costs 1 credit' state the same fact twice. The rest of the sentences earn their place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of an output schema, the description usefully enumerates the return fields and notes cursor pagination. Combined with the schema, the agent has enough to call the tool correctly. It does not explicitly distinguish from tiktok_user_followers, but the core facts are covered.

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%, and each parameter already has a detailed description. The tool description adds little beyond what the schema provides—'cursor pagination' and 'Pass cache=true' are already covered in parameter descriptions. The baseline of 3 applies because the description adds no significant new semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'List' and clearly identifies the resource: 'who a TikTok user follows'. This inherently distinguishes it from the sibling tool tiktok_user_followers. It also lists the return fields, making the deliverable explicit.

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?

There is no explicit guidance on when to use this tool versus alternatives. It never mentions tiktok_user_followers or any other sibling. The only usage guidance in the schema warns against cross-platform URLs, which is input validation, not tool selection. Cache usage is explained, but not when to choose this tool over another.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tiktok_video_detailsAInspect

Get everything about one TikTok video from its URL — caption, view/like/comment/share/save counts, creator, sound, hashtags, and thumbnail. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so well: it discloses the 1-credit cost, that empty results and failures are never charged, and the 24-hour cache behavior with a default of always-fresh requests. These are actionable behavioral details beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with no filler; the core purpose is front-loaded and the cost/cache details are packed efficiently. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter, read-only details tool, the description is nearly complete: it enumerates output fields, cost, failure charging, and cache options. It does not explicitly describe the return structure or error body, but no output schema exists and the field list largely compensates.

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 schema already documents both url and cache. The description adds no new parameter semantics beyond restating the cache behavior, matching the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a specific verb and resource: 'Get everything about one TikTok video from its URL,' then enumerates concrete returned data (caption, view/like/comment/share/save counts, creator, sound, hashtags, thumbnail). This is enough to tell it apart from sibling TikTok tools like tiktok_channel_details or tiktok_trending_feed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear contextual guidance: pass a TikTok video URL, and optionally set cache=true for a 24-hour cache hit at zero cost while defaulting to a fresh fetch. It does not explicitly name alternatives or define when not to use the tool, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

truth_social_postBInspect

One Truth — text, links[], card, reblog/quote chain, media.meta, externalVideoId. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTruth Social post URL or post ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

B3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it discloses meaningful operational behavior: flat credit cost, free cache hits, empty results and failures never charged, and default-fresh fetching. This goes beyond the schema and gives an agent a clear sense of side effects and failure economics, though it omits potential rate limits or auth requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and mostly front-loaded, but it is telegraphic and contains redundancy: 'Flat 1 credit. Costs 1 credit.' says the same thing twice. The opening 'One Truth' is unclear and wastes a bit of the agent's attention before the meaningful content begins.

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?

There is no output schema, so the description's list of response fields is helpful and partially compensates. However, it does not describe the overall response envelope, error conditions, or how a post ID/URL is handled, and it fails to differentiate this single-post tool from the related Truth Social list/profile tools.

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 coverage is 100%, so the baseline is 3, and the description mostly repeats what the schema already says about cache behavior and default freshness. It adds a little context around credit costs, but does not meaningfully explain the url parameter beyond the schema's own description.

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 names the resource (a single Truth Social post) by listing its data fields — text, links[], card, reblog/quote chain, media.meta, externalVideoId — but never states a verb like 'fetch' or 'retrieve'. The name and sibling tools make the purpose inferable, but the description itself is vague and cryptic ('One Truth').

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?

The description gives no guidance on when to choose this tool over siblings such as truth_social_profile or truth_social_user_posts. It focuses on cost and caching rather than use cases, alternatives, or prerequisites. The schema's URL platform warning is useful but not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

truth_social_profileAInspect

Prominent public Truth Social profiles — isPrivate/bot/group, CP-F counts, avatar/banner. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTruth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.3/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 of behavioral disclosure. It clearly states the flat credit cost, that empty results and failures are never charged, and the cache behavior (free 24h hit, default fresh). This is valuable and goes beyond typical descriptions, though it does not mention rate limits or error handling specifics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence that front-loads the core purpose, then states pricing, failure policy, and cache behavior. Every clause carries information with no fluff, making it highly efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description covers the essential usage aspects: what data is returned, pricing, cache, and URL constraints. It does not detail the response structure or potential errors, but these are less critical for a simple fetch operation. The description is adequate for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers both parameters (100% coverage), but the description adds crucial semantics: the url parameter accepts a URL or @username and explicitly warns against cross-platform URLs with examples. The cache parameter is clarified as serving from a 24h cache at 0 credits. This adds significant value beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves 'Prominent public Truth Social profiles' with specific fields (isPrivate/bot/group, CP-F counts, avatar/banner). The verb is implied but the resource and scope are explicit, and it distinguishes from sibling tools like truth_social_post and truth_social_user_posts by targeting profile-level data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool over alternatives or when not to use it. It implies usage by naming the platform and resource, but lacks explicit routing such as 'use this for profile details, not posts'. The cache hint is about usage but not about alternative selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

truth_social_user_postsAInspect

Recent Truths — same post mapper as /post (links, card, reblog/quote, mentions). 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTruth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax posts to return (default 20, max 80). Truth Social's statuses page is ~20 items — a full page returns nextCursor. On the extended path hasMore can be true with nextCursor null (truncatedReason=single_page_only). Flat 2 credits.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, and the description supplies meaningful behavioral details: the 2-credit cost, no charge for empty results or failures, and cache=true providing a free 24-hour cache hit while defaulting to fresh fetches. It does not cover authentication or rate limits, but the cost, caching, and failure semantics go well beyond minimal 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?

The description is short and front-loaded with the core purpose, and most sentences carry useful information. The cost statement is repeated ('2 credits. Costs 2 credits.'), which is a minor redundancy that prevents a perfect score.

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?

It covers cost, caching, empty-result policy, and references the /post mapper, but with no output schema it does not describe the response shape beyond that reference. It also omits explicit sibling routing, so an agent is left to infer some contextual details from tool names and the schema.

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 schema already documents url, cache, limit, and cursor. The description adds no new parameter-level semantics beyond restating the cache cost behavior, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as a user's 'Recent Truths' and points to the same post mapper as /post, so an agent can infer it returns posts from a Truth Social user's feed. It does not explicitly contrast with truth_social_profile or truth_social_post, and it relies partly on the tool name for the verb, so it is clear but not fully self-contained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by 'Recent Truths' and the profile URL parameter, but the description does not explicitly say when to choose this over truth_social_post or truth_social_profile. It gives useful cache instructions but no stated exclusions or alternative conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitch_clipBInspect

Twitch clip — curator vs channel, signedVideoUrl, unwrapped token, relatedClips (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral disclosure burden. It explicitly states the 1-credit cost, that empty results and failures are never charged, and the exact cache behavior for cache=true. That is meaningful transparency beyond typical definitions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded, but it repeats the credit cost twice ('(1 credit)' and 'Costs 1 credit'), and the opening colon-separated list is cramped. It could be tightened without losing information.

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 3-parameter tool with full schema coverage but no output schema or annotations, the description covers cost, billing on failure, and caching, but leaves the return shape vague beyond a few field names and does not clarify what 'curator vs channel' means. It is adequate but not complete.

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 coverage is 100%, so the schema already documents url, cache, and cacheMaxAge. The description only repeats the cache=true tip already covered by the schema and adds no new parameter-level meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as a Twitch clip and lists expected return items (curator vs channel, signedVideoUrl, unwrapped token, relatedClips), so an agent can infer this fetches clip details. However, it lacks an explicit verb such as 'get' or 'fetch', and the phrase 'curator vs channel' is telegraphic and ambiguous.

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 is given about when to choose twitch_clip over sibling tools like twitch_profile, twitch_user_videos, or kick_clip. The cost and cache notes are operational details, not usage selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitch_profileAInspect

Twitch channel — handle + displayName, socials[], topClips, schedule preview, stream only when live (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden and provides useful disclosure: the call costs 1 credit, empty results and failures are never charged, stream data is only present when the channel is live, and cache=true gives a free 24h cache hit while the default is always fresh. It does not cover auth or rate limits, but the key operational quirks are disclosed.

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?

The description is short and front-loaded with the resource and return fields. There is minor redundancy between '(1 credit)' and 'Costs 1 credit,' but otherwise each clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema and no annotations, the description provides enough context to call it correctly: return fields, cost, caching behavior, failure billing, and the live-only stream field. It could explain the exact format of fields or error behavior, but nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds value by specifying that cache=true is free and provides a 24h cache hit, and it reinforces the always-fresh default. It does not discuss cacheMaxAge, but the schema already fully documents that parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as a Twitch channel and enumerates the specific returned data: handle, displayName, socials[], topClips, schedule preview, and stream. This helps distinguish it from sibling tools like twitch_clip or twitch_user_videos, though it lacks an explicit verb such as 'fetch' or 'get'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied: this is the tool to call for a Twitch channel profile rather than clips, schedule, or videos. However, it never names alternatives or states when not to use this tool, and 'stream only when live' reads as a data availability condition rather than a routing rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitch_user_scheduleBInspect

Twitch channel schedule — startAt/endAt, title, game, isRecurring (0 credits when empty). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax schedule segments to return (default 50, max 100). Flat 1 credit per call.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral disclosure burden. It usefully discloses credit costs, the free cache-hit behavior, and that empty results/failures are never charged. However, it does not mention auth requirements, rate limits, or explicitly state that the operation is read-only, which are relevant gaps for a tool with no annotation safety signals.

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?

The description is compact and front-loads the core purpose before moving to cost and caching details. The only structural weakness is minor ambiguity: 'isRecurring (0 credits when empty)' reads as if isRecurring itself relates to the zero-credit behavior rather than the overall empty-result billing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description names the returned fields and explains the important operational behaviors (cost, caching, failure billing). The parameter schema covers URL, cache, and limit semantics. The main missing piece is guidance on when to select this tool over related Twitch tools, but for a simple 3-parameter call the description is largely sufficient.

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?

The input schema already provides 100% coverage for all three parameters, so the description does not need to explain them in depth. It adds some value around cache semantics ('free 24h cache hit') and cost behavior, but these largely repeat or complement rather than extend the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource as a Twitch channel schedule and enumerates its key fields (startAt/endAt, title, game, isRecurring), which distinguishes it from sibling tools like twitch_clip, twitch_profile, and twitch_user_videos. However, it lacks an explicit verb like 'get' or 'fetch', so the purpose is clear but not stated as directly as it could be.

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?

The description gives practical context about credits and caching, including when to pass cache=true. It does not provide guidance on when to use this tool versus alternatives, nor does it mention exclusions or sibling tools, so an agent must infer selection purely from the resource name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitch_user_videosAInspect

Twitch channel VODs — lean rows, video-id cursor, filter/sort, top-level broadcaster{} (flat 2). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 100). Flat 2 credits per call. Hard ceiling: first 100 matching videos only — deeper history is not available (windowMax=100).
cursorNoPagination cursor = last video id from the previous nextCursor. Leave empty for the first page. Pages the first 100 matching videos only (not a raw offset).
sortByNoTIME (default, newest first) or VIEWS.
filterByNoARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types — there is no default filter (unset filterBy is omitted, not null).

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so well: it discloses credit costs, free cache hits, no charge for empty/failed results, default fresh behavior, pagination style, and row shape. It also signals that this is a read-style listing operation without destructive side effects. This is substantial behavioral context beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and information-dense, with the most important facts front-loaded. Every clause provides useful operational information, and there is no filler or redundant restating of the tool name. The two-sentence structure is easy for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input schema and lack of an output schema, the description covers the main operational concerns: scope, pagination, filtering, sorting, cost, caching, and failure behavior. It does not detail response fields beyond 'lean rows' and the broadcaster object shape, but this is sufficient for an agent to select and invoke the tool. A little more explicit output-structure guidance would make it fully complete.

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 coverage is 100%, and each parameter already has detailed descriptions, so the baseline is 3. The description adds some related context ('video-id cursor, filter/sort, top-level broadcaster{}') but mostly restates or hints at what the schema already documents. It does not meaningfully compensate for any missing parameter-level semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource as 'Twitch channel VODs' and conveys that this endpoint returns video rows with filtering and sorting. It does not use an explicit verb like 'list' or 'fetch', but the 'lean rows, video-id cursor, filter/sort' phrasing makes the operation unambiguous. The name plus 'Twitch channel VODs' differentiates it from sibling tools like twitch_clip and twitch_user_schedule.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The resource statement 'Twitch channel VODs' implies when to use this tool, and the schema warns against cross-platform URLs. However, the description does not explicitly state when to use this tool instead of related Twitch siblings or other channel-video tools. The guidance is mostly inferred from the resource name rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_communityAInspect

X Community metadata — ISO createdAt, flat creator handle, isNsfw + bannerImage, rules[]. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesX community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It discloses meaningful operational behavior: 'Costs 1 credit', 'Empty results and failures are never charged', and the cache freshness policy with default always-fresh. This goes beyond the basic read-only nature implied by 'metadata' and helps the agent anticipate costs and side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: resource, returned fields, cost, failure policy, and cache option. Each sentence carries distinct information with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter metadata endpoint with no output schema, the description covers the return shape via field enumeration and clarifies cost, failure, and cache behavior. It does not describe error responses or rate limits, but for this simple read endpoint the essential calling context is present.

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 coverage is 100%, so the baseline is 3. The description restates cache behavior ('Pass cache=true for a free 24h cache hit') but the schema already documents '0 credits on hit' and the default false; no new parameter meaning is added. The url parameter is already richly described in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with 'X Community metadata' and enumerates the returned fields (ISO createdAt, flat creator handle, isNsfw + bannerImage, rules[]), making the resource and scope clear. It lacks an explicit verb like 'fetch' and doesn't name a sibling, but the metadata focus distinguishes it from twitter_community_tweets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description and schema give clear input constraints: only community URLs/IDs, not tweet/status URLs, and the platform must match. It also provides cache guidance ('Pass cache=true for a free 24h cache hit'). However, it does not contrast this tool with siblings such as twitter_community_tweets or twitter_profile, leaving when-to-use vs alternatives implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_community_tweetsAInspect

Posts in an X Community — same 6-metric tweet shape as search. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesX community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 25, max 200). Flat 2 credits per call.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden and does disclose meaningful traits: flat 2 credits, empty results/failures not charged, and cache=true producing a free 24-hour hit with always-fresh default. It also references the 6-metric tweet return shape. It does not cover pagination, rate limits, or authentication, but enough operational behavior is surfaced for a read-only fetch tool.

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?

The description is short and front-loads the purpose, but the cost statement is duplicated ('Flat 2 credits. Costs 2 credits.'), adding unnecessary words. Overall it is compact and scannable.

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?

The tool has no output schema and no annotations, so the return-value description must carry more weight; 'same 6-metric tweet shape as search' is ambiguous because no equivalent 'search' tool exists among the siblings. Costs, caching, and parameters are well-covered, but the missing explicit output contract leaves a notable gap.

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?

Input schema already describes all 3 parameters at 100% coverage, including URL platform restrictions, cache semantics, and limit range. The prose description mostly repeats these details (e.g., 'free 24h cache hit') rather than adding new parameter-level meaning, so it meets the baseline but adds little extra.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Posts in an X Community', clearly identifying the resource (community posts) and implying a retrieval action. It distinguishes from sibling tools like twitter_community and twitter_user_tweets through the 'community' scope, though it never names an alternative, so it stops short of explicit differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use statement, nor any named alternative tool. The intended context is implied by 'Posts in an X Community' and the cache/cost notes, but an agent is not told to prefer this over twitter_community or twitter_user_tweets for specific needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_profileBInspect

X profile: verified + blue/legacy/identity, displayName, avatar/banner, tipjar→contact{}, expanded website. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d.
cacheMaxAgeNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden and does disclose cost, the no-charge policy for empty results/failures, and cache freshness behavior. However, it says 'free 24h cache hit' while the input schema says '1-hour profile cache,' so the behavioral guidance is partially unreliable.

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?

The description is compact and front-loads the core return fields before moving to cost and caching details. The 'tipjar→contact{}' notation is cryptic, and the cache TTL error weakens the second sentence, but there is little wasted text.

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 simple profile endpoint with no output schema, it lists enough return fields plus pricing and failure behavior to be usable. It lacks sibling routing guidance and contains an inaccurate cache duration, which are notable gaps given the large sibling tool set.

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 parameters are already fully documented and the baseline is 3. The description adds only a redundant cache=true note that conflicts with the schema's stated TTL, so it does not meaningfully improve parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names the resource clearly as X profile and enumerates specific return fields: verified status, displayName, avatar/banner, tipjar, and expanded website. It is easily distinguished from tweet, community, and transcript siblings, though it lacks an explicit action verb like 'fetch'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for X profile data rather than tweets or communities, but it never states when to prefer this tool over its siblings or when not to use it. It does give caching usage guidance, but that is parameter behavior rather than route selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_transcriptAInspect

Tweet text as a transcript — timingSource none (not Whisper). Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and discloses important behavior: flat 1 credit cost, no charge on empty results or failures, and cache semantics. It does not mention auth, rate limits, or response shape, but the billing and cache transparency is valuable beyond the schema.

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?

The description is short, front-loaded with the core purpose, and each sentence adds distinct information except for a minor redundancy: 'Flat 1 credit. Costs 1 credit.' The 'timingSource none' phrase is terse but not overly padded.

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?

There is no output schema, so the description should clarify what the transcript response looks like; 'Tweet text as a transcript' gives only a basic idea. Cost, caching, and failure behavior are covered well, but return structure and potential error conditions are not fully addressed.

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 coverage is 100%, so the baseline is 3. The description reinforces the cache parameter with 'Pass cache=true' and 'default always fresh', but these largely duplicate the schema's existing parameter descriptions. It adds no significant new meaning for the url parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource (tweet) and the output form (transcript), distinguishing it from video/audio transcript tools for other platforms. It lacks an explicit verb, and 'timingSource none (not Whisper)' is somewhat jargon-heavy, but the core purpose is understandable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for tweet URLs and gives practical cache/cost guidance, but it does not explicitly name alternatives like twitter_tweet_details or video_transcript, nor does it state when not to use this tool. The 'not Whisper' note hints at a distinction but is not a clear exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_tweet_detailsAInspect

One tweet as JSON — text, author (followers), likes/replies/retweets/quotes, media, ISO publishedAt. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully carries the behavioral burden and does so admirably. It discloses the 1-credit cost, that empty results and failures are never charged, and the exact cache semantics (cache=true gives a free 24h hit, default is always fresh). This is rich, non-obvious operational detail well beyond a simple read action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is remarkably efficient: two sentences, front-loaded with the core deliverable, then vital cost and caching rules with zero filler. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter read-only tool with no output schema, the description supplies the essential return fields and clarifies pricing and caching edge cases. The URL parameters are already fully documented in the schema, so the description is complete for an agent to select and invoke the tool correctly.

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 coverage is 100%, and the schema already fully describes both url and cache, including the 0-credit cache-hit behavior. The description restates cache behavior and adds a global credit cost, but it does not truly enhance understanding of the parameters beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns one tweet as JSON and enumerates the included fields (text, author, likes/replies/retweets/quotes, media, ISO publishedAt), which distinguishes it from sibling tools like twitter_profile or twitter_user_tweets. However, it lacks an explicit verb like 'get' or 'fetch', so it stops just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: use this for a single tweet's details, not for profiles, user posts, or transcripts. It also provides practical guidance on when to pass cache=true. It does not explicitly name alternatives or exclusion conditions, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

twitter_user_tweetsAInspect

Most popular public tweets from a Twitter/X profile (~100 cap) — not chronological. Text, author, engagement, hashtags, media. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesTwitter/X profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax tweets to return (default 20, max 200). Twitter's public surface usually caps around ~100 most popular posts — not chronological latest. Flat 2 credits per call.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden and does well, disclosing the tweet cap, non-chronological behavior, flat credit cost, no charge on empty/failed results, and cache semantics. It stops short of covering potential auth requirements or rate limits, which keeps it from a top score.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded and the overall length is reasonable, but the description wastes a sentence by saying 'Flat 2 credits. Costs 2 credits.' — an exact duplicate. This prevents every sentence from earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although there is no output schema, the description lists the returned fields and covers the important operational details: cap, non-chronological ordering, limit behavior, pricing, empty/failure charging, and caching. It does not specify return structure or sort order beyond 'most popular,' but it is sufficient for correct use.

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 coverage is 100%, so the input schema already documents url, cache, and limit thoroughly. The description reinforces the cache and cap behavior but adds no new parameter-specific meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states precisely that the tool returns the most popular public tweets from a Twitter/X profile, with a ~100 cap and explicitly 'not chronological.' It also lists the content dimensions returned (text, author, engagement, hashtags, media), which makes its purpose and scope unambiguous relative to sibling tools like twitter_profile or twitter_tweet_details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it: when you want popular public tweets rather than a chronological timeline. However, it names no alternative tools and gives no explicit when-not-to-use guidance, so an agent is left to infer which sibling to select for chronological or single-tweet needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_summarizeBInspect

Whisper + AI summary of an uploaded file — transcript included; 1 credit/min + 1. Costs 1 credit/min +1. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYesVideo or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes.
languageNoISO-639-1 Whisper language hint, e.g. "en" or "tr". Omit to auto-detect.
translateNoWhen true, translate speech to English before summarizing. Default false.
timestampGranularityNosegment (default) or word.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description does meaningful work by disclosing cost ('1 credit/min + 1'), the no-charge guarantee on empty/failed results, and cache behavior. However, it instructs callers to 'Pass cache=true', but cache is not a property in the input schema, making part of the guidance unreliable. It does not disclose additional limitations beyond the ones already in schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with purpose, but it contains redundancy: '1 credit/min + 1' is immediately repeated as 'Costs 1 credit/min +1.' The cache guidance also adds operational value but would be cleaner if the parameter actually existed in the schema.

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?

This is a minimum-viable description for a 4-parameter, no-output-schema tool. It covers cost, failure handling, and the result surface (transcript + AI summary), but it does not describe the expected response structure, compare itself to related summarizer/transcript tools, or explain conditions under which empty/failed results occur.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage for the four real parameters is 100%, so the schema already provides parameter meaning. The description adds no value for existing parameters like language, translate, or timestampGranularity, and introduces an undefined cache=true parameter that is absent from the schema and likely to mislead an agent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action and resource: 'Whisper + AI summary of an uploaded file — transcript included'. This makes the tool distinct from platform-specific siblings such as youtube_summarize, tiktok_summarize, and video_transcript by signaling it works on user-uploaded media and includes both a transcript and an AI summary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to use this tool versus alternatives like youtube_summarize, tiktok_summarize, or video_transcript. The phrase 'uploaded file' implies usage for local/media uploads rather than platform URLs, and the cache guidance gives an operational tip, but no clear when-to/not-to-use or alternative tool comparison is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_transcriptAInspect

Whisper transcription of an uploaded file — 1 credit/min; noSpeech=true and 0 credits when there is no speech. Costs 1 credit/min. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYesVideo or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes.
languageNoISO-639-1 Whisper language hint, e.g. "en" or "tr". Omit to auto-detect.
translateNoWhen true, translate speech to English (Whisper translations API). Default false.
timestampGranularityNosegment (default) or word — word-level timings when Whisper exposes them.

TDQS

A3.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With zero annotations provided, the description fully carries the burden and excels: it discloses cost (1 credit/min), no-speech behavior (noSpeech=true, 0 credits), failure semantics (never charged), and a 24h cache option. This is exemplary behavioral disclosure that goes well beyond typical tool descriptions.

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?

Two dense sentences covering cost, edge cases, and caching — every clause earns its place and it's well front-loaded with the core purpose. Deduction for the verbatim repetition of '1 credit/min' appearing twice.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description adequately covers pricing, no-speech behavior, failure charging, and caching for a 4-parameter tool. The underspecified 'cache=true' reference is the main gap, but overall complete enough for an agent to use the tool correctly.

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 coverage is 100%, so the baseline of 3 applies. The description adds no parameter-level detail beyond what the schema provides, and the mention of 'cache=true' could actually confuse agents since no 'cache' parameter exists in the schema — an inconsistency.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb+resource: 'Whisper transcription of an uploaded file' — the pronoun 'uploaded file' cleanly differentiates this from the many platform-specific transcript siblings (youtube_transcript, twitter_transcript, etc.). Minor deduction: no explicit naming of an alternative, though the distinction is strongly implied.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied through 'uploaded file' — signaling this is for local file uploads rather than fetching from a platform URL. The cache tip ('Pass cache=true') is actionable but there is no explicit when-to-use vs siblings, nor any mention of alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_audio_transcriptAInspect

Speech-to-text for YouTube audio. Use it when a video has no captions — or when you want a transcript of what was actually spoken rather than YouTube's published captions. Priced per started minute of audio. Costs 2 credits/min of audio. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.
maxCreditsNoRefuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits). The estimate is on every success and, when the extract miss is retryable, as estimatedCreditsIfRetried.

TDQS

A4.4/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 of behavioral disclosure. It covers pricing ('2 credits/min of audio'), failure handling ('Empty results and failures are never charged'), and cache behavior ('cache=true for a free 24h cache hit, default always fresh'). It does not describe the output format, but the operational cost and failure semantics are well disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences that front-load the core purpose, then pack pricing, failure policy, and cache behavior into efficient clauses. Every sentence earns its place; no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations and output schema, the description does well by covering cost, failure charging, cache behavior, and when to use the tool. It leaves the exact return format unstated, but the name and 'transcript' purpose make the output reasonably predictable. The rich input schema compensates for the remaining gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds valuable pricing context ('2 credits/min') that directly informs the maxCredits parameter, and clarifies the cache parameter's practical benefit. While cache details already exist in the schema, the credit-cost framing goes beyond the schema's own text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Speech-to-text for YouTube audio', a specific verb plus resource, and clearly differentiates itself from caption-based tools by noting it captures what was actually spoken rather than YouTube's published captions. This makes it distinguishable from sibling tools like youtube_transcript and video_transcript without needing to inspect their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: 'Use it when a video has no captions — or when you want a transcript of what was actually spoken rather than YouTube's published captions.' It clearly implies an alternative caption-based path, but it does not name the specific sibling tool, so the exclusion is slightly less direct than ideal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_channel_detailsAInspect

YouTube channel stats — ISO country, createdAt date-only, real banner or null, quote-aware SEO tags, absolute links. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/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 behavioral disclosure burden. It does well by disclosing pricing ('Flat 1 credit'), the no-charge policy for empty results and failures, and cache behavior with a 24h free hit and default fresh fetch. It does not cover rate limits or error response details, but it provides substantial operational transparency for a read-only stats tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loads the key result fields, but it contains redundancy: 'Flat 1 credit' and 'Costs 1 credit' say the same thing, and the cache sentence largely repeats the schema description. Every sentence should earn its place, and two do not add unique value.

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?

With no output schema, the description partially fills the gap by listing several return fields and billing/cache behavior. However, it does not indicate whether common channel stats such as subscriber count, total views, or channel title are included, nor does it describe error conditions beyond the no-charge note. An agent could still invoke it correctly, but the return shape is not fully specified.

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?

The schema already provides 100% coverage for both parameters: url documents accepted formats and cross-platform restrictions, and cache documents the 24h cache and 0-credit behavior. The description mostly repeats or condenses this schema information rather than adding new parameter-level meaning, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource (YouTube channel) and the operation (returning stats/details), and enumerates the specific data fields returned: ISO country, createdAt, banner, SEO tags, and links. This distinguishes it from sibling tools like youtube_channel_videos or youtube_channel_playlists, which target different content types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the name and 'YouTube channel stats': an agent can infer this is for channel metadata rather than videos, playlists, shorts, or streams. However, the description does not explicitly state when to use this tool instead of those siblings, nor does it mention exclusions or preferred alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_channel_playlistsAInspect

Channel playlists with cursor pagination — id, title, totalVideos, thumbnailUrl. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does well: it discloses cursor pagination, per-page flat pricing, free cache-hit behavior, and that empty results/failures are not charged. It stops short of mentioning rate limits or the precise response structure, but it adds substantial operational context beyond the schema.

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?

The key facts are front-loaded and the description is compact. The only waste is the near-redundant pair of pricing statements ('Flat 2 credits/page. Costs 2 credits.'), which slightly lowers the score from 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description names the response fields and explains cursor pagination and cache usage, so an agent can call and interpret the first page correctly. It would be more complete with an explicit mention of the nextCursor field in the response and the default/max limit, though those are covered by the input schema.

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 is 3; the description's cursor and cache hints reinforce the schema but add little new semantic meaning. The flat-credit note is operationally useful but not parameter-binding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource as a channel's playlists and enumerates the returned fields (id, title, totalVideos, thumbnailUrl), which distinguishes it from generic youtube_playlist or youtube_channel_videos siblings. It lacks an explicit verb like 'get' or 'list', but the intent is unambiguous from name and text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The context is clear for retrieving playlists of a YouTube channel, and the URL parameter guidance in the schema hints at the input format. However, the description never states when to choose this tool over siblings such as youtube_playlist, youtube_playlist_videos, or youtube_channel_videos, and it gives no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_channel_shortsAInspect

Channel Shorts with cursor pagination — same row shape as channel-videos (exact publishedAt). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.8/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 does well: it discloses cursor pagination, output row shape equivalence, exact publishedAt behavior, the 2-credit cost, that empty results and failures are never charged, and cache semantics. This goes well beyond minimal disclosure, though it stops short of mentioning rate limits or auth requirements, which would be expected for full transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no filler: the first states the core function and row-shape guarantee, the second covers cost and failure policy, the third explains cache behavior. All information is relevant and front-loaded, with the most distinguishing detail (channel-videos row shape) placed early.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers pagination, cost, cache, failure policy, and output shape via a pointer to channel-videos. Since there is no output schema, the row-shape reference is helpful but assumes knowledge of the sibling tool's return fields. For a small-parameter list tool, this is nearly complete, though a couple of example output fields would fully close the gap.

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 is 3. The description adds context about cursor pagination and cost, but those are also reflected in the schema's parameter descriptions (cache, cursor). It does not add new parameter-level semantics beyond what the schema already provides, so the baseline holds.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource ('Channel Shorts') and key capability (cursor pagination), and references 'same row shape as channel-videos' to hint at sibling differentiation. However, it lacks an explicit verb like 'List' or 'Fetch,' relying on the tool name and noun phrase to convey action. It is clear enough to distinguish from channel-videos, streams, and playlists, but not as explicit as it could be.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The mention of 'same row shape as channel-videos' implies a relationship to that sibling tool, and 'Channel Shorts' signals when to use it, but the description never explicitly states 'use this for shorts, channel-videos for regular videos' or names exclusions. Usage context around pagination, credits, and caching is provided, so the agent gets some guidance but must infer the selection rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_channel_streamsAInspect

Channel Live tab only — liveStatus per row; 0 credits when hasLiveTab is false. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 hasLiveTab is true; 0 credits when hasLiveTab is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral disclosure burden. It provides useful transparency about credit costs, zero-credit behavior when hasLiveTab is false, empty/failure charging, and cache semantics. Some cost and cache details repeat what is already in the schema, but the added 'empty results and failures are never charged' policy and the Live-tab-only scope are genuinely valuable beyond the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three tight sentences that front-load scope first ('Channel Live tab only') and then efficiently cover cost, failure charging, and cache behavior. There is no filler, and every clause contributes decision-relevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a relatively simple 3-parameter tool with no output schema, the description plus the schema cover the essential selection and invocation context: which channel tab is read, accepted URL formats, limit behavior, cache behavior, and charge implications. The main gap is that the return shape is only hinted at via 'liveStatus per row', but this is minor given the otherwise rich parameter documentation.

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 is 3. The description mostly restates cache and credit behavior already present in the cache and limit parameter descriptions, and it adds no new meaning for the url parameter. The schema itself already documents URL formats, platform-matching constraints, default/max limit values, and credit conditions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The name youtube_channel_streams combined with 'Channel Live tab only — liveStatus per row' tells an agent that the tool targets a YouTube channel's Live tab and returns per-row live status. It lacks an explicit verb like 'retrieve' or 'list', but it is specific enough to distinguish the tool from sibling endpoints such as youtube_channel_videos, youtube_channel_shorts, and youtube_channel_playlists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through 'Channel Live tab only' and the cache/cost behavior, but it never explicitly says 'use this when you need live streams' or names alternatives. An agent has to infer when to pick this over related sibling tools like youtube_channel_videos or youtube_channel_playlists, so usage guidance is only partially explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_channel_videosAInspect

Channel uploads with cursor pagination — exact publishedAt from reel_item_watch (same as channel-shorts). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
fastNoSet true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters.
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 per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and discloses several meaningful traits: cursor pagination, exact publishedAt sourcing, a 2-credit cost, no charge for empty results/failures, and cache semantics. It does not describe response structure or error behavior, but the disclosed operational details go well beyond the name and schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: purpose and pagination come first, followed by cost, failure/charging policy, and caching. Every sentence carries distinct useful information with no filler.

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?

The description covers operational essentials like cost, caching, and pagination, but with no output schema and no annotations it leaves out response shape, sort order, and explicit sibling differentiation. For a 5-parameter tool, this is adequate but not fully complete.

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 schema already fully documents url, fast, cache, limit, and cursor. The description adds a little extra meaning by explaining the cache=true benefit and the flat credit cost, but it does not materially deepen understanding of individual parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource (YouTube channel uploads) and the pagination mechanism, and the phrase 'same as channel-shorts' hints at consistency with a sibling tool. However, it lacks an explicit verb like 'list/retrieve' and does not directly contrast with youtube_channel_streams or youtube_channel_playlists.

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 is provided on when to choose this tool over siblings such as youtube_channel_shorts, youtube_channel_streams, or youtube_channel_playlists. The description only gives operational guidance about caching and credits, not tool-selection context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_comment_repliesAInspect

Replies under a top-level comment — parentReplyCount + cursor. Nested reply ids return 404. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.
commentIdYesID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full behavioral disclosure. It reveals the 2-credit cost, the no-charge guarantee for empty/failed calls, the cache behavior with cache=true, the pagination cursor pattern, and the 404 failure mode for nested IDs. This is unusually transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and efficient, with every sentence carrying distinct value: scope, failure behavior, cost, cache, and freshness. The most decision-relevant information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers cost, caching, pagination, and failure behavior, which is strong for an endpoint with no output schema or annotations. A minor gap is that the response payload beyond parentReplyCount and cursor is not described, but the tool name and schema largely compensate.

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 is 3. The description reinforces cursor and cache semantics and mentions parentReplyCount, but it does not add meaningful parameter meaning beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a precise resource ('Replies under a top-level comment') and a specific verb ('fetch'), making the tool's job unmistakable. It also differentiates from siblings by platform and by comment level, and the 'Nested reply ids return 404' line clarifies exactly which comments are acceptable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states the intended input is a top-level comment and warns against nested reply IDs. It does not explicitly name the sibling alternatives like youtube_comments or youtube_shorts_comments, but the scope is clear enough for an agent to route correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_commentsAInspect

Get comments on any YouTube video — text, author, likes, and truncated publishedTimeApprox from the relative label, with cursor pagination (nextCursor + hasMore). Flat 2 credits per call. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A3.7/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 transparency burden and does a good job: it discloses cursor pagination behavior, flat credit cost, no charge for empty/failed results, and cache semantics. The 'truncated publishedTimeApprox from the relative label' phrasing is slightly unclear, but overall behavior is well disclosed.

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?

The description is compact and front-loaded with the core purpose, then covers pagination, pricing, and cache. The redundant statements 'Flat 2 credits per call' and 'Costs 2 credits' waste a little space, but overall it is well structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description lists enough returned fields and pagination signals for an agent to understand the response shape. It also covers cost, failure behavior, and cache usage. The ambiguous 'from the relative label' phrase is a minor gap, but the tool remains usable.

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 is 3. The description reinforces cursor and cache usage but mostly restates what the schema already explains; it adds little new parameter-level meaning beyond the pricing context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves comments from a YouTube video and lists the returned fields (text, author, likes, publishedTimeApprox) plus pagination. It does not explicitly differentiate itself from close siblings like youtube_comment_replies or youtube_shorts_comments, but the resource scope is otherwise clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool ('Get comments on any YouTube video') and the URL schema reinforces platform matching, but it does not explicitly name alternatives or state when not to use it. Sibling differentiation is left mostly to the tool name and schema rather than the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_community_post_detailsAInspect

One community post — list schema + commentCount trio + isEdited. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube community post URL (/post/Ugkx… or /community?lb=). Trailing whitespace is stripped. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the full burden of behavioral disclosure. It usefully discloses the 1-credit cost, that empty results and failures are not charged, and that cache=true provides a free 24-hour cache hit while the default is a fresh fetch. This goes well beyond basic operation, though it does not cover authentication, rate limits, or response error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely compact and front-loads the core purpose in the first clause. Every sentence adds distinct information: scope, output fields, cost, billing behavior, and cache behavior. There is no filler or redundancy.

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 two-parameter tool, the description covers the main calling concerns: what is returned, cost, failure charging, and caching. However, there is no output schema, and the phrase 'list schema + commentCount trio + isEdited' is cryptic and does not clearly describe the response structure, leaving an agent uncertain about the exact return shape.

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 schema already documents both url and cache parameters thoroughly. The description mostly restates the cache behavior already present in the schema ('free 24h cache hit' vs. '0 credits on hit'), adding little new semantic value for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'One community post', which clearly identifies the tool as retrieving details for a single YouTube post rather than a list, and it names specific output fields (list schema, commentCount trio, isEdited). It distinguishes itself from the plural sibling youtube_community_posts, though it lacks an explicit verb like 'fetch' or 'retrieve' and uses some jargon such as 'commentCount trio'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The singular framing 'One community post' implies this tool is for individual post details, which contrasts with the sibling youtube_community_posts. However, it never explicitly states when to choose this tool over alternatives or when not to use it, and it does not reference any sibling by name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_community_postsCInspect

Community posts — channel{}, publishedTimeApprox, likeCountIsApproximate, linkedVideos[], cursor (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
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 1 credit per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

C2.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral burden and does add useful context: 1-credit cost, no charge for empty results or failures, 24h cache behavior, and default fresh fetching. However, the listed response fields are unexplained and pagination semantics are only hinted at through 'cursor', leaving the behavioral picture incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but structurally muddled: the opening is a fragment with unexplained field names, and 'cursor (1 credit)' appears redundant with the following 'Costs 1 credit.' It is not cleanly front-loaded and some tokens are ambiguous, so the brevity does not translate into clear conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description should clarify what the response contains, but the bare field names (channel{}, publishedTimeApprox, likeCountIsApproximate, linkedVideos[]) are left unexplained. Pagination is only hinted at via 'cursor', and there is no explicit statement of return shape, ordering, or how this endpoint relates to sibling community-post tools.

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 schema already documents url, cache, limit, and cursor in detail. The description only repeats cache and cursor concepts without adding new parameter meaning, formats, defaults, or constraints, so it earns the baseline score of 3.

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 tool name and opening phrase make it clear this relates to YouTube community posts, and the schema's url parameter confirms a channel-level resource. However, the description contains no verb and is written as a fragment listing fields (channel{}, publishedTimeApprox, likeCountIsApproximate, linkedVideos[], cursor), so it does not explicitly say 'list community posts for a channel' or distinguish itself from youtube_community_post_details.

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?

There is no guidance on when to use this tool versus youtube_community_post_details or youtube_channel_videos. The only usage hint is 'Pass cache=true for a free 24h cache hit', which is a parameter-level optimization rather than a selection criterion or alternative-routing instruction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_playlistAInspect

Playlist metadata only — title, channel{}, totalVideos, thumbnailUrl. No videos[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the load. It discloses pricing ('Flat 1 credit'), billing safety ('Empty results and failures are never charged'), and cache behavior ('free 24h cache hit'). It could add error/auth details, but the key run-cost and failure-cost behaviors are well covered.

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?

The core scope is front-loaded and every clause earns its place, but 'Flat 1 credit. Costs 1 credit.' is a redundant repetition that could be collapsed into one phrase.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given only two simple parameters, a fully-covered schema, and no output schema, the description supplies what is missing: return fields, the crucial exclusion of videos, cost, failure-charge policy, and cache behavior. An agent has enough to call it correctly.

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 coverage is 100%, so the schema already defines url and cache. The description's cache sentence adds practical context but mostly restates what the cache parameter description says ('24h response cache (0 credits on hit)', 'Default false'). No meaningful new parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with a precise scope: 'Playlist metadata only' and enumerates exact fields (title, channel{}, totalVideos, thumbnailUrl). The explicit 'No videos[]' draws a clear line against the sibling youtube_playlist_videos, so an agent can select it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly communicates when to use this tool: when only playlist metadata is needed, and 'No videos[]' rules out use when videos are required. It also gives a direct cache usage instruction. However, it never names the alternative youtube_playlist_videos explicitly, so the exclusion is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_playlist_videosAInspect

Paginated playlist contents — cursor/nextCursor/hasMore, same row shape as channel-videos. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
fastNoSet true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so exceptionally well. It discloses pagination mechanics (cursor/nextCursor/hasMore), flat per-page credit cost, free 24-hour cache behavior, and that empty results and failures are never charged. This gives the agent a strong, accurate behavioral model before invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four compact sentences with no fluff. It front-loads the core purpose, then packs cost, pagination, failure billing, and caching into dense but scannable clauses. Every sentence adds behavioral or usage-relevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description reasonably explains the return envelope via cursor/nextCursor/hasMore and refers to a known row shape from channel-videos. It also covers cost, cache, and failure behavior. It is slightly dependent on the agent knowing what channel-videos returns, which prevents a perfect score, but it is otherwise complete for a paginated-list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds further meaning by clarifying pagination contract (returned nextCursor value), the distinction between cache and fresh fetches, and the per-page cost tied to limit usage. These details go beyond the schema properties and help the agent reason about trade-offs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as retrieving paginated playlist contents, which aligns with the name youtube_playlist_videos. It references a specific row shape shared with channel-videos, which gives some orientation, but it does not explicitly differentiate this tool from siblings like youtube_playlist or youtube_channel_playlists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description conveys clear usage context: paginated listing, cursor-based pagination, caching options, and costs. However, it never explicitly states when to choose this tool over alternatives such as youtube_playlist or youtube_channel_videos, nor does it provide exclusions or comparison conditions. The 'same row shape as channel-videos' hint is indirect rather than actionable routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_shorts_commentsAInspect

Comments on a YouTube Short — rejects long-form videos (≤3 min only). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
limitNoMax items to return (default 50, max 500). Flat 2 credits per call.
cursorNoPagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden, and it does well: it discloses the 2-credit cost, no charge on empty results or failures, the 24h cache behavior, and the long-form rejection. It doesn't cover rate limits or auth, but the key operational edge cases for a read-only comments fetch are disclosed.

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?

The description is compact and front-loaded: the core scope constraint comes first, followed by cost and caching behavior. There is minor redundancy with the cache parameter's schema description, but the overall size is well controlled and no fluff is present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has four parameters and no annotations or output schema, but the schema descriptions are rich and the top description adds cost, error behavior, and cache semantics. The only notable gap is the absence of any detail about the response shape beyond the cursor hint, which is not critical for selecting or invoking this tool.

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%, and the schema already documents defaults, max limit, pagination cursor behavior, URI format, and platform matching. The top description adds mostly cost and cache policy, which is useful but not parameter-specific. Since the schema handles parameter semantics fully, a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: getting comments on a YouTube Short, with an explicit ≤3-minute constraint. It clearly distinguishes itself from generic YouTube comment tools by rejecting long-form videos, which is relevant given siblings like youtube_comments and youtube_comment_replies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description and url parameter give clear guidance: use for Shorts only, long-form returns HTTP 422 and should go to a /v1/youtube/… endpoint instead. The cache=true hint also tells agents when to use the cheaper path. It doesn't explicitly name the exact alternative endpoint, but the routing guidance is strong enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_shorts_detailsAInspect

YouTube Short metadata — same schema as Video Details, with isShort:true; long-form videos get HTTP 422. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently covers cost per request, that empty results and failures are not charged, the 422 error behavior for long-form videos, and the cache semantics. This gives an agent a strong, accurate picture of what happens when invoking the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the core purpose, and every sentence adds value: scope, schema similarity, error behavior, pricing, refund policy, and cache option. There is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only two parameters, full schema coverage, and no output schema, the description is complete enough. It addresses what the tool returns conceptually, error conditions, cost, cache behavior, and the alternative endpoint for long-form videos, covering everything an agent needs to invoke it correctly.

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 schema already documents both parameters fully. The description adds tone and cost context around cache, but it largely mirrors the schema's meaning rather than introducing new parameter semantics. The baseline of 3 is appropriate here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns YouTube Short metadata, explicitly scoped to Shorts with isShort:true, and differentiates it from the long-form video endpoint by noting HTTP 422 for non-Shorts. This makes the tool's purpose distinct and immediately understandable among many sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says long-form videos return HTTP 422 and to use the matching /v1/youtube/… endpoint instead, giving a clear when-not-to-use condition. It also provides guidance on the cache parameter, telling users when to pass cache=true for a free 24h cache hit versus the default fresh fetch.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_shorts_summarizeAInspect

AI summary of a YouTube Short — rejects long-form videos (≤3 min only). Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations at all, the description carries the full burden and delivers: pricing ('Costs 3 credits'), failure-charge policy ('Empty results and failures are never charged'), and caching semantics ('cache=true for a free 24h cache hit (default always fresh)'). These are exactly the non-obvious behavioral traits an agent needs to predict the cost and side effects of an invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with zero filler: purpose is front-loaded, constraints and cost follow immediately, then cache guidance. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-param tool with no annotations and no output schema, the description covers purpose, input constraints, cost, failure policy, and cache behavior — all needed for correct invocation. The only gap is that the returned summary's format or verbosity is never described, which is notable given there is no output schema to fill that in.

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 is 3 and the schema already fully documents url, cache, and language. The description's mention of cache=true and the credit cost is largely redundant with the schema's own '0 credits on hit' note, adding marginal but non-essential value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('AI summary of a YouTube Short') and immediately adds the defining scope constraint ('rejects long-form videos ≤3 min only'). This clearly separates it from youtube_summarize/video_summarize and other platform summarize siblings even before the schema's 422 note is read.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool (Shorts only, ≤3 min) and the schema explicitly warns 'Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead' and cautions against cross-platform URLs. However, the alternative endpoint is referenced generically rather than naming the sibling tool (youtube_summarize), so an agent must infer which sibling that is.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_shorts_transcriptAInspect

Transcript for a YouTube Short — rejects long-form videos (≤3 min only). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A4.9/5.0
Behavior5/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 handles it well. It discloses cost ('Costs 1 credit'), failure policy ('Empty results and failures are never charged'), caching behavior ('free 24h cache hit' vs 'default always fresh'), and the long-form rejection behavior. These are meaningful operational traits beyond what the schema reveals.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence earns its place: purpose, duration constraint, cost, failure policy, cache behavior, and default. It is front-loaded with the core action and differentiator, and contains no filler or repetition of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema and no annotations, the description covers the key decision factors: what the tool does, when it fails, what it costs, how caching works, and where to route long-form videos. Combined with 100% parameter coverage, nothing essential is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds extra value by explaining credit cost, cache semantics, and that cache=true yields a free hit while default is always fresh. It also reinforces the URL platform-matching constraint found in the schema, though it doesn't add new meaning for the language parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the exact purpose — 'Transcript for a YouTube Short' — and immediately adds a distinguishing constraint: 'rejects long-form videos (≤3 min only)'. This clearly separates it from general youtube_transcript and other video transcript tools without requiring schema inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage guidance is explicit: it tells the agent this tool only accepts Shorts under 3 minutes, and the URL parameter description directs long-form videos to 'the matching /v1/youtube/… endpoint instead'. It also warns against cross-platform URLs, leaving no ambiguity about when this tool should or shouldn't be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_summarizeAInspect

GPT summary from YouTube's published captions — same source as /transcript. Flat 3 credits; caption-miss 404 is free. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A3.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral disclosure. It transparently covers credit costs (flat 3, free on cache hit, free on failures/empty results), caption source (published captions), and cache semantics. This exceeds what a typical summary tool description provides.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, but contains redundancy: 'Flat 3 credits' and 'Costs 3 credits' say the same thing, and the cache sentence mostly repeats the schema's cache parameter description. Some tightening would make it more efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers source, cost, cache, and failure behavior, which is strong for a simple three-parameter tool. It lacks an explicit statement of return format, but 'GPT summary' sufficiently implies the output. No output schema exists, so a touch more return detail could make it fully complete, but nothing critical 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 parameters are already fully documented in the schema. The description adds tool-level pricing and cache behavior, but those largely duplicate the cache parameter's schema description rather than adding new parameter-specific meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('GPT summary from YouTube's published captions') and resource (YouTube video). It is distinct from transcript tools by saying 'summary' and 'same source as /transcript', though it does not explicitly differentiate from youtube_shorts_summarize or video_summarize.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for YouTube caption summaries and hints at the transcript alternative via 'same source as /transcript'. It gives concrete cache usage guidance, but does not explicitly state when to choose this over youtube_transcript, youtube_shorts_summarize, or video_summarize.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_transcriptAInspect

YouTube's published captions with timestamps — not speech-to-text. Flat 1 credit; 404 is free. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
languageNoPreferred caption language as an ISO code, e.g. "en". Defaults to auto-detect.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No hay anotaciones, por lo que la descripción asume toda la responsabilidad de transparencia. Aporta información útil sobre costos ('Flat 1 credit; 404 is free'), ausencia de cargos por fallos/resultados vacíos, y comportamiento de caché ('Pass cache=true for a free 24h cache hit'). Falta mencionar detalles como el formato exacto de retorno o posibles límites, pero cubre bien los aspectos clave de comportamiento.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

La descripción es breve (tres frases) y va al grano: primero define qué es, luego el costo y finalmente el comportamiento de caché. No hay relleno y cada oración contribuye a la comprensión del funcionamiento de la herramienta.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

La herramienta tiene 3 parámetros, no tiene output schema ni anotaciones. La descripción cubre el tipo de datos, el costo, el manejo de errores y el caché. Sería más completa con una nota sobre el formato de respuesta o una referencia a alternativas para otras plataformas (p.ej., video_transcript), pero en general es suficiente para un uso correcto.

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?

La cobertura del esquema es del 100%, por lo que el baseline es 3. La descripción no añade significado adicional a los parámetros: el parámetro 'cache' ya se explica en el schema ('0 credits on hit') y la descripción solo repite esa información. No aporta contexto nuevo sobre 'url' o 'language'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Descripción comienza con 'YouTube's published captions with timestamps — not speech-to-text', identificando claramente el recurso (subtítulos publicados de YouTube) y el formato (con marcas de tiempo). Diferencia de speech-to-text, aunque no distingue explícitamente de hermanos como youtube_shorts_transcript o video_transcript.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

La frase 'not speech-to-text' proporciona una indicación de cuándo no usar esta herramienta, sugiriendo que otras herramientas (como youtube_audio_transcript) son para audios transcritos. Sin embargo, no se nombran alternativas explícitas ni se dan reglas claras de selección entre los múltiples transcriptores de la lista de herramientas hermanas.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_video_detailsAInspect

YouTube video metadata + stats. Always includes degraded / degradedReason — retry when degraded is true. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden, and it does an excellent job: it discloses degraded-response behavior with retry guidance, credit costs, no-charge policy for empty/failed results, and cache semantics. This goes well beyond a basic one-line tool description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence earns its place: purpose, degraded behavior, credit cost, no-charge policy, and cache usage. It is tight, front-loaded, and avoids boilerplate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description covers the key operational contexts: when to retry, cost implications, and caching trade-offs. It does not enumerate returned metadata/stats fields beyond degraded/degradedReason, but the high-level 'metadata + stats' plus the explicit operational details are sufficient for the low complexity.

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 is 3. The in-schema url and cache descriptions are extensive and self-sufficient; the tool description mostly restates cache behavior without adding materially new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Describes the tool clearly as 'YouTube video metadata + stats,' which distinguishes it from YouTube sibling tools focused on transcripts, summaries, or audio. The impied verb is 'fetch details,' so the purpose is understandable, but it does not explicitly name the siblings it is not or define an exclusion boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: if an agent needs YouTube video metadata and stats, this is the tool. It also gives operational guidance such as retrying when degraded is true and using cache=true for free cached results. However, it does not explicitly state when to choose this over sibling tools like youtube_video_transcript or youtube_video_summarize.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

youtube_video_sponsorsBInspect

SponsorBlock community segments — free while the CC BY-NC-SA commercial-use exception is pending. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cacheNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
minVotesNoMinimum SponsorBlock votes to keep a segment. Default 0 (drops community-rejected votes < 0).
categoriesNoComma-separated categories. Default sponsor,selfpromo,interaction. Also intro,outro,preview,music_offtopic,poi_highlight,filler.

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does disclose meaningful behavior: it is free, empty/failed calls are not charged, and cache=true gives a 24-hour hit while the default is always-fresh. It does not cover response format, pagination, or any output semantics, but the cost and freshness model is a genuine beyond-schema contribution.

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?

The description is short and front-loads the core resource before behavioral details. Some redundancy exists ('free...', 'Costs 0 credits', 'free 24h cache hit') and the first fragment is not a complete sentence, but it remains efficient.

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 4-parameter tool with no annotations and no output schema, the description gives enough to invoke it but not enough to deeply interpret results. It omits what a SponsorBlock segment looks like and any guidance on limitations or licensing implications. The cost/cache focus is useful, but overall context is incomplete.

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 is 3; the description mostly repeats cache and credit behavior already present in the schema. It adds no new meaning for url, minVotes, or categories. This is acceptable but not value-adding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource (SponsorBlock community segments for a YouTube video) and the unique domain, making the purpose fairly clear from name plus content. However, it lacks a concrete verb such as 'retrieve' or 'list' and does nothing to distinguish itself from the many youtube_* siblings. The url parameter and category names help, but the purpose is implied rather than explicit.

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 is given on when to prefer this tool over alternatives such as youtube_video_details, video_summarize, or youtube_transcript; it only discusses pricing and caching. The schema's URL warning is a constraint, not a selection guideline. An agent is left to infer when SponsorBlock segments are needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 12 tool updates
    • Changedfacebook_marketplace_search4 fields changed
      • changedInput schema / properties / daysSinceListed / description
        Previous value: -"1 (24h), 7, or 30."New value: +"Facebook calendar-day recency: 1 = since the start of yesterday (not a rolling 24 hours), 7, or 30."
      • changedInput schema / properties / location / description
        Previous value: -"Search-origin city or place name, e.g. 'Austin, TX' (query echo — not each listing's city)."New value: +"Alias of searchLocation. Prefer searchLocation. Either one is required."
      • addedInput schema / properties / searchLocation
        Added value: +{
        +  "description": "Search-origin city or place name, e.g. 'Austin, TX'. Required — there is no default city. Echoed on the envelope and inside filters. Not listings[].location.",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "q",
        -  "location"
        -]New value: +[
        +  "q",
        +  "searchLocation"
        +]
    • Changedinstagram_comments1 field changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true only when nextCursor is present."New value: +"Pagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true when nextCursor is set, or when more exist and cannot be paged (nextCursor null + truncatedReason)."
    • Changedinstagram_hashtag_search1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag without the # (min 2 characters)."New value: +"Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
    • Changedinstagram_profile_search1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Account name, @handle, or profile URL to resolve (min 2 characters). Not a niche keyword search."New value: +"Account name, @handle, or profile URL to resolve (min 2 characters). A leading _ is stripped. Not a niche keyword search."
    • Changedinstagram_reels_search1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag (without #) or keyword (min 2 characters)."New value: +"Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
    • Changedthreads_search1 field changed
      • addedInput schema / properties / orderBy
        Added value: +{
        +  "description": "Sort the fetched page: relevant (default, Meta Top / similar to query), post_dated (newest publishedAt first), or engagement (likes+replies+reposts+quotes+views). Unknown values are 400.",
        +  "type": "string"
        +}
    • Changedtiktok_ad_library_top_ads1 field changed
      • changedInput schema / properties / match / description
        Previous value: -"Keyword token mode: \"any\" (default, OR) or \"all\" (AND). Zero literal hits → empty ads[] (never an unfiltered soft list)."New value: +"Keyword token mode: \"any\" (default, OR) or \"all\" (AND). Zero whole-word hits still return TikTok's keyword-ranked page as matchBasis=ranked (literalMatches=0)."
    • Changedtiktok_popular_songs1 field changed
      • changedInput schema / properties / page / description
        Previous value: -"Page number (default 1)."New value: +"Creative Center page (1–20). Echoed on a native chart 200 with hasMore. Omitted on the extended path — that list is one page."
    • Changedtiktok_search_by_hashtag1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag for the /tag/{name} challenge feed, with or without # (min 2). Not a keyword query."New value: +"Single hashtag token for the /tag/{name} challenge feed, with or without # (min 2). Spaces are 400 — use /v1/tiktok/search/top for a keyword query."
    • Changedtiktok_shop_product_details2 fields changed
      • changedInput schema / properties / region / description
        Previous value: -"Two-letter market region for the secondary fetch path (default US). Primary SSR uses the product URL's market; empty/partial non-US results are often a TikTok exposure limit."New value: +"Two-letter market region (default US). A region= or oec_region= query on the product URL wins over this default so a BR share URL is not fetched as US. Echoed as data.region."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok Shop product URL, e.g. https://shop.tiktok.com/view/product/1731410956394792439?region=BR or https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtruth_social_user_posts1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max posts to return (default 20, max 80). Capped at 80 because Truth Social's statuses page is ~40 items — use nextCursor for more pages. Flat 2 credits per call. Response `source` is native or extended."New value: +"Max posts to return (default 20, max 80). Truth Social's statuses page is ~20 items — a full page returns nextCursor. On the extended path hasMore can be true with nextCursor null (truncatedReason=single_page_only). Flat 2 credits."
    • Changedyoutube_hashtag_search1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag with or without the # (min 2 characters)."New value: +"Hashtag with or without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
  2. 169 tool updates
    • Changedamazon_shop_page1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedanalytics_compare1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedanalytics_post1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedbluesky_post_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedbluesky_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedbluesky_user_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_ad_library_ad_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_ad_library_ad_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_ad_library_company_ads1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_ad_library_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_ad_library_search_companies1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_comment_replies1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_event_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_event_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_group_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_marketplace_item1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_marketplace_location_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_marketplace_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_page_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_profile_events1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_profile_photos1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_profile_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_profile_reels1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedfacebook_summarize1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_activity1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_contributions1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_followers1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_following1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_pull_requests1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_repositories1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_repository1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_trending_developers1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_trending_repositories1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgithub_user1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgoogle_ad_library_ad_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgoogle_ad_library_advertiser_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedgoogle_ad_library_company_ads1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_basic_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedinstagram_channel_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedinstagram_channel_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_channel_reels1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_embed1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_hashtag_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_highlights1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_highlights_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_reels_by_audio_id1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_reels_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_summarize1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_tagged_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedinstagram_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedkick_clip2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedkomi_page2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedkwai_post1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedkwai_profile1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedkwai_user_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkbio_page2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedlinkedin_ad_library_ad_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_ad_library_search_ads1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_company1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_company_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_post_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_post_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_profile1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedlinkedin_search_posts2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
      • changedInput schema / properties / sort / description
        Previous value: -"relevance or date. Default relevance."New value: +"relevance (default, search-engine rank — dates can span years) or date (recency)."
    • Changedlinkme_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedlinktree_page2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedpillar_page2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedpinterest_board1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedpinterest_pin_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedpinterest_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedpinterest_user_boards1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedpinterest_user_pins1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_post_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_post_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_post_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_subreddit_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_subreddit_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedreddit_subreddit_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedrumble_channel_videos1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedrumble_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedrumble_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedrumble_video_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedrumble_video_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedsnapchat_user_profile1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedsoundcloud_artist2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedsoundcloud_artist_tracks1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedsoundcloud_track2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedspotify_album1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedspotify_artist1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedspotify_podcast1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedspotify_podcast_episodes1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedspotify_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedspotify_track1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedthreads_post_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedthreads_profile1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedthreads_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedthreads_search_users1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedthreads_user_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_ad_library_ad_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_ad_library_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_ad_library_top_ads1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_audience_demographics1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_channel_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedtiktok_channel_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_comment_replies1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_live1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_live_info1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_music_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_popular_creators2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedtiktok_popular_hashtags1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_popular_songs1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_profile_region2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 7d response cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.",
        +  "type": "string"
        +}
    • Changedtiktok_search_by_hashtag1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_search_suggestions1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_search_users1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_shop_product_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_shop_product_reviews1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_shop_products1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_shop_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_shop_user_showcase1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_song_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_summarize1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_top_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_trending_feed1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_user_followers1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_user_followings1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtiktok_video_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtruth_social_post1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtruth_social_profile1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtruth_social_user_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitch_clip2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedtwitch_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedtwitch_user_schedule1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitch_user_videos1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitter_community1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitter_community_tweets1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitter_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d. Envelope includes cached + cachedAt on hits."New value: +"Set true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d."
      • changedInput schema / properties / cacheMaxAge / description
        Previous value: -"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt."New value: +"Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
    • Changedtwitter_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitter_tweet_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedtwitter_user_tweets1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_audio_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_channel_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_channel_playlists1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_channel_shorts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_channel_streams1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_channel_videos1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_comment_replies1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_community_post_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_community_posts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_hashtag_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_playlist1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_playlist_videos1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_search1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_shorts_comments1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_shorts_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_shorts_summarize1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_shorts_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_summarize1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_transcript1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_trending_shorts1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_video_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
    • Changedyoutube_video_sponsors1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
  3. 1 tool update
    • Changedtiktok_music_posts1 field changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. hasMore is true only when nextCursor is present."
  4. 1 tool update
    • Changedinstagram_comments1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true only when nextCursor is present.",
        +  "type": "string"
        +}
  5. 12 tool updates
    • Changedinstagram_hashtag_search1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 200). Flat 2 credits per call."New value: +"Max items to return (default 20, max 50). Flat 2 credits per call."
    • Changedinstagram_reels_search1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 200). Flat 2 credits per call."New value: +"Max items to return (default 20, max 50). Flat 2 credits per call."
    • Changedinstagram_trending_reels2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Default true (cache-first): serve the per-country response cache when present (TTL 4 hours). Every successful call costs 2 credits — including cache hits. Set false to force a live scrape (typically under 20s, hard-capped at 110s); the fresh result still refreshes the cache."New value: +"Default true (cache-first): serve the per-country response cache when present (TTL 4 hours). Every successful call costs 2 credits — including cache hits. Set false to force a live scrape (measured miss 45–75s, hard-capped at 110s). Raise client timeouts above 90s — n8n/Make defaults will fail a miss. The fresh result still refreshes the cache."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 10, max 200). Flat 2 credits per call."New value: +"Max items to return (default 10, max 50). Flat 2 credits per call."
    • Changedkick_clip1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Kick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel URL/@username for recent clips[]. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Kick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel input for recent clips[]: kick.com/{name}, kick.com/@{name}, @{name}, or {name}. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_channel_details1 field changed
      • changedInput schema / properties / raw / description
        Previous value: -"Set true to include TikTok's upstream user/statsV2 blob under raw (privacy ints, profileTab, …). Default false — curated fields only."New value: +"Set true to include TikTok's upstream user/statsV2 blob under raw, plus createTimeUnix (unix twin of createTime). Default false — curated fields only."
    • Changedtiktok_comment_replies1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_comments1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_popular_hashtags1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"Optional niche seed for legacy co-occurrence + challenge/detail enrich. Omit, or pass trending, to use the Creative Center chart. A chart miss is 502 — trending is not treated as a niche seed."New value: +"Optional niche seed for co-occurrence + challenge/detail enrich. Omit, or pass trending, to try the Creative Center chart (25s); a miss falls through to related tags for fyp (source=niche_fallback) and opens a service-wide chart circuit. Later default calls skip the chart (chartStatus=skipped_circuit_open) until the cooldown expires. Any other value skips the chart."
    • Changedtiktok_summarize1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_transcript1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_video_details1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_audio_transcript1 field changed
      • changedInput schema / properties / maxCredits / description
        Previous value: -"Refuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits)."New value: +"Refuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits). The estimate is on every success and, when the extract miss is retryable, as estimatedCreditsIfRetried."
  6. 1 tool update
    • Changedthreads_user_posts1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 100). Threads only exposes the last ~20–30 public posts on this surface — asking for 100 will not return 100. Flat 2 credits on the native path; Apify fallback ~0.7/post (min 2)."New value: +"Max items to return (default 20, max 100). Threads exposes only a short window of recent public posts on this surface. limit caps what you receive; it cannot increase what Threads returns. Flat 2 credits on every successful path (native and extended)."
  7. 177 tool updates
    • Changedaccount_daily_usage1 field changed
      • changedInput schema / properties / days / description
        Previous value: -"Number of days to include. Default 30, max 365."New value: +"Number of days to include (default 30, max 365)."
    • Changedaccount_most_used_routes2 fields changed
      • changedInput schema / properties / days / description
        Previous value: -"Number of days to include. Default 30, max 365."New value: +"Number of days to include (default 30, max 365)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max rows to return. Default 20, max 100. Free — does not consume credits."New value: +"Max rows to return (default 20, max 100). Free — does not consume credits."
    • Changedaccount_request_history6 fields changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor from nextCursor (createdAt of the last row). Leave empty for the first page.",
        +  "type": "string"
        +}
      • changedInput schema / properties / endpoint / description
        Previous value: -"Exact Captapi path, e.g. /v1/instagram/basic-profile."New value: +"Exact Captapi path filter, e.g. /v1/instagram/basic-profile."
      • changedInput schema / properties / limit / description
        Previous value: -"Max rows to return. Default 50, max 500. Free — does not consume credits."New value: +"Max rows to return (default 50, max 500). Free — does not consume credits."
      • changedInput schema / properties / since / description
        Previous value: -"Inclusive createdAt lower bound (ISO date or datetime)."New value: +"Inclusive lower bound on createdAt (ISO date or datetime)."
      • changedInput schema / properties / statusCode / description
        Previous value: -"HTTP status filter, e.g. 500."New value: +"Filter by HTTP status code (e.g. 500)."
      • changedInput schema / properties / until / description
        Previous value: -"Exclusive createdAt upper bound (ISO date or datetime)."New value: +"Exclusive upper bound on createdAt (ISO date or datetime)."
    • Changedamazon_shop_page3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max products to include (default 20, max 200; 0 = seller metadata only). Billed per storefront page — 1 credit per ~16 products."
      • changedInput schema / properties / url / description
        Previous value: -"Amazon seller storefront URL (/sp?seller=… or /s?me=…) or raw seller ID. Not influencer /shop/<handle> pages. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Amazon seller storefront URL (/sp?seller=… or /s?me=…) or raw seller ID. Not influencer /shop/<handle> pages. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedanalytics_compare2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / urls / description
        Previous value: -"Comma-separated URLs (up to 10), any mix of the 11 Post Analytics platforms."New value: +"Comma-separated post/video/reel URLs (up to 10), any mix of the same 11 platforms as Post Analytics. Example: a TikTok URL and a YouTube URL in one call."
    • Changedanalytics_post2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Post/video/reel URL from YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform auto-detected — cross-platform URLs are expected. Not Kwai/Twitch/Spotify/Snapchat."New value: +"Public post/video/reel URL from one of 11 platforms: YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform is auto-detected — cross-platform URLs are expected here (unlike single-platform endpoints). Not in scope: Kwai, Twitch, Spotify, Snapchat, and other Captapi platforms."
    • Changedbluesky_post_details3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / depth
        Added value: +{
        +  "description": "Reply nesting levels under the post (0 = post only with no replies[], default 1, max 6). Maps to Bluesky getPostThread depth.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Bluesky post URL, e.g. https://bsky.app/profile/handle/post/RKEY. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Bluesky post URL, e.g. https://bsky.app/profile/handle/post/RKEY. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedbluesky_profile3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Bluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Bluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedbluesky_user_posts6 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not invent a cursor from publishedAt — the feed is ordered by feed time (reposts sort by repost time)."
      • addedInput schema / properties / filter
        Added value: +{
        +  "description": "Bluesky getAuthorFeed filter: posts_with_replies (default), posts_no_replies, posts_with_media, posts_and_author_threads, or posts_with_video. Controls replies/media/threads — not reposts. Use includeReposts=false to drop reposts.",
        +  "type": "string"
        +}
      • addedInput schema / properties / includeReposts
        Added value: +{
        +  "description": "When false, omit repost rows (reasonRepost). Default true — reposts are included and marked with isRepost / repostedBy / repostedAt.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 100. Billed per result."New value: +"Max items to return (default 25, max 100). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Bluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Bluesky profile URL, @handle, or handle, e.g. https://bsky.app/profile/handle.bsky.social. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_ad_library_ad_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Meta Ad Library ad URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Meta Ad Library ad URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_ad_library_ad_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Meta Ad Library ad URL or ad ID. Returns written copy, not a speech transcript. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Meta Ad Library ad URL or ad ID. Returns the ad's written copy — headline, body text, CTA and landing URL. Meta does not expose ad audio, so this is not a speech transcript. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_ad_library_company_ads4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code. Default US."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call on the native path; the extended fallback bills per returned ad."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook page URL or Meta Ad Library URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"pageId from /search-companies (preferred), libraryUrl, vanity page URL (facebook.com/nike/), or Ad Library URL with view_all_page_id. Do not pass profileId from facebook.com/{digits}/ when it differs from pageId. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_ad_library_search13 fields changed
      • changedInput schema / properties / ad_type / description
        Previous value: -"all (default) or political_and_issue_ads."New value: +"all (default) or political_and_issue_ads. Spend/impressions are typically only filled for political/issue ads."
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code (e.g. US, GB, DE). Default US."
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor from a previous nextCursor. Pages through the current Meta HTML result batch.",
        +  "type": "string"
        +}
      • changedInput schema / properties / end_date / description
        Previous value: -"Delivery start on/before YYYY-MM-DD."New value: +"Only ads with delivery start on/before this date (YYYY-MM-DD)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / media_type / description
        Previous value: -"ALL (default), IMAGE, VIDEO, MEME, IMAGE_AND_MEME, or NONE."New value: +"Creative filter: ALL (default), IMAGE, VIDEO, MEME, IMAGE_AND_MEME, or NONE."
      • addedInput schema / properties / platforms
        Added value: +{
        +  "description": "Comma-separated publisher platforms to keep: FACEBOOK, INSTAGRAM, MESSENGER, AUDIENCE_NETWORK, THREADS.",
        +  "type": "string"
        +}
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keyword, brand, or advertiser to search Meta Ad Library (min 2 characters)."
      • changedInput schema / properties / sort_by / description
        Previous value: -"total_impressions or relevancy_monthly_grouped."New value: +"Meta sort mode: total_impressions or relevancy_monthly_grouped."
      • changedInput schema / properties / start_date / description
        Previous value: -"Delivery start on/after YYYY-MM-DD."New value: +"Only ads with delivery start on/after this date (YYYY-MM-DD)."
      • changedInput schema / properties / status / description
        Previous value: -"ACTIVE (default), INACTIVE, or ALL."New value: +"Ad delivery status: ACTIVE (default), INACTIVE, or ALL. Use ACTIVE for \"what are they running now?\"."
      • addedInput schema / properties / trim
        Added value: +{
        +  "description": "When true, omit cards/images/videos typed arrays (media[] stays). Captapi payloads are already lean vs Meta nested snapshots.",
        +  "type": "boolean"
        +}
    • Changedfacebook_ad_library_search_companies4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code. Default US."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Company or brand name to search for (min 2 characters). Name-matched — off-brand pages are dropped."
    • Changedfacebook_comment_replies4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / commentId / description
        Previous value: -"ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id."New value: +"ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook post URL the comment belongs to. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook post URL the comment belongs to. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_comments4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / feedbackId / description
        Previous value: -"Post feedback id from /v1/facebook/details. Prefer when you already have it."New value: +"Post feedback id from /v1/facebook/details (base64 feedback:POSTID). Prefer when you already have it — also accepts feedback_id."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook post or Reel URL. Omit when feedbackId is set."New value: +"Facebook post or Reel URL. Omit when feedbackId is set. The URL platform must match this endpoint's platform."
    • Changedfacebook_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public Facebook video or post URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_event_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook event URL, e.g. https://facebook.com/events/ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook event URL, e.g. https://facebook.com/events/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_event_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / from / description
        Previous value: -"Inclusive local start date filter YYYY-MM-DD."New value: +"Inclusive local start date filter YYYY-MM-DD. Use for upcoming-only windows — Facebook/SERP may return past events."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 200). Billed 2 credits flat on the native path; ~2 credits per returned event on the Apify fallback — check `source` in the response."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change)."
      • changedInput schema / properties / upcoming / description
        Previous value: -"When true and from is omitted, sets from to today's UTC date."New value: +"When true and from is omitted, sets from to today's UTC date so past events are dropped."
    • Changedfacebook_group_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / sortBy / description
        Previous value: -"TOP_POSTS | RECENT_ACTIVITY | CHRONOLOGICAL (default) | CHRONOLOGICAL_LISTINGS."New value: +"TOP_POSTS | RECENT_ACTIVITY | CHRONOLOGICAL (default) | CHRONOLOGICAL_LISTINGS. Maps to Facebook sorting_setting."
      • changedInput schema / properties / url / description
        Previous value: -"Public Facebook group URL, e.g. https://facebook.com/groups/ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public Facebook group URL, e.g. https://facebook.com/groups/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_marketplace_item2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook Marketplace item URL, e.g. https://www.facebook.com/marketplace/item/2467979733629080/ The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook Marketplace item URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_marketplace_location_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 10, max 50. Flat 2 credits per call."New value: +"Max items to return (default 10, max 50). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"City/place query. Bare 'Austin' may return TX/MN/IN; include a state for a single hit."New value: +"City/place query. Bare names like 'Austin' may return multiple candidates (TX/MN/IN); include a state for a single hit (e.g. 'Austin, TX')."
    • Changedfacebook_marketplace_search10 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / condition / description
        Previous value: -"new, like_new, good, fair."New value: +"new, like_new, good, fair (comma-separated ok)."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor from a previous nextCursor."New value: +"Opaque pagination cursor from a previous nextCursor."
      • changedInput schema / properties / deliveryMethod / description
        Previous value: -"local_pickup | shipping | all."New value: +"local_pickup | shipping | all. Shipped listings can appear nationwide outside radiusMiles — use local_pickup for nearby-only; rows expose isLocal / shipsOutsideRadius."
      • changedInput schema / properties / details / description
        Previous value: -"Set true for description/condition/coordinates/full gallery (2 + 2 credits per listing). Cover photo is included even when false."New value: +"When true, adds description/condition/coordinates/full photo gallery/seller/distanceMiles — billed as 2 + 2 credits per listing. Default false → flat 2 credits; cover photo is still in image."
      • changedInput schema / properties / details / type
        Previous value: -"string"New value: +"boolean"
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"How many listings to return (1–200). Flat 2 credits when details=false; details=true billed as 2 + 2 per listing."
      • changedInput schema / properties / location / description
        Previous value: -"City or place name, e.g. 'Austin, TX'."New value: +"Search-origin city or place name, e.g. 'Austin, TX' (query echo — not each listing's city)."
      • changedInput schema / properties / q / description
        Previous value: -"Product or keyword to search for (min 2 chars)."New value: +"Product or keyword to search Facebook Marketplace for."
      • changedInput schema / properties / radiusMiles / description
        Previous value: -"Radius in miles (1–500 discrete values)."New value: +"Radius in miles: 1,2,5,10,20,40,60,80,100,250,500. Does not exclude nationwide shipped inventory."
    • Changedfacebook_page_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook page URL, e.g. https://facebook.com/PageName. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook page URL, @handle, or page name, e.g. https://facebook.com/PageName. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_profile_events3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 200). Billed 2 credits flat on the native path; ~2 credits per returned event on the Apify fallback — check `source` in the response."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change)."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook profile or page URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_profile_photos3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). The public /photos grid is a single SSR batch (often ~8) — retrievableCount is that batch, not a promise Facebook will fill limit. Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook profile or page URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_profile_posts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 4, max 4). The logged-out listing hop is ~23–29s typical, hard-capped at 40s. Each hydrate is typically 6–10s (can be ~100ms when listing already carried the post) and is capped at 12s. The next-item fit check uses that 12s cap, not the typical 6–10s, so a call cannot exceed 60s. The loop stops when the next item would miss the 60s deadline and returns what it has (truncatedReason=hydrate-budget | deadline). Asking for 20 cannot return 20 inside that ceiling. Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook profile or page URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_profile_reels3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Facebook profile or page URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_summarize2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public Facebook video or post URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedgithub_activity3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Opaque cursor from previous nextCursor. Stops at 90-event ceiling."New value: +"Opaque cursor from a previous nextCursor. Pagination stops after GitHub's 90-event public activity ceiling."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 90. Billed per result."New value: +"Max items to return (default 30, max 90). Billed per result."
    • Changedgithub_contributions2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL, e.g. getify."New value: +"GitHub username or profile URL, e.g. getify or https://github.com/getify."
    • Changedgithub_followers3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Opaque cursor from previous nextCursor (GitHub Link page=)."New value: +"Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Billed per result."New value: +"Max items to return (default 30, max 100). Billed per result."
    • Changedgithub_following3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Opaque cursor from previous nextCursor (GitHub Link page=)."New value: +"Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Billed per result."New value: +"Max items to return (default 30, max 100). Billed per result."
    • Changedgithub_pull_requests5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Opaque cursor from previous nextCursor (GitHub Link page=)."New value: +"Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Billed per result."New value: +"Max items to return (default 30, max 100). Billed per result."
      • changedInput schema / properties / repo / description
        Previous value: -"Repository URL or owner/name."New value: +"Repository URL or owner/name, e.g. vercel/next.js."
      • changedInput schema / properties / state / description
        Previous value: -"open (default), closed, or all — echoed as data.state."New value: +"open (API default), closed, or all. Echoed as data.state. Docs example uses closed so mergedAt is visible."
    • Changedgithub_repositories7 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Opaque cursor from previous nextCursor (GitHub Link page=)."New value: +"Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
      • changedInput schema / properties / direction / description
        Previous value: -"asc or desc (default desc)."New value: +"asc or desc (default desc). Echoed as data.direction."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Billed per result."New value: +"Max items to return (default 30, max 100). Billed per result."
      • changedInput schema / properties / sort / description
        Previous value: -"created|updated|pushed|full_name (default updated)."New value: +"created | updated | pushed | full_name (default updated). Not stars — GitHub's user-repos API has no stars sort. Echoed as data.sort."
      • changedInput schema / properties / type / description
        Previous value: -"owner|member|all (default owner)."New value: +"owner (default) | member | all — affiliation filter. Echoed as data.type."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. torvalds."
    • Changedgithub_repository2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / repo / description
        Previous value: -"Repository URL or owner/name, e.g. torvalds/linux."New value: +"Repository URL or owner/name, e.g. torvalds/linux or https://github.com/torvalds/linux."
    • Changedgithub_trending_developers4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / language / description
        Previous value: -"Optional programming-language slug, e.g. python."New value: +"Optional programming-language slug → /trending/developers/{language}."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 100. Flat 2 credits per call."New value: +"Max items to return (default 25, max 100). Flat 2 credits per call."
      • changedInput schema / properties / since / description
        Previous value: -"daily (default), weekly, or monthly."New value: +"Trending window: daily (default), weekly, or monthly — matches github.com/trending/developers?since=."
    • Changedgithub_trending_repositories4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / language / description
        Previous value: -"Optional programming-language slug, e.g. python."New value: +"Optional programming-language slug (e.g. python, typescript) → /trending/{language}."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 100. Flat 2 credits per call."New value: +"Max items to return (default 25, max 100). Flat 2 credits per call."
      • changedInput schema / properties / since / description
        Previous value: -"daily (default), weekly, or monthly."New value: +"Trending window: daily (default), weekly, or monthly — matches github.com/trending?since=."
    • Changedgithub_user2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL, e.g. getify."New value: +"GitHub username or profile URL, e.g. getify or https://github.com/getify."
    • Changedgoogle_ad_library_ad_details3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code. Default US."
      • changedInput schema / properties / creative_id / description
        Previous value: -"Google Ads Transparency Center URL containing AR advertiser ID and CR creative ID."New value: +"Google Ads Transparency URL containing AR... advertiser and CR... creative IDs."
    • Changedgoogle_ad_library_advertiser_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code used for ranking (e.g. US). Default US."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 10, max 50. Billed per result."New value: +"Max items to return (default 10, max 50). Flat 1 credit when results are returned; 0 credits when totalReturned is 0."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Brand, domain, or advertiser name (min 2 characters). Expanded + ranked so US prefers Inc. over SRL."
    • Changedgoogle_ad_library_company_ads8 fields changed
      • changedInput schema / properties / advertiser / description
        Previous value: -"Advertiser name, domain (e.g. nike.com), or AR id."New value: +"Advertiser name, domain (e.g. nike.com), or Google advertiser ID (AR…). Prefer AR… from advertiser-search."
      • changedInput schema / properties / cache / description
        Previous value: -"Serve from 24h cache when available."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country / region code. Default US."New value: +"Two-letter ISO country / region code (soft filter). Default US. Alias: region."
      • changedInput schema / properties / end_date / description
        Previous value: -"YYYY-MM-DD overlap filter end."New value: +"YYYY-MM-DD — keep creatives whose shown window overlaps this end."
      • changedInput schema / properties / limit / description
        Previous value: -"Max results per page (default 20, max 200)."New value: +"Max items to return (default 20, max 200). Flat 2 credits when results are returned; 0 credits when totalReturned is 0."
      • addedInput schema / properties / sort
        Added value: +{
        +  "description": "Client-side sort: last_shown (recent activity first) or first_shown. Default is ATC order.",
        +  "type": "string"
        +}
      • changedInput schema / properties / start_date / description
        Previous value: -"YYYY-MM-DD overlap filter start."New value: +"YYYY-MM-DD — keep creatives whose shown window overlaps this start."
      • addedInput schema / properties / topic
        Added value: +{
        +  "description": "Only \"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.",
        +  "type": "string"
        +}
    • Changedinstagram_basic_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
    • Changedinstagram_channel_details3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Instagram profile URL, e.g. https://instagram.com/username/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_channel_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (e.g. 3937014945555313553_1697296). A null nextCursor means the end of the list."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram profile URL, e.g. https://instagram.com/username/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_channel_reels5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass nextCursor. Stop when hasMore is false."New value: +"Pagination cursor. Leave empty for the first page; then pass nextCursor from the previous response (clips:{userId}:{opaque} on the native Reels path, or legacy {mediaId}_{userId}). Stop when hasMore is false."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram profile URL, @handle, or username. Omit when userId is set. The URL platform must match this tool's platform."New value: +"Instagram profile URL, @handle, or username. Omit when userId is set. The URL platform must match this endpoint's platform."
      • changedInput schema / properties / userId / description
        Previous value: -"Instagram numeric user ID (e.g. 173560420). Faster than url — skips handle→ID resolve."New value: +"Instagram numeric user ID (e.g. 173560420). Skips handle→ID resolve (legacy sequential WPI alone could cost ~80s). Prefer when you already have the ID from basic-profile or profile-search."
    • Changedinstagram_comments3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return (default 50, max 500). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_embed2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram post, reel, or profile URL (or @handle), e.g. https://instagram.com/reel/ID/ or https://instagram.com/username/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram post, reel, or profile URL (or @handle), e.g. https://instagram.com/reel/ID/ or https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_hashtag_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag without the # (min 2 chars)."New value: +"Hashtag without the # (min 2 characters)."
    • Changedinstagram_highlights2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / userId / description
        Previous value: -"Numeric Instagram user ID. Prefer when known — skips handle→ID resolve."New value: +"Numeric Instagram user ID. Prefer when known — skips handle→ID resolve. When only userId is set we reverse-resolve the username so the WPI / profile-HTML shelf can still run."
    • Changedinstagram_highlights_details1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
    • Changedinstagram_profile_search2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Serve from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Account name, @handle, or profile URL to resolve (min 2 characters). Not a niche keyword search."
    • Changedinstagram_reels_by_audio_id5 fields changed
      • addedInput schema / properties / audioId
        Added value: +{
        +  "description": "Instagram audio/music ID or full audio URL, e.g. 27919946310946207.",
        +  "type": "string"
        +}
      • removedInput schema / properties / audio_id
        Removed value: -{
        -  "description": "Instagram audio/music ID or full audio URL.",
        -  "type": "string"
        -}
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / required
        Previous value: -[
        -  "audio_id"
        -]New value: +[
        +  "audioId"
        +]
    • Changedinstagram_reels_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / datePosted / description
        Previous value: -"last_24_hours | last_week | last_month | last_year."New value: +"last_24_hours | last_week | last_month | last_year (aliases: today, this_week, this_month, this_year)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag (without #) or keyword (min 2 chars)."New value: +"Hashtag (without #) or keyword (min 2 characters)."
    • Changedinstagram_summarize3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / language / description
        Previous value: -"Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."New value: +"ISO code, e.g. \"tr\": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_tagged_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Leave empty for the first page; then pass the nextCursor value from the previous response."New value: +"Leave empty for the first page; then pass the nextCursor value returned in the previous response."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 1 credit per call."New value: +"Max items to return (default 20, max 200). Flat 1 credit per call."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram profile URL, e.g. https://instagram.com/username/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedinstagram_trending_reels3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Default true — serve 4h response cache. Flat 2 credits either way; false forces live scrape."New value: +"Default true (cache-first): serve the per-country response cache when present (TTL 4 hours). Every successful call costs 2 credits — including cache hits. Set false to force a live scrape (typically under 20s, hard-capped at 110s); the fresh result still refreshes the cache."
      • changedInput schema / properties / country / description
        Previous value: -"Country name or ISO code. Unsupported → 400 with supportedCountries."New value: +"Country for Reels localization — full name or ISO code (e.g. 'United States', 'US', 'Turkey', 'TR'). Default United States. Unsupported values return 400 with supportedCountries[]."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 10, max 200). Flat 2 credits per call."
    • Changedkick_clip4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Flat 1 credit per call."New value: +"Channel mode only — max recent clips to return (default 30, max 100). Ignored when url is a clip. Flat 1 credit. No cursor — Kick returns a single page."
      • changedInput schema / properties / url / description
        Previous value: -"Kick clip URL, channel URL, or channel username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Kick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel URL/@username for recent clips[]. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedkomi_page3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Komi page URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Komi page URL or username, e.g. https://komi.io/kimkardashian or https://kimkardashian.komi.io/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedkwai_post2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Kwai video URL, e.g. https://www.kwai.com/@handle/video/5238962376325675745. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Kwai video URL, e.g. https://www.kwai.com/@topfilmeseseriesnatv/video/5240932700689736196. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedkwai_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Kwai profile URL or @handle, e.g. https://www.kwai.com/@easycashindonesia. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedkwai_user_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Opaque pagination cursor from the previous nextCursor. Pages within posts from one profile fetch.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max posts to return (1–200). Default 20. ~1 credit per post returned (min 2)."
      • changedInput schema / properties / url / description
        Previous value: -"Kwai profile URL or @handle, e.g. https://www.kwai.com/@easycashindonesia. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkbio_page3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Linkbio page URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Linkbio (lnk.bio) page URL or username, e.g. https://lnk.bio/charlidamelio. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_ad_library_ad_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn Ad Library URL or ad ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn Ad Library URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_ad_library_search_ads12 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / company
        Added value: +{
        +  "description": "Alias of q — advertiser / account owner name.",
        +  "type": "string"
        +}
      • changedInput schema / properties / companyId / description
        Previous value: -"LinkedIn numeric company id."New value: +"LinkedIn numeric company id for exact advertiser match."
      • changedInput schema / properties / countries / description
        Previous value: -"Comma-separated ISO codes (e.g. US,CA,MX)."New value: +"Comma-separated ISO country codes (e.g. US,CA,MX)."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Single ISO country code. Default US. Ignored when countries is set."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination token from nextCursor/paginationToken."New value: +"Pagination token from paginationToken / nextCursor."
      • changedInput schema / properties / endDate / description
        Previous value: -"YYYY-MM-DD custom range end (with startDate)."New value: +"Custom range end YYYY-MM-DD (use with startDate)."
      • changedInput schema / properties / keyword / description
        Previous value: -"Optional keyword filter on ad copy."New value: +"Optional keyword filter on ad creative copy."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 20, max 200). Flat 2 credits on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended so you can see which price applied."
      • addedInput schema / properties / paginationToken
        Added value: +{
        +  "description": "Alias of cursor.",
        +  "type": "string"
        +}
      • changedInput schema / properties / q / description
        Previous value: -"Advertiser / account owner (min 2 when used). Or use keyword/companyId."New value: +"Advertiser / account owner name (min 2 when used). Provide q/company, keyword, or companyId."
      • changedInput schema / properties / startDate / description
        Previous value: -"YYYY-MM-DD custom range start (with endDate)."New value: +"Custom range start YYYY-MM-DD (use with endDate)."
    • Changedlinkedin_company2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn company URL, e.g. https://www.linkedin.com/company/shopify. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_company_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20)."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 100 posts)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 1 credit per call."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_post_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn post or activity URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_post_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn post or activity URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"LinkedIn profile URL, e.g. https://linkedin.com/in/slug. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"LinkedIn profile URL, e.g. https://www.linkedin.com/in/paul-martin-a5aa98. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinkedin_search_posts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 50. Billed per result."New value: +"Max items to return (default 20, max 50). Billed per result."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Search query or keywords (min 2 characters)."
    • Changedlinkme_profile3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Linkme profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Linkme profile URL or username, e.g. https://link.me/danucd or danucd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedlinktree_page3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Linktree profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Linktree profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedpillar_page3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Pillar page URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Pillar page URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedpinterest_board4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Pinterest board URL, e.g. https://pinterest.com/username/board-name/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Pinterest board URL (.../username/board-name/), not a /pin/ URL. Example: https://www.pinterest.com/potterybarn/rustic-lodge-lookbook/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedpinterest_pin_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Pinterest pin URL, e.g. https://pinterest.com/pin/ID/. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Pinterest pin URL, e.g. https://pinterest.com/pin/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedpinterest_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the SERP window (max 40)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Billed per result."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keywords or search query (min 2 characters)."
    • Changedpinterest_user_boards4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (max 200)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Pinterest profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedpinterest_user_pins4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Pinterest profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_post_comments3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_post_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_post_transcript3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 200. Billed per result."New value: +"Max items to return (default 50, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keyword or phrase to search Reddit posts site-wide (min 2 characters)."
    • Changedreddit_subreddit_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Subreddit URL, r/name, or bare name (case-insensitive), e.g. r/technology or AskReddit. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_subreddit_posts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Flat 2 credits per call."New value: +"Max items to return (default 25, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedreddit_subreddit_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keywords or search query (min 2 characters)."
      • changedInput schema / properties / url / description
        Previous value: -"Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedrumble_channel_videos3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"Rumble channel URL, e.g. https://rumble.com/c/name. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Rumble channel URL, e.g. https://rumble.com/c/name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedrumble_comments3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedrumble_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keywords or search query (min 2 characters)."
    • Changedrumble_video_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedrumble_video_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedsnapchat_user_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Snapchat username or profile URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Snapchat username or profile URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedsoundcloud_artist3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"SoundCloud artist profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedsoundcloud_artist_tracks4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not edit or invent values."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"SoundCloud artist profile URL or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedsoundcloud_track3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"SoundCloud track URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"SoundCloud track URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedspotify_album3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Spotify URL, URI, or ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedspotify_artist3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape (~80% of the old response body).",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Spotify URL, URI, or ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedspotify_podcast3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • removedInput schema / properties / limit
        Removed value: -{
        -  "description": "Max items to return. Default 20, max 50. Flat 1 credit per call.",
        -  "minimum": 1,
        -  "type": "integer"
        -}
      • changedInput schema / properties / url / description
        Previous value: -"Spotify URL, URI, or ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL."
    • Changedspotify_podcast_episodes5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 50. Billed per result."New value: +"Max items to return (default 20, max 50). Flat 2 credits per call."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Include slimmed per-episode upstream payload as episodes[].raw. Default false. visualIdentity / playedState / podcastV2 are never included.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Spotify URL, URI, or ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL."
    • Changedspotify_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 50. Billed per result."New value: +"Max items to return (default 20, max 50). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Search term (min 2 chars)."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Include per-result upstream payload as results[].raw. Default false. Pathfinder GraphQL vs Apify scraper shapes differ — see FAQ.",
        +  "type": "boolean"
        +}
    • Changedspotify_track3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Include the upstream GraphQL payload as data.raw. Default false — getTrack embeds bulky artist discography.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Spotify URL, URI, or ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedthreads_post_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Threads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Threads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedthreads_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Threads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Threads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedthreads_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keyword or phrase to search public Threads posts (min 2 characters)."
    • Changedthreads_search_users3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 1 credit per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keyword to find Threads users / creators (min 2 characters)."
    • Changedthreads_user_posts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Threads only exposes the last ~20–30 public posts on this surface — asking for 100 will not return 100. Flat 2 credits on the native path; Apify fallback ~0.7/post (min 2)."
      • changedInput schema / properties / url / description
        Previous value: -"Threads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Threads profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_ad_library_ad_details3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default GB."New value: +"Two-letter ISO country code. Default GB."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok Ad Library URL or ad ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok Ad Library URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_ad_library_search5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default GB (US often empty)."New value: +"Two-letter ISO country code (e.g. GB, DE, FR). Default GB (EU DSA library; US often empty)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / match / description
        Previous value: -"Keyword mode: \"any\" (default) or \"all\"."New value: +"Keyword token mode: \"any\" (default, OR whole-word) or \"all\" (AND). hair ≠ wheelchair. Empty results are free."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Keyword or advertiser to search TikTok Commercial Content Library (min 2 characters)."
    • Changedtiktok_ad_library_top_ads10 fields changed
      • changedInput schema / properties / adFormat / description
        Previous value: -"spark | non_spark."New value: +"Optional format filter: spark or non_spark."
      • changedInput schema / properties / cache / description
        Previous value: -"Serve from 24h cache when available (0 credits on hit)."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"ISO country code. Default US."New value: +"Two-letter ISO country code. Default US."
      • changedInput schema / properties / industry / description
        Previous value: -"Optional industry key or label."New value: +"Optional industry key or label from Creative Center."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items (default 20, max 100). Flat 2 native; Apify ~1/ad (min 2)."New value: +"Max items to return (default 20, max 20). One Creative Center leaderboard page is ~20 rows; limit only trims that pool — it cannot scan more candidates. Flat 2 credits on Decodo-native; Apify ~1 credit per returned ad (min 2)."
      • changedInput schema / properties / match / description
        Previous value: -"Keyword mode: \"any\" (default) or \"all\"."New value: +"Keyword token mode: \"any\" (default, OR) or \"all\" (AND). Zero literal hits → empty ads[] (never an unfiltered soft list)."
      • changedInput schema / properties / objective / description
        Previous value: -"Optional campaign objective."New value: +"Optional campaign objective (e.g. Traffic, Conversion, Reach)."
      • changedInput schema / properties / orderBy / description
        Previous value: -"for_you | likes | ctr | impressions | cost."New value: +"Sort: for_you, likes, ctr, impressions, or cost. Default for_you."
      • changedInput schema / properties / period / description
        Previous value: -"Lookback days: 7, 30, or 180. Default 30."New value: +"Lookback window in days: 7, 30, or 180. Default 30."
      • changedInput schema / properties / q / description
        Previous value: -"Optional keyword (substring). See match + matchedFrom."New value: +"Optional keyword that filters the one ~20-row leaderboard page — not a library search. Case-insensitive whole-word match on title/brandName/industry/objective (hair ≠ wheelchair). There is no tags field. advertiser.name is often null in the default US market. Envelope candidatesScanned is the pre-filter pool size. For a known advertiser, use /tiktok/ad-details by ad id."
    • Changedtiktok_audience_demographics4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / countriesLimit
        Added value: +{
        +  "description": "Max countries in audienceLocations; remainder folds into other{count,percentage}. Omit for the full list (other is omitted when unused).",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
      • addedInput schema / properties / videos
        Added value: +{
        +  "description": "How many recent videos to sample comments from: 12 (default, 3 credits), 30 (5 credits), or 60 (8 credits).",
        +  "minimum": 1,
        +  "type": "integer"
        +}
    • Changedtiktok_channel_details4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Set true to include TikTok's upstream user/statsV2 blob under raw (privacy ints, profileTab, …). Default false — curated fields only.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_channel_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (TikTok's max_cursor timestamp, e.g. 1783614676000). A null nextCursor means the end of the list."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"How many of the creator's latest videos to return on this page (default 20, max 200). Newest first. Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_comment_replies5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / commentId / description
        Previous value: -"ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id."New value: +"ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value from the previous response."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_comments4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (a numeric offset)."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (a numeric offset, e.g. 50). A null nextCursor means the end of the comments."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_live2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_live_info2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_music_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_popular_creators5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / follower_count / description
        Previous value: -"Optional range: 10k-100k, 100k-1m, 1m-10m, >10m."New value: +"Optional range on FYP/Apify fallthrough: 10k-100k, 100k-1m, 1m-10m, >10m."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 2 credits per call."
      • addedInput schema / properties / page
        Added value: +{
        +  "description": "Creative Center page (default 1).",
        +  "minimum": 1,
        +  "type": "integer"
        +}
    • Changedtiktok_popular_hashtags9 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Two-letter ISO country for the Creative Center chart. Default US.",
        +  "type": "string"
        +}
      • addedInput schema / properties / industryId
        Added value: +{
        +  "description": "Optional Creative Center industry_id.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 2 credits per call."
      • addedInput schema / properties / newOnBoard
        Added value: +{
        +  "description": "Only hashtags newly on the Top 100.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / page
        Added value: +{
        +  "description": "Creative Center page (default 1).",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / period
        Added value: +{
        +  "description": "Lookback days: 7, 30, or 120 (180→120). Default 7.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / query / description
        Previous value: -"Optional niche seed for related-tag co-occurrence. Omit/trending for Creative Center chart."New value: +"Optional niche seed for legacy co-occurrence + challenge/detail enrich. Omit, or pass trending, to use the Creative Center chart. A chart miss is 502 — trending is not treated as a niche seed."
      • addedInput schema / properties / sortBy
        Added value: +{
        +  "description": "Chart sort: popular (default).",
        +  "type": "string"
        +}
    • Changedtiktok_popular_songs6 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / commercialMusic / description
        Previous value: -"Only Commercial Music Library-cleared sounds."New value: +"Only Commercial Music Library–cleared sounds."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 20. Flat 2 credits per call."New value: +"Max items to return (default 20, max 20). Flat 2 credits per call."
      • changedInput schema / properties / period / description
        Previous value: -"7, 30, or 120 days. Default 7."New value: +"7, 30, or 120 days (180→120). Default 7."
      • addedInput schema / properties / period / minimum
        Added value: +1
      • changedInput schema / properties / period / type
        Previous value: -"string"New value: +"integer"
    • Changedtiktok_profile_region3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / raw
        Added value: +{
        +  "description": "Set true to include TikTok's upstream user/statsV2 blob under raw. Default false — curated fields only.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_search_by_hashtag5 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination offset. Leave at 0 for the first page; then pass the nextCursor value from the previous response. A null nextCursor means the end."New value: +"Pagination offset. Leave at 0 (or omit) for the first page; then pass the nextCursor value returned in the previous response. A null nextCursor means the end of the results."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Billed per result."
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag with or without the # (min 2 chars)."New value: +"Hashtag for the /tag/{name} challenge feed, with or without # (min 2). Not a keyword query."
      • changedInput schema / properties / region / description
        Previous value: -"Two-letter ISO country our request is sent from. Default US. Does not filter results by country."New value: +"Two-letter ISO 3166-1 country our request is sent from. Default US. Does not filter results by country."
    • Changedtiktok_search_suggestions4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter ISO country code that localizes suggestions to a market, e.g. US, GB, DE. Default US."New value: +"Two-letter ISO country code that localizes the suggestions to a market, e.g. US, GB, DE. Default US."
      • changedInput schema / properties / language / description
        Previous value: -"Interface language for localized results, e.g. en-US or de-DE. Default en-US."New value: +"Interface language for the suggestions, e.g. en-US or de-DE. Default en-US."
      • changedInput schema / properties / limit / description
        Previous value: -"Upper bound on suggestions to return (1-100, default 20). TikTok surfaces only a limited number of real autocomplete suggestions per keyword, so you'll often get fewer. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 2 credits per call."
    • Changedtiktok_search_users7 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination offset. Leave at 0 for the first page; then pass the nextCursor value from the previous response. A null nextCursor means the end."New value: +"Pagination cursor. Omit (or pass 0) for the first page; then pass the nextCursor value from the previous response verbatim — it carries the search session, not just an offset. A null nextCursor means the end of the results."
      • removedInput schema / properties / cursor / minimum
        Removed value: -1
      • changedInput schema / properties / cursor / type
        Previous value: -"integer"New value: +"string"
      • addedInput schema / properties / fallback
        Added value: +{
        +  "description": "Opt into the scraper actor when native search is unavailable (~2 min, capped at 100 s, degraded-empty on timeout). Default false — return an empty degraded page (0 credits) instead.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return (default 20, max 100). Flat 1 credit per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query matched against usernames, display names and bios."New value: +"Search query matched against usernames, display names and bios (min 2 characters)."
    • Changedtiktok_shop_product_details3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / region / description
        Previous value: -"Market region ISO code for Apify fallback (default US)."New value: +"Two-letter market region for the secondary fetch path (default US). Primary SSR uses the product URL's market; empty/partial non-US results are often a TikTok exposure limit."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok Shop product URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_shop_product_reviews3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok Shop product URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731962298839634826. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_shop_products4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • addedInput schema / properties / region
        Added value: +{
        +  "description": "Two-letter market region (default US). Non-US coverage depends on TikTok exposing that shop in the selected region — empty results outside the US are often a platform limit, not a Captapi bug.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"TikTok Shop store URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok Shop store URL, e.g. https://www.tiktok.com/shop/store/goli-nutrition/7495794203056835079. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_shop_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / q / description
        Previous value: -"Product search query."New value: +"Product search query (min 2 characters), e.g. phone case."
      • changedInput schema / properties / region / description
        Previous value: -"Two-letter TikTok Shop region. Default US."New value: +"Two-letter market region for the search (default US). Echoed on the response as data.region — not a creator home country. Native search is a SERP window (not TikTok's full catalog); compare requested to serpHits / windowMax."
    • Changedtiktok_shop_user_showcase2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed per result."
    • Changedtiktok_song_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_summarize3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / language / description
        Previous value: -"Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."New value: +"ISO code, e.g. \"tr\": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary."
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_top_search4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave 0 for the first page; then pass nextCursor from the previous response. TikTok may return duplicates across pages.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Search query or keywords (min 2 characters)."
    • Changedtiktok_transcript1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_trending_feed7 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter ISO country code, e.g. US, GB, TR. Default US."New value: +"Two-letter ISO country (default US). For You: region-availability hint. Creative Center mode: chart market."
      • addedInput schema / properties / countryCode
        Added value: +{
        +  "description": "Alias of country. Wins when both are set.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • addedInput schema / properties / orderBy
        Added value: +{
        +  "description": "Creative Center sort: hot (views), like, comment, or repost. Unknown values are 400. vv/views/plays are aliases of hot — the response echoes the public name. Setting this (or period / page>1) switches from For You to the popular-videos chart. On a For You fallthrough the same sort is applied locally.",
        +  "type": "string"
        +}
      • addedInput schema / properties / page
        Added value: +{
        +  "description": "Creative Center page (default 1). page>1 triggers chart mode.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / period
        Added value: +{
        +  "description": "Lookback days: 7, 30, or 120 (180→120). Triggers chart mode. Every returned publishedAt is inside this window — a For You fallthrough is filtered the same way.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
    • Changedtiktok_user_followers3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 1 credit per call."New value: +"Max items to return (default 50, max 500). Flat 1 credit per call."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_user_followings3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 1 credit per call."New value: +"Max items to return (default 50, max 500). Flat 1 credit per call."
      • changedInput schema / properties / url / description
        Previous value: -"TikTok profile URL, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtiktok_video_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public TikTok video URL, e.g. https://tiktok.com/@user/video/ID. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtruth_social_post2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Truth Social post URL or post ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Truth Social post URL or post ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtruth_social_profile2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Truth Social profile URL or @username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtruth_social_user_posts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 80. Billed per result."New value: +"Max posts to return (default 20, max 80). Capped at 80 because Truth Social's statuses page is ~40 items — use nextCursor for more pages. Flat 2 credits per call. Response `source` is native or extended."
      • changedInput schema / properties / url / description
        Previous value: -"Truth Social profile URL or @username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitch_clip3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Twitch clip URL, channel URL, or username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitch_profile3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitch_user_schedule3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Max schedule segments to return (default 50, max 100). Flat 1 credit per call.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitch_user_videos6 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor. Leave empty for the first page; then pass nextCursor from the previous response."New value: +"Pagination cursor = last video id from the previous nextCursor. Leave empty for the first page. Pages the first 100 matching videos only (not a raw offset)."
      • changedInput schema / properties / filterBy / description
        Previous value: -"ARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types."New value: +"ARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types — there is no default filter (unset filterBy is omitted, not null)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Flat 2 credits per call."New value: +"Max items to return (default 20, max 100). Flat 2 credits per call. Hard ceiling: first 100 matching videos only — deeper history is not available (windowMax=100)."
      • changedInput schema / properties / sortBy / description
        Previous value: -"TIME (default) or VIEWS."New value: +"TIME (default, newest first) or VIEWS."
      • changedInput schema / properties / url / description
        Previous value: -"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_community2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"X community URL (x.com/i/communities/ID) or community ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_community_tweets3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 25, max 200. Billed per result."New value: +"Max items to return (default 25, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"X community URL (x.com/i/communities/ID) or community ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_profile3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d. Envelope includes cached + cachedAt on hits."
      • addedInput schema / properties / cacheMaxAge
        Added value: +{
        +  "description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. Envelope: cached + cachedAt.",
        +  "type": "string"
        +}
      • changedInput schema / properties / url / description
        Previous value: -"Twitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_tweet_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedtwitter_user_tweets3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max tweets to return (default 20, max 200). Twitter's public surface usually caps around ~100 most popular posts — not chronological latest. Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Twitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Twitter/X profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedvideo_summarize3 fields changed
      • changedInput schema / properties / file / description
        Previous value: -"Local path to video/audio — multipart form field file (POST), not a query string."New value: +"Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes."
      • changedInput schema / properties / language / description
        Previous value: -"ISO-639-1 Whisper language hint."New value: +"ISO-639-1 Whisper language hint, e.g. \"en\" or \"tr\". Omit to auto-detect."
      • changedInput schema / properties / translate / description
        Previous value: -"Translate speech to English when true."New value: +"When true, translate speech to English before summarizing. Default false."
    • Changedvideo_transcript4 fields changed
      • changedInput schema / properties / file / description
        Previous value: -"Local path to video/audio — sent as multipart form field file (POST), not a query string."New value: +"Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes."
      • changedInput schema / properties / language / description
        Previous value: -"ISO-639-1 Whisper language hint, e.g. en or tr."New value: +"ISO-639-1 Whisper language hint, e.g. \"en\" or \"tr\". Omit to auto-detect."
      • changedInput schema / properties / timestampGranularity / description
        Previous value: -"segment (default) or word."New value: +"segment (default) or word — word-level timings when Whisper exposes them."
      • changedInput schema / properties / translate / description
        Previous value: -"Translate speech to English when true."New value: +"When true, translate speech to English (Whisper translations API). Default false."
    • Changedyoutube_audio_transcript3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / maxCredits / description
        Previous value: -"Refuse before STT when estimated credits would exceed this."New value: +"Refuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits)."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_channel_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_channel_playlists3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_channel_shorts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_channel_streams3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits when hasLiveTab is true; 0 credits when hasLiveTab is false."New value: +"Max items to return (default 20, max 200). Flat 2 credits when hasLiveTab is true; 0 credits when hasLiveTab is false."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_channel_videos3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_comment_replies4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / commentId / description
        Previous value: -"ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id."New value: +"ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_comments3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_community_post_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube community post URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube community post URL (/post/Ugkx… or /community?lb=). Trailing whitespace is stripped. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_community_posts4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Leave empty for the first page; then pass the nextCursor value from the previous response."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 1 credit per call."New value: +"Max items to return (default 20, max 200). Flat 1 credit per call."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube channel URL, e.g. https://youtube.com/@handle or /channel/UC... The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_hashtag_search3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Returns a single window; use limit to size it. No cursor. Billed per result."New value: +"Max items to return (default 20, max 200). Returns a single window; use limit to size it. No cursor. Billed per result."
      • changedInput schema / properties / q / description
        Previous value: -"Hashtag with or without the # (min 2 chars)."New value: +"Hashtag with or without the # (min 2 characters)."
    • Changedyoutube_playlist2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_playlist_videos3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Flat 2 credits per call."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_search7 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor from nextCursor."New value: +"Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
      • changedInput schema / properties / duration / description
        Previous value: -"any | under_4 | 4_20 | over_20."New value: +"any | under_4 | 4_20 | over_20. Applies to long-form videos (not Shorts)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Search query or keywords (min 2 chars)."New value: +"Search query or keywords (min 2 characters)."
      • changedInput schema / properties / region / description
        Previous value: -"ISO country code (default US)."New value: +"ISO country code for localized results (default US)."
      • changedInput schema / properties / sortBy / description
        Previous value: -"relevance | date | views | rating."New value: +"relevance | date | views | rating (alias: popular→views)."
    • Changedyoutube_shorts_comments3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return (default 50, max 500). Flat 2 credits per call."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (<=3 min). Long-form videos return HTTP 422. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_shorts_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (<=3 min). Long-form videos return HTTP 422. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_shorts_summarize2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (<=3 min). Long-form videos return HTTP 422. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_shorts_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (<=3 min). Long-form videos return HTTP 422. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_summarize2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_transcript2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_trending_shorts3 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Returns a single window; use limit to size it. No cursor. Flat 2 credits per call."New value: +"Max items to return (default 20, max 100). Returns a single window; use limit to size it. No cursor. Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"Optional topic seed for the reel sequence. Omit for default trending feed."New value: +"Optional topic seed for the Shorts recommendation sequence. Omit (or pass trending/shorts) for the default reel feed — not a keyword search."
    • Changedyoutube_video_details2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedyoutube_video_sponsors4 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits."
      • changedInput schema / properties / categories / description
        Previous value: -"Comma-separated categories (default sponsor,selfpromo,interaction)."New value: +"Comma-separated categories. Default sponsor,selfpromo,interaction. Also intro,outro,preview,music_offtopic,poi_highlight,filler."
      • changedInput schema / properties / minVotes / description
        Previous value: -"Minimum votes (default 0; drops votes < 0)."New value: +"Minimum SponsorBlock votes to keep a segment. Default 0 (drops community-rejected votes < 0)."
      • changedInput schema / properties / url / description
        Previous value: -"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
  8. 7 tool updates
    • Changedlinkedin_search_posts1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 50 posts).",
        +  "type": "string"
        +}
    • Changedpinterest_board1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window.",
        +  "type": "string"
        +}
    • Changedpinterest_search1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window.",
        +  "type": "string"
        +}
    • Changedpinterest_user_boards1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window.",
        +  "type": "string"
        +}
    • Changedpinterest_user_pins1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window.",
        +  "type": "string"
        +}
    • Changedreddit_post_comments1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
    • Changedtiktok_shop_search1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 10, max 10). Flat 2 credits per call."
  9. 1 tool update
    • Changedlinkedin_ad_library_search_ads1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Flat 2 credits on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended."
  10. 1 tool update
    • Changedfacebook_ad_library_ad_transcript1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Meta Ad Library ad URL or ad ID. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Meta Ad Library ad URL or ad ID. Returns written copy, not a speech transcript. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
  11. 16 tool updates
    • Changedfacebook_comment_replies3 fields changed
      • addedInput schema / properties / commentId
        Added value: +{
        +  "description": "ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id.",
        +  "type": "string"
        +}
      • removedInput schema / properties / comment_id
        Removed value: -{
        -  "description": "ID of the parent comment to fetch replies for (from the comments endpoint).",
        -  "type": "string"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "url",
        -  "comment_id"
        -]New value: +[
        +  "url",
        +  "commentId"
        +]
    • Changedfacebook_event_search6 fields changed
      • addedInput schema / properties / from
        Added value: +{
        +  "description": "Inclusive local start date filter YYYY-MM-DD.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed 2 credits flat on the native path; ~2 credits per returned event on the Apify fallback — check `source` in the response."
      • addedInput schema / properties / location
        Added value: +{
        +  "description": "City/place geo filter (e.g. London). Matches timezone, location.city, or coords near the city — not a title substring.",
        +  "type": "string"
        +}
      • changedInput schema / properties / q / description
        Previous value: -"Topic and/or place, e.g. 'comedy Chicago' (min 2 chars)."New value: +"Topic keyword, e.g. 'comedy'. Pair with location for city-scoped results."
      • addedInput schema / properties / to
        Added value: +{
        +  "description": "Inclusive local start date filter YYYY-MM-DD.",
        +  "type": "string"
        +}
      • addedInput schema / properties / upcoming
        Added value: +{
        +  "description": "When true and from is omitted, sets from to today's UTC date.",
        +  "type": "boolean"
        +}
    • Changedfacebook_marketplace_item1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Facebook Marketplace item URL. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Facebook Marketplace item URL, e.g. https://www.facebook.com/marketplace/item/2467979733629080/ The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
    • Changedfacebook_profile_events1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return (default 20, max 200). Billed 2 credits flat on the native path; ~2 credits per returned event on the Apify fallback — check `source` in the response."
    • Changedinstagram_trending_reels1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200."New value: +"Max items to return. Default 20, max 200. Billed per result."
    • Addedrumble_video_transcript
    • Changedtiktok_ad_library_top_ads2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Serve from 24h cache when available (0 credits on hit)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items (default 20, max 100). Flat 2 native; Apify ~1/ad (min 2)."
    • Changedtiktok_comment_replies3 fields changed
      • addedInput schema / properties / commentId
        Added value: +{
        +  "description": "ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id.",
        +  "type": "string"
        +}
      • removedInput schema / properties / comment_id
        Removed value: -{
        -  "description": "ID of the parent comment to fetch replies for (from the comments endpoint).",
        -  "type": "string"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "url",
        -  "comment_id"
        -]New value: +[
        +  "url",
        +  "commentId"
        +]
    • Removedtwitter_search
    • Addedyoutube_audio_transcript
    • Changedyoutube_channel_playlists2 fields changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return. Default 20, max 200. Flat 2 credits per call."
    • Changedyoutube_channel_shorts2 fields changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return. Default 20, max 200. Flat 2 credits per call."
    • Changedyoutube_channel_videos2 fields changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return. Default 20, max 200. Flat 2 credits per call."
    • Changedyoutube_comment_replies5 fields changed
      • addedInput schema / properties / commentId
        Added value: +{
        +  "description": "ID of the parent (top-level) comment to fetch replies for (from the comments endpoint). Legacy alias: comment_id.",
        +  "type": "string"
        +}
      • removedInput schema / properties / comment_id
        Removed value: -{
        -  "description": "ID of the parent comment to fetch replies for (from the comments endpoint).",
        -  "type": "string"
        -}
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return. Default 50, max 500. Flat 2 credits per call."
      • changedInput schema / required
        Previous value: -[
        -  "url",
        -  "comment_id"
        -]New value: +[
        +  "url",
        +  "commentId"
        +]
    • Changedyoutube_playlist2 fields changed
      • removedInput schema / properties / fast
        Removed value: -{
        -  "description": "Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters.",
        -  "type": "boolean"
        -}
      • removedInput schema / properties / limit
        Removed value: -{
        -  "description": "Max items to return. Default 50, max 500. Billed per result.",
        -  "minimum": 1,
        -  "type": "integer"
        -}
    • Changedyoutube_playlist_videos2 fields changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max items to return. Default 50, max 500. Flat 2 credits per call."
  12. 3 tool updates
    • Changedyoutube_channel_streams1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Flat 2 credits per call."New value: +"Max items to return. Default 20, max 200. Flat 2 credits when hasLiveTab is true; 0 credits when hasLiveTab is false."
    • Changedyoutube_hashtag_search1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return. Default 20, max 200. Returns a single window; use limit to size it. No cursor. Billed per result."
    • Changedyoutube_trending_shorts1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return. Default 20, max 100. Returns a single window; use limit to size it. No cursor. Flat 2 credits per call."
  13. 1 tool update
    • Changedinstagram_trending_reels1 field changed
      • changedInput schema / properties / cache / description
        Previous value: -"Default true — serve 4h response cache (0 credits). false forces live scrape (1 credit)."New value: +"Default true — serve 4h response cache. Flat 2 credits either way; false forces live scrape."
  14. 1 tool update
    • Changedinstagram_trending_reels2 fields changed
      • changedInput schema / properties / cache / description
        Previous value: -"Set true to serve from the 24h response cache. Default false — always fetch fresh data."New value: +"Default true — serve 4h response cache (0 credits). false forces live scrape (1 credit)."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 200. Billed per result."New value: +"Max items to return. Default 20, max 200."
  15. 19 tool updates
    • Changedaccount_most_used_routes1 field changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max rows to return. Default 20, max 100. Free — does not consume credits."
    • Changedaccount_request_history5 fields changed
      • addedInput schema / properties / endpoint
        Added value: +{
        +  "description": "Exact Captapi path, e.g. /v1/instagram/basic-profile.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 50, max 500. Billed per result."New value: +"Max rows to return. Default 50, max 500. Free — does not consume credits."
      • addedInput schema / properties / since
        Added value: +{
        +  "description": "Inclusive createdAt lower bound (ISO date or datetime).",
        +  "type": "string"
        +}
      • addedInput schema / properties / statusCode
        Added value: +{
        +  "description": "HTTP status filter, e.g. 500.",
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / until
        Added value: +{
        +  "description": "Exclusive createdAt upper bound (ISO date or datetime).",
        +  "type": "string"
        +}
    • Changedanalytics_compare1 field changed
      • changedInput schema / properties / urls / description
        Previous value: -"Comma-separated post/video/reel URLs (up to 10), any mix of supported platforms."New value: +"Comma-separated URLs (up to 10), any mix of the 11 Post Analytics platforms."
    • Changedanalytics_post1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"A public post, video, or reel URL from a supported platform. The URL platform must match this tool's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."New value: +"Post/video/reel URL from YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform auto-detected — cross-platform URLs are expected. Not Kwai/Twitch/Spotify/Snapchat."
    • Changedfacebook_marketplace_location_search3 fields changed
      • removedInput schema / properties / details
        Removed value: -{
        -  "description": "Set true to include latitude/longitude per location (slower; doubles cost to 34 credits).",
        -  "type": "string"
        -}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 10, max 50. Flat 17 credits per call."New value: +"Max items to return. Default 10, max 50. Flat 2 credits per call."
      • changedInput schema / properties / q / description
        Previous value: -"City/place search query, e.g. Austin."New value: +"City/place query. Bare 'Austin' may return TX/MN/IN; include a state for a single hit."
    • Changedgithub_activity3 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor (page number as string). Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque cursor from previous nextCursor. Stops at 90-event ceiling."
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 30, max 100. Billed per result."New value: +"Max items to return. Default 30, max 90. Billed per result."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. getify."
    • Changedgithub_contributions1 field changed
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. getify."
    • Changedgithub_followers2 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor (page number as string). Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque cursor from previous nextCursor (GitHub Link page=)."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. getify."
    • Changedgithub_following2 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor (page number as string). Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque cursor from previous nextCursor (GitHub Link page=)."
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. getify."
    • Changedgithub_pull_requests2 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor (page number as string). Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque cursor from previous nextCursor (GitHub Link page=)."
      • changedInput schema / properties / state / description
        Previous value: -"open, closed, or all. Default open."New value: +"open (default), closed, or all — echoed as data.state."
    • Changedgithub_repositories4 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Pagination cursor (page number as string). Leave empty for the first page; then pass the nextCursor value returned in the previous response."New value: +"Opaque cursor from previous nextCursor (GitHub Link page=)."
      • addedInput schema / properties / direction
        Added value: +{
        +  "description": "asc or desc (default desc).",
        +  "type": "string"
        +}
      • addedInput schema / properties / sort
        Added value: +{
        +  "description": "created|updated|pushed|full_name (default updated).",
        +  "type": "string"
        +}
      • addedInput schema / properties / type
        Added value: +{
        +  "description": "owner|member|all (default owner).",
        +  "type": "string"
        +}
    • Changedgithub_repository1 field changed
      • changedInput schema / properties / repo / description
        Previous value: -"Repository URL or owner/name."New value: +"Repository URL or owner/name, e.g. torvalds/linux."
    • Changedgithub_trending_developers5 fields changed
      • addedInput schema / properties / language
        Added value: +{
        +  "description": "Optional programming-language slug, e.g. python.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return. Default 25, max 100. Flat 2 credits per call."
      • removedInput schema / properties / q
        Removed value: -{
        -  "description": "GitHub user search query. Default followers:>1000.",
        -  "type": "string"
        -}
      • addedInput schema / properties / since
        Added value: +{
        +  "description": "daily (default), weekly, or monthly.",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "q"
        -]
    • Changedgithub_trending_repositories5 fields changed
      • addedInput schema / properties / language
        Added value: +{
        +  "description": "Optional programming-language slug, e.g. python.",
        +  "type": "string"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return. Default 20, max 100. Billed per result."New value: +"Max items to return. Default 25, max 100. Flat 2 credits per call."
      • removedInput schema / properties / q
        Removed value: -{
        -  "description": "GitHub repository search query. Default stars:>1000.",
        -  "type": "string"
        -}
      • addedInput schema / properties / since
        Added value: +{
        +  "description": "daily (default), weekly, or monthly.",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "q"
        -]
    • Changedgithub_user1 field changed
      • changedInput schema / properties / username / description
        Previous value: -"GitHub username or profile URL."New value: +"GitHub username or profile URL, e.g. getify."
    • Changedtiktok_ad_library_search1 field changed
      • addedInput schema / properties / match
        Added value: +{
        +  "description": "Keyword mode: \"any\" (default) or \"all\".",
        +  "type": "string"
        +}
    • Changedtiktok_ad_library_top_ads2 fields changed
      • addedInput schema / properties / match
        Added value: +{
        +  "description": "Keyword mode: \"any\" (default) or \"all\".",
        +  "type": "string"
        +}
      • changedInput schema / properties / q / description
        Previous value: -"Optional keyword filter."New value: +"Optional keyword (substring). See match + matchedFrom."
    • Changedvideo_summarize4 fields changed
      • changedInput schema / properties / file / description
        Previous value: -"Local path or multipart file upload of the video/audio to transcribe and summarize."New value: +"Local path to video/audio — multipart form field file (POST), not a query string."
      • addedInput schema / properties / language
        Added value: +{
        +  "description": "ISO-639-1 Whisper language hint.",
        +  "type": "string"
        +}
      • addedInput schema / properties / timestampGranularity
        Added value: +{
        +  "description": "segment (default) or word.",
        +  "type": "string"
        +}
      • addedInput schema / properties / translate
        Added value: +{
        +  "description": "Translate speech to English when true.",
        +  "type": "boolean"
        +}
    • Changedvideo_transcript4 fields changed
      • changedInput schema / properties / file / description
        Previous value: -"Local path or multipart file upload of the video/audio to transcribe."New value: +"Local path to video/audio — sent as multipart form field file (POST), not a query string."
      • addedInput schema / properties / language
        Added value: +{
        +  "description": "ISO-639-1 Whisper language hint, e.g. en or tr.",
        +  "type": "string"
        +}
      • addedInput schema / properties / timestampGranularity
        Added value: +{
        +  "description": "segment (default) or word.",
        +  "type": "string"
        +}
      • addedInput schema / properties / translate
        Added value: +{
        +  "description": "Translate speech to English when true.",
        +  "type": "boolean"
        +}

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    SocialCrawl provides the "best" quality public web data on the internet. Access 65+ real-time social media, e-commerce and public web data from a single API with a single schema.
    5
    318 npm
    23
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI agents with unified access to 21 social media platforms and 105 endpoints for retrieving profiles, posts, comments, search results, trending content, and analytics without per-platform authentication.
    4
    318 npm
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides unified access to social media data across nine networks (Instagram, TikTok, YouTube, etc.) through a set of MCP tools for profiles, posts, search, and comments, backed by the SocialBridge API.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to retrieve X/Twitter profiles and tweets, YouTube video and channel data, and TikTok profile and video stats on a pay-per-result basis without requiring login or platform API keys.
    34 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.