Skip to main content
Glama

Server Details

Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 78 of 78 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose, further clarified by group prefixes and clear descriptions. Within each group, tools perform different operations (e.g., domains.lookup vs. domains.whois vs. domains.rdap) with no ambiguity.

Naming Consistency5/5

All tools follow a consistent group.tool_name pattern using snake_case. The naming is predictable and uniformly applied across all groups.

Tool Count4/5

78 tools is high, but the server aggregates multiple distinct API domains (11 groups). Each group has a reasonable number of tools, typically under 10, with TikTok having 17. The count reflects breadth, not bloat.

Completeness5/5

Each domain's tool set covers the primary expected operations (e.g., search, details, reviews, metrics, user info). There are no obvious gaps for read-only analytical use; features like posting are likely out of scope.

Available Tools

93 tools
domains.check_availabilityAInspect

Check domain name availability for up to ten domains in one request.

Returns a JSON object whose keys are the requested domain names and whose values are booleans: true if the domain appears available, false if it is taken.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainsYesDomain names to check (maximum 10).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

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

Describes return format (JSON object with booleans) and cost (5 tokens). No annotations provided, so description carries full burden; it covers basic behavior but no mention of side effects or safety.

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 plus cost note. Highly efficient, front-loaded with action and constraints.

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 tool with 1 parameter and output schema, description fully explains behavior and return value. No gaps relative to 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 coverage is 100% with parameter description. Description adds no additional meaning beyond 'up to ten domains', which is already in schema (maxItems). 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?

Clearly states 'Check domain name availability' and specifies batch size (up to ten). Distinct from sibling tools like domains.dns_records or domains.lookup.

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?

Tells when to use (check availability) and implicitly different from other domain operations, but does not explicitly mention alternatives or when not to use.

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

domains.dns_recordsAInspect

Fetch DNS records for a domain.

Returns an array of records. Each record includes name, ttl, type (for example A, AAAA, CNAME, MX, NS, SOA, TXT), and data (record value).

Optionally pass subdomain to include records for a host under the domain (for example blog for blog.example.com).

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesDomain name to look up (for example example.com).
subdomainNoOptional subdomain label to include (for example www or blog).

Output Schema

ParametersJSON Schema
NameRequiredDescription
recordsNoDNS records returned for the domain.
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 the cost (2 tokens), return type (array with fields), and optional subdomain behavior. It does not explicitly state that it is read-only or detail error conditions, but the 'Fetch' verb implies no 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 four sentences, front-loaded with the purpose. Each sentence adds value: purpose, return structure, optional parameter, cost. No redundant or extraneous 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 presence of an output schema, the description adequately covers purpose, return structure, optional parameter, and cost. It lacks guidance on error cases or prerequisites, but overall is sufficient for effective tool 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% with both parameters already well-described. The description adds an illustrative example for the 'subdomain' parameter but does not fundamentally enhance understanding beyond the schema. Baseline is 3.

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 'Fetch DNS records for a domain', specifying the verb and resource. It distinguishes from sibling tools like domains.whois or domains.check_availability by focusing exclusively on DNS records. The return structure and optional subdomain parameter add further clarity.

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 implicitly indicates when to use this tool (when DNS records are needed), but does not explicitly mention alternatives or exclusion criteria. However, the context of sibling tool names provides implicit differentiation, making the usage context clear.

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

domains.list_tldsAInspect

List or search top-level domains (TLDs) with registry metadata.

Filter by substring search, availability phase, TLD category, and paginate with limit and page. limit defaults to 100 when omitted. Each result includes the TLD suffix, type, availability phase, WHOIS server, domain counts when known, registry organization details, and created/changed timestamps.

availability values: general-availability (open for normal registration) or sunrise (trademark sunrise period before general availability).

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number for paginated results.
limitNoMaximum number of TLDs to return. Defaults to 100 when omitted.
searchNoReturn TLDs whose suffix contains this substring.
tld_typeNoFilter by TLD category: country-code, generic, generic-restricted, infrastructure, or sponsored.
availabilityNoFilter by registration phase: general-availability (normal public registration) or sunrise (early trademark-holder period).

Output Schema

ParametersJSON Schema
NameRequiredDescription
tldsNoMatching top-level domain records.
Behavior4/5

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

No annotations provided, so description carries burden. Discloses pagination defaults (limit=100), cost, and availability values. Does not explicitly label as read-only, but context suggests it's safe. Good behavioral context beyond 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?

Concise, front-loaded with primary action, then filtering details, then specific example of values. No wasted words. Each sentence serves a purpose.

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 5 optional parameters and output schema, description covers all parameters, default behavior, filtering options, and output contents. Cost and availability clarification further complete the picture.

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 covers 100% of parameters (baseline 3). Description adds value by explaining availability values ('general-availability' vs 'sunrise') and listing output fields. Repetition of default limit is minor; overall adds 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?

Clear verb+resource: 'List or search top-level domains (TLDs) with registry metadata.' Immediately distinguishes from siblings like domains.tld_details (single TLD) and domains.check_availability (availability check).

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?

Implied usage via filtering and pagination, but no explicit when-to-use vs alternatives like tld_details for detailed info or check_availability for domain names. Lacks exclusion criteria.

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

domains.lookupAInspect

Look up a domain and return normalized registration details.

Combines registry and registrar RDAP and WHOIS sources to return the most accurate normalized fields across TLDs: availability, domain status, created/updated/expiry dates, registrar data, contact records, and nameservers.

Use this when you need registrant-oriented summary data rather than raw WHOIS or RDAP payloads.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesDomain name to look up (for example example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription
tldNoTop-level domain suffix.
datesNoRegistration lifecycle dates.
domainNoLooked-up domain name.
sourceNoPrimary data source used for the normalized response.
statusNoNormalized EPP status codes.
keywordNoSecond-level domain label without the TLD.
contactsNoRegistrant, admin, tech, and billing contact records.
registrarNoRegistrar summary data.
nameserversNoAuthoritative nameserver host names.
availabilityNoAvailability state (for example registered or available).
Behavior5/5

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

No annotations exist, so the description carries full burden. It discloses that the tool combines multiple sources (registry/registrar RDAP and WHOIS) and normalizes results, and also notes the cost of 5 tokens. This adequately describes the tool's 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 only 4 sentences, front-loaded with the main purpose, then details and usage hint. Every sentence adds value, no wasted words.

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 simple one-parameter tool and that an output schema exists, the description fully covers what the tool does, its data sources, usage context, and cost. It is complete for an AI agent to correctly select and 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 coverage is 100% with a clear parameter description ('Domain name to look up (for example example.com).'). The tool description does not add additional parameter-level meaning beyond what the schema provides, so a 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?

The description clearly states 'Look up a domain and return normalized registration details' and elaborates on combining RDAP and WHOIS to output specific fields (availability, dates, registrar, etc.). This distinguishes it from sibling tools like domains.rdap or domains.whois which return raw data.

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?

Explicitly advises 'Use this when you need registrant-oriented summary data rather than raw WHOIS or RDAP payloads.' This provides clear when-to-use guidance and contrasts with raw data alternatives.

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

domains.metricsAInspect

Analyze a domain with comprehensive SEO metrics, backlink data, and social signals.

Returns authority metrics (Moz domain/page authority, Ahrefs domain rating, Majestic trust and citation flow), backlink profile counts (total backlinks, referring domains, EDU/GOV links), traffic and keyword estimates (organic traffic, traffic value, organic keywords, Ahrefs rank), social signals (Facebook shares/comments, Pinterest pins, StumbleUpon), and technical data (IP addresses, subnets, topical trust flow categories).

Cost = 40 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesDomain name to analyze (for example example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription
mozDANoMoz domain authority score (0-100).
mozPANoMoz page authority score (0-100).
domainNoAnalyzed domain name.
ahrefsDRNoAhrefs domain rating (0-100).
stumblesNoTotal StumbleUpon shares.
FB_sharesNoTotal Facebook shares.
ahrefsRankNoGlobal website ranking from Ahrefs.
majesticCFNoMajestic citation flow score (0-100).
majesticTFNoMajestic trust flow score (0-100).
FB_commentsNoTotal Facebook comments.
last_updatedNoWhen the metrics snapshot was last updated.
ahrefsTrafficNoEstimated monthly organic traffic.
majesticLinksNoTotal links from the Majestic database.
pinterest_pinsNoTotal Pinterest saves.
ahrefsBacklinksNoTotal number of backlinks from Ahrefs.
ahrefsRefDomainsNoNumber of unique referring domains from Ahrefs.
ahrefsTrafficValueNoEstimated value of organic traffic.
ahrefsOrganicKeywordsNoNumber of ranking organic keywords.
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses return data comprehensively and mentions token cost (40 tokens), but does not explicitly state it's read-only or note any authentication requirements. This is adequate but not exhaustive.

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?

Description is a single paragraph that front-loads the purpose and then details metrics. It is reasonably concise but could benefit from bullet points or separation to improve scannability.

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 output schema exists and the description covers key return categories, it is fairly complete. It doesn't explain error conditions or token cost breakdown, but for a data retrieval tool, it provides sufficient context for an AI 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% for the domain parameter, with a clear description in the schema. The description adds context about analyzing comprehensive metrics but does not provide additional syntax or format details beyond what the schema offers. 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?

Description clearly states the tool analyzes a domain with comprehensive SEO metrics, backlink data, and social signals, and explicitly lists the types of metrics returned. This distinguishes it from sibling tools like domains.whois or domains.dns_records.

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?

Description implies usage for deep domain analysis but lacks explicit guidance on when not to use it or mention of alternative tools like seo.basic_metrics. The comprehensive metric list suggests it's for full SEO analysis, but no direct comparison given.

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

domains.rdapAInspect

Look up raw RDAP (Registration Data Access Protocol) data for a domain.

Returns registrar entities, domain status codes, registration and expiration events, nameservers, DNSSEC delegation data, RDAP conformance labels, and registry notices.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesDomain name to look up (for example example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription
eventsNoRegistration, expiration, and last-changed timestamps.
statusNoEPP status codes for the domain.
ldhNameNoDomain name in LDH form.
entitiesNoRegistrar, registrant, and related RDAP entities.
secureDNSNoDNSSEC delegation and DS record data.
nameserversNoAuthoritative nameservers for the domain.
objectClassNameNoRDAP object class (for example domain).
Behavior3/5

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

No annotations are provided, so the description must disclose behaviors. It mentions the data returned and cost (3 tokens), which is useful, but lacks info on authentication, rate limits, error handling, or 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 three short sentences plus a cost line. It front-loads the main action and efficiently lists returns. No wasted words.

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 one parameter, an output schema exists (though not shown), and no annotations, the description covers the essential aspects: purpose, returns, cost. It lacks error conditions or prerequisites but is adequate for a simple 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 coverage is 100% and the parameter's description is clear. The tool description adds little beyond the schema, reiterating the domain name purpose. 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 states it looks up raw RDAP data for a domain and lists the returned data types. It distinguishes from sibling tools like domains.whois by specifying 'RDAP' but does not explicitly contrast.

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 specify when to use this tool over alternatives like domains.whois or domains.lookup. Usage context is implied by the RDAP keyword but no explicit guidance is given.

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

domains.tld_detailsAInspect

Look up detailed registry information for a single top-level domain (TLD).

Returns status, TLD type, availability phase, WHOIS and RDAP servers, registry URL, domain counts, delegation dates, registry organization, administrative/technical contacts, and remarks.

Pass the TLD suffix without a leading dot (for example io or com).

Cost = 1 token.

ParametersJSON Schema
NameRequiredDescriptionDefault
tldYesTLD suffix to look up without a leading dot (for example io).

Output Schema

ParametersJSON Schema
NameRequiredDescription
tldNoTLD suffix without a leading dot.
typeNoTLD category (for example country-code or generic).
levelNoTLD level (1 for standard TLDs).
statusNoDelegation status (for example ACTIVE).
changedNoTLD record last changed timestamp.
createdNoTLD delegation created timestamp.
remarksNoAdditional registry notes or links.
contactsNoRegistry contact records.
rdap_serverNoAuthoritative RDAP server URL.
availabilityNoRegistration phase for the TLD.
organizationNoRegistry operator contact details.
registry_urlNoRegistry web site URL.
whois_serverNoAuthoritative WHOIS server host name.
domains_countNoApproximate registered domain count when reported by the registry.
Behavior2/5

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

No annotations exist, so the description must disclose behavioral traits. It mentions cost but fails to address side effects, authentication, rate limits, or that the operation is read-only.

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 sentences, front-loaded with purpose, lists returns, gives a usage hint, and mentions cost. No unnecessary words.

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-parameter tool with an output schema, the description covers purpose, parameter format, return fields, and cost. It lacks guidance on sibling differentiation but is otherwise 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?

The parameter 'tld' is fully described in the schema with 100% coverage. The description adds an example (com) but largely restates the schema, offering minimal extra 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 clearly states it looks up detailed registry information for a TLD, lists specific return fields, and distinguishes from sibling tools by focusing on TLD-level registry 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 implies usage for TLD registry lookups but does not compare to sibling tools like domains.lookup or domains.whois, nor provide 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.

domains.whoisAInspect

Fetch WHOIS registration data for a domain.

Returns a JSON object keyed by WHOIS server host name. Each value contains parsed fields such as Domain Name, registrar details, dates, name servers, domain status, DNSSEC data, and raw text lines.

Set include_registrar to true to query registry and registrar servers (slower, more complete). Default false queries the registry server only.

Cost = 4 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesDomain name to look up (for example example.com).
include_registrarNoWhen true, query registry and registrar WHOIS servers for more complete data. When false (default), query the registry server only.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

No annotations provided, so description carries full burden. It explains return format (JSON keyed by WHOIS server, parsed fields, raw text), parameter effect (include_registrar speed/complete trade-off), and cost. No contradictions.

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: purpose, return structure, parameter guidance, plus cost. Front-loaded and each sentence adds value.

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 output schema exists (not shown but hinted), description adequately covers return content (parsed fields, raw text). Complete for a lookup tool with two parameters.

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?

Schema has 100% description coverage, and the description adds meaning: explains include_registrar trade-off (slower but more complete) and mentions cost. Adds value beyond 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 states the tool fetches WHOIS registration data for a domain, with a specific verb ('Fetch') and resource ('WHOIS registration data'). It distinguishes from siblings like domains.check_availability and domains.dns_records by focusing on registration data.

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?

Explains when to use include_registrar (true for complete data, slower; false by default) and notes cost. However, it doesn't compare explicitly with alternatives like domains.rdap or provide 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.

google-maps.languagesAInspect

List supported language codes for Google Maps place endpoints.

Returns languages as a map of language names to codes (for example English: en). Use these codes with the language parameter on place detail, review, and photo calls.

Cost = 1 token.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
languagesNoMap of language names to language codes for Google Maps place endpoints (for example English: en).
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. It discloses the output format as a map of language names to codes and notes the cost of 1 token. No side effects or restrictions are mentioned, but for a simple read-only listing, the description is sufficiently 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 concise sentences: purpose, usage, and cost. Every sentence adds value with no redundant or extraneous information. Front-loaded effectively.

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's simplicity (no parameters, output schema exists), the description is complete. It explains what it does, the output format, how to use the output with other tools, and the cost. No 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?

The tool has zero parameters and 100% schema coverage, so the baseline is 4. The description does not need to add parameter info, and it does not.

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 'List supported language codes for Google Maps place endpoints' with a specific verb and resource. It distinguishes itself from sibling tools like google-maps.nearby_search or google-maps.place_details by being a utility that provides language codes for use with those endpoints.

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 'Use these codes with the language parameter on place detail, review, and photo calls,' providing clear context for when to use the tool. It does not explicitly state when not to use it or list alternatives, but the tool name and scope implicitly differentiate it from google-search.languages.

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

google-maps.place_detailsAInspect

Get detailed information for a Google Maps place.

Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional region and language are supported.

Returns a flat place object with fields such as name, full_address, location, hours, status, rating, review_count, website, phone_number, and types when available. Additional upstream fields may appear.

Cost = 4 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNoTwo-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data.
languageNoLanguage code for results (for example en).
place_idYesGoogle Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66).

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNoPlace display name.
hoursNoOpening hours when available.
typesNoPlace type labels when available.
ratingNoAverage user rating when available.
statusNoHuman-readable open/closed status when available.
websiteNoPlace website when available.
locationNoPlace coordinates when available.
full_addressNoFull formatted address when available.
phone_numberNoPlace phone number when available.
review_countNoTotal number of reviews when available.
Behavior4/5

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

No annotations provided, so the description carries the full burden. It discloses that the return is a flat place object, lists common fields, notes that additional upstream fields may appear, and states the token cost (4 tokens). This is sufficient for a read-only 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 five sentences, front-loaded with the core purpose. Every sentence adds useful information: purpose, input source, optional params, return details, and cost. 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 that an output schema exists (context signals indicate true), the description does not need to fully detail return structure. It lists typical fields and warns of additional upstream fields. Cost is included. Could mention location format (lat/lng) but not essential.

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 all three parameters. The description adds minimal value beyond the schema: it reiterates that place_id comes from search results and mentions the alternative business identifier form. Since schema already does the heavy lifting, a score 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?

The description explicitly states the action ('Get detailed information') and the resource ('a Google Maps place'). It distinguishes from sibling tools like search or nearby_search which return lists, while this retrieves details for a specific place using a place_id.

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 instructs to 'Provide place_id from search results', implying this tool is used after obtaining an identifier from a search. It does not explicitly state when not to use it versus other place-related siblings (place_photos, place_reviews), but the context is clear enough.

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

google-maps.place_photosAInspect

Get photos for a Google Maps place.

Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional cursor, region, and language are supported. Pass cursor from a previous cursor_next to fetch the next page.

Returns place metadata and a photos array. Each photo has photo_url and description when available. cursor_next appears only when a pagination cursor is available. Additional upstream fields may appear.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor from cursor_next on a previous response.
regionNoTwo-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data.
languageNoLanguage code for results (for example en).
place_idYesGoogle Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66).

Output Schema

ParametersJSON Schema
NameRequiredDescription
placeNoPlace metadata for the photo listing.
photosNoPlace photos.
cursor_nextNoCursor for the next page when more results are available.
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 the return format (photos array with photo_url and description), pagination via cursor_next, and cost of 3 tokens. No contradictory behavior noted.

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 concise, front-loaded with the purpose, then provides parameter guidance, return details, and cost in a clear, structured manner with no 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?

Given the tool has 4 parameters and an output schema, the description covers input requirements, pagination, and return structure adequately. It is sufficient for an agent to understand and invoke the tool, though it lacks error handling details.

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 3. The description adds value by explaining the place_id can be in business identifier form, cursor usage from previous response, and region/language effects, going beyond the schema's minimal 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 explicitly states 'Get photos for a Google Maps place' with a specific verb and resource. It clearly distinguishes the tool from siblings like place_details and place_reviews by focusing on photos.

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?

Provides guidance on providing place_id from search results and pagination cursor usage, but does not explicitly state when to use this tool over alternatives like place_details or place_reviews.

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

google-maps.place_reviewsAInspect

Get reviews for a Google Maps place.

Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional sort_by (Relevant, Lowest, Highest, Newest), cursor, region, and language are supported. Pass cursor from a previous cursor_next to fetch the next page.

Returns place metadata and a reviews array. Each review includes fields such as review_id, review_text, rating, and user_name. cursor_next appears only when a pagination cursor is available. Additional upstream fields may appear.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor from cursor_next on a previous response.
regionNoTwo-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data.
sort_byNoReview sort order: "Relevant" (default), "Lowest", "Highest", or "Newest".
languageNoLanguage code for results (for example en).
place_idYesGoogle Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66).

Output Schema

ParametersJSON Schema
NameRequiredDescription
placeNoPlace metadata for the reviewed location.
reviewsNoPlace reviews.
cursor_nextNoCursor for the next page when more results are available.
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. It discloses pagination via cursor_next, cost of 3 tokens, and the structure of returned data (place metadata, reviews array, fields). It also notes that additional upstream fields may appear. No contradictions or omissions are evident.

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 well-organized into short paragraphs: purpose, required parameter, optional parameters with usage, output structure, and cost. Every sentence adds value 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?

Given the tool's moderate complexity and the presence of an output schema, the description adequately explains the return format and pagination. It could mention error handling or rate limits, but the core functionality is well 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?

The input schema has 100% coverage with descriptions for all 5 parameters. The description adds minimal extra value by enumerating sort_by options and clarifying cursor usage for pagination. For high schema coverage, 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 'Get reviews for a Google Maps place', clearly stating the verb and resource. It distinguishes itself from sibling tools like place_details (general info) and review_details (single review) by focusing specifically on reviews.

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 that place_id comes from search results and that the business identifier form is accepted. It lists optional parameters and pagination usage. However, it does not explicitly state when not to use this tool versus alternatives like review_details or place_details.

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

google-maps.place_typesAInspect

List supported Google Maps place type values for search filters.

Returns place_types as a string array. Use a value with place_type on google-maps.search or google-maps.nearby_search.

Cost = 1 token.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
place_typesNoSupported Google Maps place type string values.
Behavior4/5

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

Discloses that the tool returns a string array and costs 1 token. No annotations are present, but the description is clear about the output and cost. No edge cases or limitations are mentioned, but the tool is simple and non-destructive.

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?

Extremely concise with three sentences: purpose, return/usage, and cost. No unnecessary words, front-loaded with the main action. Every sentence adds value.

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 an output schema, the description completes the picture by explaining the purpose, usage context (how to apply values), and cost. It is fully informative for a simple 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?

The tool has 0 parameters, so baseline score of 4 applies. The description does not need to add parameter-specific information as there are none.

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 lists supported Google Maps place type values for search filters. It specifies the return type (string array) and distinguishes it from other tools by indicating its use as a reference for place_type parameters in google-maps.search and google-maps.nearby_search.

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?

Explicitly instructs to use the returned values with place_type on google-maps.search or google-maps.nearby_search. Also mentions cost. Does not include when-not-to-use, but that is not necessary for a simple reference tool.

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

google-maps.review_detailsAInspect

Get details for one Google Maps review.

Provide review_id from a place reviews response. Returns one review object at the top level with fields such as review_id, review_text, rating, and user_name when available. Additional upstream fields may appear.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
review_idYesGoogle Maps review identifier.

Output Schema

ParametersJSON Schema
NameRequiredDescription
ratingNoStar rating for the review.
review_idNoReview identifier.
user_nameNoReviewer display name when available.
review_textNoReview body text.
Behavior3/5

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

No annotations are provided, so the description carries the burden. It mentions the return structure and cost but doesn't discuss permissions, safety, or error behavior. It's adequate but not thorough.

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 concise with three sentences covering purpose, usage, and output. It is front-loaded with the main action.

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 presence of an output schema, the description adequately covers the tool's purpose, input sourcing, and typical output fields. It could mention error handling or prerequisites, but it's reasonably 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?

The single parameter review_id is described in the schema. The description adds value by specifying how to obtain its value (from a place reviews response), going 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 states the tool gets details for one Google Maps review, using a specific verb and resource. It distinguishes from siblings like place_reviews by specifying the source of the review_id.

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 indicates to provide review_id from a place reviews response, giving clear usage context. It doesn't explicitly exclude other scenarios, but the sibling place_reviews is implied for listing.

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

google-maps.searchAInspect

Search Google Maps by text query.

Optional filters include location, radius (defaults to 1000 meters), open_now, min_price, max_price, place_type, language, and region. Pass cursor from a previous cursor_next to fetch the next page.

Returns matching places in places with names, full_address, place_id, ratings, and location. Use place_id with place detail, review, and photo endpoints.

cursor_next and cursor_previous appear only when pagination cursors are available. Additional upstream fields may appear.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query for places (for example restaurants in Paris).
cursorNoPagination cursor from cursor_next on a previous response.
radiusNoSearch radius in meters (default 1000).
regionNoTwo-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data.
languageNoLanguage code for results (for example en).
locationNoOptional latitude and longitude bias point (for example 40,-110). A location embedded in the query may override this.
open_nowNoWhen true, return only places open for business at query time.
max_priceNoMaximum price level (0–4, inclusive).
min_priceNoMinimum price level (0–4, inclusive).
place_typeNoRestrict results to a single Google Maps place type (for example restaurant).

Output Schema

ParametersJSON Schema
NameRequiredDescription
placesNoMatching places from the text search. Additional upstream fields may appear.
cursor_nextNoCursor for the next page when more results are available.
cursor_previousNoCursor for the previous page when available.
Behavior4/5

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

With no annotations, the description carries full burden. It discloses the output fields, pagination behavior ('cursor_next and cursor_previous appear only when pagination cursors are available'), and cost (10 tokens). It also notes that 'additional upstream fields may appear,' which is transparent about potential extra data.

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 concise and front-loaded with the primary action. Every sentence adds value: optional filters, default radius, pagination, return fields, chaining, cursor behavior, and cost. No unnecessary repetition or filler.

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's complexity (10 params, 1 required, has output schema), the description covers purpose, parameters with defaults, return structure, pagination, and cost. It also mentions that additional upstream fields may appear. This is sufficient for an agent to use the tool correctly without additional information.

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 baseline is 3. The description adds minor context like default radius (1000 meters) and cursor usage, but largely repeats schema descriptions (e.g., location override comment). No significant new parameter meaning beyond what schema provides.

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 'Search Google Maps by text query.' It distinguishes from sibling tools like place_details, place_photos, and nearby_search by specifying that it returns matching places with key fields (names, full_address, place_id, etc.) and that results can be used with other endpoints via place_id.

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 on when to use this tool (text-based search) and how to handle pagination (using cursor). It also suggests chaining with place detail, review, and photo endpoints. However, it does not explicitly contrast with nearby_search or discuss when not to use this tool.

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

google-search.autocompleteAInspect

Get Google Search autocomplete suggestions for a partial query.

Returns the normalized query and an array of suggested search phrases.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesPartial search keywords or phrase.

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNoNormalized query echoed from the request.
suggestionsNoSuggested search phrases for the query.
Behavior3/5

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

No annotations are provided, so the description must carry the transparency burden. It mentions 'Cost = 5 tokens' and describes the return type, but does not explicitly state if the operation is read-only, idempotent, or any side effects. The cost disclosure is a positive but incomplete.

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 sentences, front-loaded with the primary purpose. Every sentence adds necessary information: purpose, output, and cost. No wasted words.

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's simplicity (one required param, no nested objects) and the presence of an output schema that likely details the return structure, the description provides sufficient context. It covers the core functionality, input constraints, and cost.

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 the single parameter, which already describes 'Partial search keywords or phrase.' The description adds value by explaining the return value (normalized query and suggestions) and cost, going beyond the schema. However, it does not add new parameter-level detail.

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 verb 'Get', the resource 'Google Search autocomplete suggestions', and the input 'partial query'. It also mentions the output (normalized query and array of suggested phrases). This differentiates it from siblings like google-search.keyword_traffic_insights or google-search.languages.

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 partial queries ('autocomplete suggestions for a partial query') but does not explicitly state when to use or when not to use this tool versus alternatives. 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.

google-search.keyword_traffic_insightsAInspect

Get Google keyword traffic insights and related keyword suggestions for a seed keyword.

Returns an array of keyword suggestions. Each item includes text, monthly search volume, competition_level, competition_index, low_bid, high_bid, and trend.

Required: keyword and language (for example en). Optional: location (for example US) for country-specific data; omit location for global results (default). Optional: mode (exact or all, default all), min_search_volume (default 0), and intent (informational, navigational, commercial, or transactional).

Cost = 20 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoKeyword suggestion filter: exact returns only suggestions that exactly match the seed keyword; all returns all suggestions (default).all
intentNoFilter by search intent: informational, navigational, commercial, or transactional.
keywordYesSeed keyword to get traffic insights and suggestions for.
languageYesLanguage code for the search market (for example en).
locationNoOptional country or region code for localized traffic (for example US). Omit for global keyword insights.
min_search_volumeNoMinimum monthly search volume; only keywords at or above this threshold are returned.

Output Schema

ParametersJSON Schema
NameRequiredDescription
keyword_suggestionsNoKeyword suggestions with traffic and competition metrics.
Behavior3/5

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

No annotations provided, so the description carries the full burden. It discloses the output structure and cost (20 tokens), but does not explicitly state that the tool is read-only, safe, or if authentication is required. It partially covers behavioral traits but is not comprehensive.

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 (two paragraphs) and front-loads the purpose and output structure. Every sentence adds value without redundancy. It could be slightly shorter but 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?

With an output schema present, the description does not need to detail return values. It covers purpose, parameter list, cost, and output structure sufficiently for a keyword traffic insights tool. Slight gaps (error handling) are acceptable given the 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%, so baseline is 3. The description adds some value by summarizing parameters with examples (en, US) and clarifying default behavior (omit location for global), but much of this is already in the schema descriptions. It does not significantly extend 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 ('Get') and identifies the resource ('Google keyword traffic insights and related keyword suggestions'). It clearly distinguishes from sibling tools like google-search.autocomplete and google-search.url_traffic_insights by focusing on keyword traffic, not autocomplete or URL metrics.

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 required and optional parameters, defaults, and cost. It implies usage context (keyword research) but does not explicitly mention when not to use this tool (e.g., for URL traffic use url_traffic_insights). This is 'clear context, no exclusions' matching a 4.

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

google-search.languagesAInspect

List languages you can pass as language on google-search.keyword_traffic_insights and google-search.url_traffic_insights.

Returns an array of entries with language_name and language_code (for example en, de). Maps to upstream lang on the provider API. No request parameters.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
languagesNoSupported languages for the language request parameter.
Behavior4/5

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

No annotations provided, but description covers output format, example values, and cost. Read-only nature is implied.

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, each adding value: purpose, output details, and cost. No 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?

Fully describes the tool's purpose, output, and usage context. No gaps given the simplicity.

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?

No parameters, so schema coverage is 100%. Description adds context about usage with other tools and output format, meeting baseline for zero-parameter tools.

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?

Clearly states the tool lists languages for use in google-search.keyword_traffic_insights and url_traffic_insights. Distinguishes from siblings by specifying its role as a supporting 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?

Describes when to use (to get language parameters for other tools) and mentions no request parameters. Lacks explicit exclusion of alternatives like google-search.locations.

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

google-search.locationsAInspect

List countries and region codes you can pass as location on google-search.keyword_traffic_insights and google-search.url_traffic_insights.

Returns an array of entries with country_name and country_code (for example US, GB). No request parameters.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
locationsNoSupported countries for the location request parameter.
Behavior4/5

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

No annotations provided, but description discloses it has no request parameters, returns an array with specific fields, and has a cost of 5 tokens. This fully covers the read-only, deterministic 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?

Three concise sentences: purpose, output format, cost. No redundant phrases. Front-loaded with key action and target tools.

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?

Tool is simple with no parameters and output schema exists. Description explains output structure and purpose completely, leaving no gaps for an agent to use 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?

No parameters exist, so baseline 4 applies. Description adds no parameter info, but none needed.

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 clearly states the tool lists countries and region codes, with specific verb 'List'. It distinguishes from sibling tools like seo.country_codes by linking exclusively to google-search.keyword_traffic_insights and url_traffic_insights.

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?

Explicitly states when to use: before calling the two Google Search traffic insights tools. Lacks mention of alternatives like seo.country_codes but provides sufficient context for an agent to decide.

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

google-search.url_traffic_insightsAInspect

Get Google keyword traffic insights and related keyword suggestions for a URL.

Returns an array of keyword suggestions. Each item includes text, monthly search volume, competition_level, competition_index, low_bid, high_bid, and trend.

Required: url and language (for example en). Optional: location (for example US) for country-specific data; omit location for global results (default). Optional: min_search_volume (default 0) and intent (informational, navigational, commercial, or transactional).

Cost = 20 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic http or https URL to get traffic insights and suggestions for.
intentNoFilter by search intent: informational, navigational, commercial, or transactional.
languageYesLanguage code for the search market (for example en).
locationNoOptional country or region code for localized traffic (for example US). Omit for global URL keyword insights.
min_search_volumeNoMinimum monthly search volume; only keywords at or above this threshold are returned.

Output Schema

ParametersJSON Schema
NameRequiredDescription
keyword_suggestionsNoKeyword suggestions with traffic and competition metrics.
Behavior5/5

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

No annotations are provided, so the description fully bears the transparency burden. It discloses the cost (20 tokens), the return format (array of keyword suggestions with specific fields), and the behavior (no destructive actions). This is comprehensive for the tool's nature.

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 concise with 4 sentences, each serving a purpose: purpose, return data, parameter details, and cost. It is front-loaded with the main action and efficiently organized.

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 having 5 parameters and being a complex SEO tool, the description is complete: it explains all parameters, return data, and cost. The output schema exists, so return values are covered. Sibling tools exist but this tool's unique focus on URL traffic insights is clear.

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 input schema covers all 5 parameters, and the description adds meaningful context: it gives an example for language, explains that omitting location yields global results, specifies default min_search_volume as 0, and describes intent filter options. This adds value 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 states the tool gets Google keyword traffic insights and related keyword suggestions for a URL. It distinguishes from sibling tools like google-search.keyword_traffic_insights by focusing on URL-based insights, providing a specific verb+resource combination.

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 required and optional parameters, including defaults and examples. It provides context for when to use the tool (for URL keyword insights) but does not explicitly state when not to use it or list alternatives among siblings.

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

google-trends.categoriesAInspect

List all Google Trends category and subcategory labels you can pass to other Google Trends tools in the category field.

Returns cat (array of category names, including All categories) and msg. Use this before interest-over-time or interest-by-region calls when filtering by category.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
catNoCategory and subcategory names accepted by the category field.
msgNoStatus or informational message from the upstream API (often empty).
Behavior5/5

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

Given no annotations, the description fully discloses that it returns an array of category names and a message, and mentions the cost of 5 tokens. It accurately portrays a simple read-only list operation with no hidden 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 four sentences, front-loaded with purpose, includes return values, usage advice, and cost. Every sentence is valuable 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?

The description is complete for a simple list tool: states purpose, return structure, and usage integration with siblings. The existence of an output schema mitigates the need for further detail on return format. Minor gap: does not mention if the category list is exhaustive or dynamic.

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?

With zero parameters and 100% schema coverage, the description doesn't need to add parameter detail. It adds value by explaining return values and usage context, earning a baseline score of 4.

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 lists all Google Trends category and subcategory labels, with a specific verb ('list') and resource ('categories'). It distinguishes from sibling tools by noting these labels are passed to other Google Trends 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?

Explicitly advises to use this before interest-over-time or interest-by-region calls when filtering by category, providing clear context and when-not-to-use scenarios.

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

google-trends.interest_by_regionAInspect

Fetch Google Trends interest-by-region breakdowns for one to five keywords.

Returns a JSON object whose top-level keys are your keywords. Each value maps location names (countries or subregions) to interest scores (0–100).

Requires start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). Optional end defaults to now. country defaults to global; region requires a valid country. category and gprop default to all when omitted or empty. resolution is COUNTRY (default) or REGION.

Cost = 40 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoRange end in datetime-with-timezone form. Defaults to now.
gpropNoGoogle property filter (for example images, news, youtube, froogle). Defaults to all.
startYesRange start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100).
regionNoRegion within country. Requires country when set.
countryNoCountry name for geo filtering. Defaults to global.
categoryNoTrends category or subcategory. Defaults to all.
keywordsYesUp to five keywords to compare.
resolutionNoGeographic resolution: COUNTRY (default) or REGION.COUNTRY

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

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

Describes the return format (JSON object with keyword keys and location-score mappings) and cost (40 tokens). Without annotations, the description covers basic behavior but lacks details on error handling, rate limits, or permissions, which would enhance 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?

Extremely concise with three short sentences covering purpose, output, parameters, and cost. No redundant information; every sentence earns its place and 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 8 parameters and output schema, the description covers the essential behavior, output shape, and parameter defaults/constraints. Minor gaps: no mention of error handling or what happens with invalid inputs, but overall complete enough given the output schema exists.

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%, baseline 3. The description adds value by clarifying defaults (end defaults to now, country defaults to global) and constraints (region requires country, category/gprop default to all) beyond the schema's property descriptions, providing an example for start.

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?

Clearly states 'Fetch Google Trends interest-by-region breakdowns for one to five keywords.' The verb 'Fetch' and specific resource 'interest-by-region breakdowns' with the keyword range distinguish it from sibling tools like interest_over_time or related_queries.

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 context on when to use (region breakdowns) and explains parameter usage with defaults and constraints (e.g., 'region requires a valid country', 'resolution is COUNTRY (default) or REGION'). However, it does not explicitly mention when not to use or list alternative trend tools.

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

google-trends.interest_over_timeAInspect

Fetch Google Trends interest-over-time series for one to five keywords.

Returns a JSON object whose top-level keys are your keywords. Each value maps timestamps to interest scores (0–100). Granularity depends on the requested date range (from about one minute to monthly buckets).

Requires start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). Optional end defaults to now. country defaults to global; region requires a valid country. category and gprop default to all when omitted or empty.

Cost = 40 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoRange end in datetime-with-timezone form. Defaults to now.
gpropNoGoogle property filter (for example images, news, youtube, froogle). Defaults to all.
startYesRange start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100).
regionNoRegion within country. Requires country when set.
countryNoCountry name for geo filtering. Defaults to global.
categoryNoTrends category or subcategory. Defaults to all.
keywordsYesUp to five keywords to compare.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Despite no annotations, the description discloses the return structure (JSON with keyword-to-timestamp mapping, scores 0–100) and granularity dependence on date range. It also mentions cost and required datetime format, providing good behavioral context beyond basic 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 concise at about six sentences, with no redundant information. It front-loads the main purpose, then briefly explains return format and parameter specifics, making it efficient and easy 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 seven parameters, full schema coverage, and the existence of an output schema, the description covers the essential aspects: purpose, return format, parameter constraints, and defaults. It is sufficiently complete for a fetch-like tool, though it could mention rate limits or specific error conditions.

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?

With 100% schema description coverage, the baseline is 3. The description adds value by clarifying relationships (e.g., 'region requires a valid country') and defaults ('country defaults to global, category and gprop default to all'), which goes beyond the schema alone.

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 clear verb and resource: 'Fetch Google Trends interest-over-time series for one to five keywords.' It specifies the exact resource (interest-over-time series) and the number of keywords, distinguishing it from sibling tools like interest_by_region or related_queries.

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 context on required and optional parameters, defaults, and constraints like 'region requires a valid country.' However, it does not explicitly state when to use this tool versus alternatives, nor does it provide guidance on 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.

google-trends.regionsAInspect

List all countries and subregions you can pass to other Google Trends tools in the country and region fields.

Returns geo.countries: each country name maps to country (label) and regions (array of subregion names). Also returns msg.

Use this before interest-over-time or interest-by-region calls when filtering by geography. Pair with google-trends.categories when filtering by category.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
geoNoGeographic options keyed by country name.
msgNoStatus or informational message (often empty).
Behavior4/5

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

No annotations provided, but the description discloses the output structure (geo.countries with label and regions) and the cost (5 tokens). It adds behavioral context beyond the input 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 concise, with three sentences and a cost note. It front-loads the purpose and avoids unnecessary details.

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 (0 parameters, no nested objects). The description sufficiently covers its behavior, output structure, and usage context. The output schema likely provides additional details, but the description is complete for selection and 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?

The tool has no parameters, so the description carries the full burden. It explains the purpose and output, adding meaning beyond the empty schema. Baseline 4 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 states the tool provides a list of countries and subregions for use in other Google Trends tools. It uses specific verbs (list) and resources (countries and subregions), distinguishing itself from siblings like interest_over_time.

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?

Explicitly advises using this tool before interest-over-time or interest-by-region calls when filtering by geography, and pairs with categories for category filtering. This provides clear when-to-use guidance and alternative tools.

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

google-trends.related_queriesAInspect

Fetch Google Trends related queries for one to five keywords.

Returns a JSON object whose top-level keys are your keywords. Each value has top and rising sections; each section has query (rank index to query string) and value (rank index to score).

Requires start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). Optional end defaults to now. country defaults to global; region requires a valid country. category and gprop default to all when omitted or empty.

Use google-trends.categories and google-trends.regions to discover valid category, country, and region values.

Cost = 40 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoRange end in datetime-with-timezone form. Defaults to now.
gpropNoGoogle property filter (for example images, news, youtube, froogle). Defaults to all.
startYesRange start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100).
regionNoRegion within country. Requires country when set.
countryNoCountry name for geo filtering. Defaults to global.
categoryNoTrends category or subcategory. Defaults to all.
keywordsYesUp to five keywords to compare.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

The description fully covers the return format (JSON with top and rising sections, rank index mappings), parameter formats (datetime-with-timezone), defaults, and token cost. No annotations are present, so the description carries the full burden, and it succeeds.

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?

Six sentences, each with clear purpose: purpose, return format, parameter details, references to other tools, and cost. Front-loaded with the main action. No extraneous information.

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's complexity (7 parameters, output schema present), the description covers all necessary behavioral aspects, parameter constraints, and return structure. It is complete enough for an agent to use 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 input schema already has 100% description coverage, so baseline is 3. The description adds value by explaining the required datetime format, dependency between region and country, and default behaviors (gprop, category default to all). This justifies a score above 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 starts with a specific verb ('Fetch') and resource ('Google Trends related queries') for one to five keywords. This clearly distinguishes it from sibling tools like interest_over_time or interest_by_region.

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 parameter defaults and dependencies (e.g., region requires country), and references tools for valid values. However, it does not explicitly state when to use this tool versus other google-trends tools.

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

google-trends.suggestionsAInspect

Get Google Trends suggestions for a single keyword.

Returns result: an array of suggested topics and entities, each with mid (topic id), title (display name), and type (for example Topic, Software, Book).

Use this to refine keywords before interest-over-time, interest-by-region, or related-queries calls.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYesKeyword or phrase to get suggestions for.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultNoSuggested topics and entities for the keyword.
Behavior4/5

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

With no annotations, the description fully bears the burden of behavioral disclosure. It describes the output structure (array of suggested topics with mid, title, type) and states the token cost (10 tokens). This is sufficient for a read-only suggestion tool, though it lacks potential error cases 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.

Conciseness5/5

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

The description is concise (4 sentences), front-loaded with the purpose, then output details, usage guidance, and cost. Every sentence adds value with no wasted words.

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 one parameter, no annotations, and an existing output schema, the description adequately covers input requirements, output structure, usage context, and cost. It is complete for the tool's complexity, though it could optionally mention result limits or edge 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% (the keyword parameter has a description). The tool description adds only that it's for a single keyword, which is already implied by the parameter name. Baseline 3 is appropriate since the schema already handles parameter documentation.

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 'Get Google Trends suggestions for a single keyword,' using a specific verb and resource. It also distinguishes from sibling tools by explaining its role in refining keywords before other Google Trends calls like interest-over-time, interest-by-region, or related-queries.

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 says 'Use this to refine keywords before interest-over-time, interest-by-region, or related-queries calls,' providing clear context for when to use the tool. However, it does not mention when not to use it or list alternatives.

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

meta-tools.describeAInspect

Describe a single Vee3 capability.

Pass the MCP tool name (for example website-screenshots.capture) or capability id (for example website-screenshot). Use this after meta-tools.list_group_tools when you need parameter names, defaults, response fields, examples, and token cost before calling a tool

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
tool_nameYesMCP tool name (for example `x-twitter.create_post`) or capability id (for example `create-x-post`).

Output Schema

ParametersJSON Schema
NameRequiredDescription
toolNoFull capability detail including fields, examples, and bindings.
capability_idNoDescribed capability id.
Behavior5/5

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

Discloses key behavioral traits: cost is 0 tokens, returns parameter names, defaults, response fields, examples, token cost. No annotations were provided, so description carries full burden; it does so comprehensively.

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, front-loaded with purpose, then usage and cost. No wasted words; highly efficient and clear.

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?

With output schema present, description covers all necessary information: purpose, input, usage context, output content, and cost. Fully complete for the tool's function.

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 schema already describes the parameter. Description adds examples (website-screenshots.capture) and context for use after list_group_tools, but does not add new semantic meaning beyond 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?

Explicitly states it describes a single Vee3 capability, with clear verb+resource. Distinguishes from sibling meta-tools by specifying it is for a single tool/capability, and references list_group_tools as a preceding step.

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?

Clearly says 'Use this after meta-tools.list_group_tools when you need parameter names, defaults, response fields, examples, and token cost before calling a tool.' Provides explicit context and alternatives (list_group_tools). Also notes cost=0 tokens.

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

meta-tools.list_allAInspect

List all live Vee3 agent tools.

Use this when you need to discover which tools exist and what they are called in MCP. Each entry includes mcp_tool_name, group_id, and summary. Use meta-tools.describe for full request/response schemas and token costs

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
toolsNoLive tool summaries for every capability exposed to agents.
Behavior4/5

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

No annotations are provided, so the description carries the burden. It discloses that the tool lists 'live' tools and that the cost is 0 tokens. It doesn't elaborate on what 'live' means or other behavioral aspects, but for a read-only listing, this is 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 sentences, front-loaded with the core purpose, includes usage guidance, references a sibling tool, and notes token cost. No wasted words.

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 listing tool with no parameters and an existing output schema, the description covers purpose, entry contents, cost, and points to more detailed tool. It 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?

The input schema has no parameters and schema coverage is 100% trivially. The description adds no parameter-specific information because there are none, so baseline score 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 states 'List all live Vee3 agent tools' and specifies that each entry includes mcp_tool_name, group_id, and summary. It distinguishes itself from sibling meta-tools.describe by directing users there for 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 says 'Use this when you need to discover which tools exist and what they are called in MCP' and points to meta-tools.describe for more detail. It could be more explicit about when not to use, but the guidance is clear for a listing tool.

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

meta-tools.list_groupsAInspect

List all Vee3 capability groups.

Use this to see how tools are organized (for example website-screenshots or meta-tools) before listing tools in a specific group

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
groupsNoCapability groups with live tool counts.
Behavior3/5

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

No annotations provided. The description only mentions 'Cost = 0 tokens', which is helpful but insufficient for full transparency. For a simple list tool with no parameters, the behavioral disclosure is adequate but not rich.

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 very concise, with three short sentences that are all substantive and front-loaded. No wasted words.

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 parameters and an output schema exists, the description covers purpose and usage adequately. It could mention authentication or limitations, but for a simple list tool it is reasonably 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?

The tool has no parameters, and schema coverage is 100% (vacuously). Baseline score of 4 applies as description does not need to add parameter information.

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 'List all Vee3 capability groups', using a specific verb and resource. It distinguishes from sibling tools like list_all and list_group_tools by focusing on groups.

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: 'Use this to see how tools are organized... before listing tools in a specific group'. It implies when to use and hints at workflow, though lacks explicit exclusions.

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

meta-tools.list_group_toolsAInspect

List live tools belonging to a single capability group.

Use group_id from meta-tools.list_groups (for example website-screenshots). Returns name and summary for each live tool in the group

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
group_idYesGroup id to list tools for (for example website-screenshots).

Output Schema

ParametersJSON Schema
NameRequiredDescription
toolsNoLive tool summaries in the requested group.
group_idNoRequested group id.
Behavior4/5

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

No annotations provided, but the description indicates a read-only operation ('List live tools') and mentions cost is 0 tokens. It does not disclose side effects or permissions, but for a listing tool this is adequate.

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 very concise with three short sentences. The first sentence front-loads the purpose, and every sentence adds value without 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?

Despite lacking an output schema in the input, the description explains it returns name and summary for each tool. For a simple listing tool, it provides all necessary 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 the schema already describes group_id with an example. The description repeats the example but adds no new semantic detail 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 states the verb 'List' and the resource 'live tools belonging to a single capability group'. It provides an example group_id and distinguishes from siblings like list_groups and list_all.

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 advises using group_id from meta-tools.list_groups, giving clear prerequisite. It does not explicitly state when not to use or alternatives, but the guidance is sufficient.

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

meta-tools.list_uploaded_filesAInspect

List files currently stored for the authenticated Vee3 account.

Returns file_name, content_type, size_bytes, uploaded_at. Use file_name to reference a file in other capabilities.

Files are stored for 14 days

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
filesNoFiles currently stored for the authenticated account, newest first.
Behavior3/5

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

With no annotations, the description carries full burden. It discloses file storage duration (14 days), cost (0 tokens), and return fields. However, it does not mention potential limits on file count or ensure completeness of listing.

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?

Remarkably concise with every sentence providing essential information: purpose, output, usage hint, retention policy, and cost. No wasted words, front-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?

Given output schema exists (listing return fields) and no parameters, the description is fully complete. Covers purpose, output, usage, and constraints adequately for a simple 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?

No parameters exist (0 params, 100% schema coverage). Baseline score of 4 applies as description adds no parameter info but none is needed.

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?

Clearly states verb 'List' and resource 'files currently stored for the authenticated Vee3 account'. Distinguishes from sibling tools like 'upload_file' by focusing on listing existing files.

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?

Explains what it returns and how to use the output (file_name for referencing in other capabilities). Mentions storage duration and cost. Does not explicitly state when not to use, but context is clear.

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

meta-tools.report_bugAInspect

Report a bug, error, or anything that did not work as expected while using Vee3.

Use this when a capability fails unexpectedly, returns wrong data, or behaves inconsistently. Include what you tried, what happened, and any error output

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
summaryYesShort title describing the issue.
descriptionYesDetailed explanation of what went wrong, what was expected, and steps to reproduce if known.
error_detailsNoRaw error message, stack trace, or API response that shows the failure.
related_capability_idNoMCP tool name or capability id involved in the issue, if applicable.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoSubmission status. Always "received" on success.
report_idNoUnique identifier for the submitted bug report.
created_atNoISO 8601 timestamp when the report was recorded.
Behavior3/5

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

No annotations provided, so description carries full burden. Mentions cost is 0 tokens, but does not detail side effects (e.g., data storage, response behavior). Adequate but could be more transparent about what happens after submission.

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?

Very concise: three short sentences plus 'Cost = 0 tokens.' Front-loaded with purpose. No unnecessary words.

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 full schema coverage and existence of output schema, description covers purpose, usage guidance, and key parameters. Does not discuss output format, but that is likely covered by output schema. Complete for a bug report 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 coverage is 100%, so baseline is 3. Description adds minimal value beyond schema: 'Include what you tried, what happened, and any error output' aligns with 'description' parameter but does not elaborate on other parameters.

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 'Report a bug, error, or anything that did not work as expected while using Vee3.' It distinguishes from sibling tool 'request_feature' by focusing on failures and inconsistencies.

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?

Explicitly says 'Use this when a capability fails unexpectedly, returns wrong data, or behaves inconsistently.' Also advises to include what was tried and error output. Does not explicitly mention when not to use, but context with sibling request_feature provides implicit alternative.

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

meta-tools.request_featureAInspect

Request a new capability or feature that Vee3 does not offer yet.

Use this when you need something that is not available in the catalog — a missing integration, data source, workflow, or enhancement to an existing capability. Describe what you need, why you cannot accomplish it today, and how you would use it

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
summaryYesShort title describing the requested capability or feature.
use_caseNoExample workflow or scenario where this feature would be used.
descriptionYesDetailed explanation of what is needed, why it cannot be done with existing tools, and how it would help.
related_capability_idNoCapability id this request extends or relates to, if applicable.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoSubmission status. Always "received" on success.
created_atNoISO 8601 timestamp when the request was recorded.
request_idNoUnique identifier for the submitted feature request.
Behavior3/5

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

No annotations present, so description carries full burden. It mentions 'Cost = 0 tokens' but does not disclose other behavioral traits like async processing, ticket creation, or expected response time.

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 plus a cost note. Front-loaded with purpose. Every sentence adds value, no 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?

Tool is simple (request a feature). Output schema exists, so return values are covered. Description includes what to provide and why. Could mention limitations like rate limits, but overall 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 has 100% coverage with descriptions for all 4 parameters. Description adds minimal extra meaning beyond schema (e.g., reinforces that description should explain why not possible). 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?

Clearly states verb 'Request' and resource 'a new capability or feature that Vee3 does not offer yet'. Distinguishes from sibling meta-tools like list_all, report_bug, etc.

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?

Explicitly says 'Use this when you need something that is not available in the catalog' and provides examples (missing integration, data source, workflow, enhancement). Does not explicitly state when not to use, but context is sufficient.

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

meta-tools.searchAInspect

Search live Vee3 agent tools by keyword or short task description.

Call this first when you are unsure which tool to use. Returns ranked matches with tool_name, summary, and cost for each hit. Use meta-tools.describe on the best match for full request and response schemas.

Optional group_id narrows results to one capability group. limit defaults to 8 (maximum 20).

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results to return (1–20).
queryYesKeywords or short task description (for example `tiktok video comments` or `domain availability`).
group_idNoOptional group id to narrow results (for example `x-twitter`).

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNoNormalized search query that was executed.
resultsNoRanked capability matches visible to the caller.
Behavior5/5

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

With no annotations, the description fully covers behavioral traits: it's a search (read-only), returns ranked matches with tool_name, summary, and cost, and notes 'Cost = 0 tokens.' No misleading or omitted 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?

Concise, front-loaded first sentence. Every sentence adds value: purpose, when to use, output, follow-up, optional parameters, cost. No wasted words.

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?

Complete for a search tool with output schema. Covers usage, parameters, output structure, and next steps. No missing information given the tool's complexity.

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 3. Description adds context: explains group_id narrows to capability group, limit defaults to 8 (max 20), and query is keywords or task description. Adds value beyond 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 states the tool's function: 'Search live Vee3 agent tools by keyword or short task description.' It distinguishes from siblings like meta-tools.describe by advising to call this first when unsure and to use describe on the best match.

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 when-to-use guidance: 'Call this first when you are unsure which tool to use.' Also suggests follow-up with meta-tools.describe. Could explicitly mention when not to use it, but still strong.

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

meta-tools.token_balanceAInspect

Get the current API token balance for the authenticated account.

Returns tokens used, tokens remaining, monthly allowance, billing plan, and when the allowance resets (billing_period_end). Use this before expensive calls or when you receive a 402 insufficient_tokens response

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
tokens_usedNoTokens consumed in the current billing period.
billing_planNoCurrent billing plan id (free, starter, pro, scale).
tokens_remainingNoTokens left before quota is exhausted.
billing_period_endNoISO 8601 end of the current billing period.
billing_period_startNoISO 8601 start of the current billing period.
monthly_token_allowanceNoTotal tokens included in the current billing period.
billing_period_resets_atNoISO 8601 timestamp when the token allowance resets (same as period end).
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses it's a read operation ('get'), cost=0 tokens, and what data is returned. Could mention authentication requirements but it's implicitly assumed for an API token balance endpoint. Still highly 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 concise sentences: purpose, return fields, usage guidance, cost. No wasted words.

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 no parameters and an existing output schema, description fully covers the tool's functionality and context. Complete for a simple zero-parameter read 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?

No parameters (empty schema, 100% coverage). Baseline 4 as description adds no param info but none needed.

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 'Get the current API token balance' with a specific verb and resource. It distinguishes from sibling tools as no other tool provides token balance. It also lists exact return fields.

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?

Explicit guidance: 'Use this before expensive calls or when you receive a 402 insufficient_tokens response' – tells the agent exactly when to invoke this tool.

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

meta-tools.upload_fileAInspect

Reserve a direct upload slot for a local file.

Pass the desired file_name only. The name may omit an extension. Vee3 returns an upload_code.

Install the uploader once with npm install -g @vee3/upload (requires Node 18+), then run vee3-upload {upload_code} {file_path} in the terminal. The CLI resolves the code to a signed upload URL, streams the local file to Vee3 storage, and prints the stored file_name after the upload finishes. Use that file_name in meta-tools.list_uploaded_files and other capabilities. The CLI does not need an API key.

If installation fails with a TLS or certificate error (common on networks that inspect HTTPS traffic), use Node 22.15 or newer and run with NODE_OPTIONS=--use-system-ca, or configure npm to trust your network's root certificate.

Files can be up to 2 GB and are stored for 14 days. After the upload is detected, Vee3 bills 1 token per 20 MiB, rounded up with a minimum of 1 token. Upload codes can be resolved within 60 minutes of reserve.

Use meta-tools.list_uploaded_files to list stored uploads for follow-up work.

Cost = 0 tokens to reserve. After upload completes, billing is 1 token per 20 MiB, rounded up (minimum 1 token).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_nameYesDesired file name for the uploaded file. Extension is optional and is replaced based on detected file type.

Output Schema

ParametersJSON Schema
NameRequiredDescription
commandNoSuggested terminal command for uploading the local file.
max_bytesNoMaximum allowed file size in bytes.
upload_idNoStable identifier for the reserved upload.
expires_atNoISO 8601 timestamp when the upload code can no longer be resolved (60 minutes after reserve).
upload_codeNoShort code to pass to the @vee3/upload CLI.
install_commandNoOne-time command to install the uploader CLI (`npm install -g @vee3/upload`). On networks that inspect HTTPS, install may require Node 22.15+ with NODE_OPTIONS=--use-system-ca.
troubleshootingNoWhat to do if installation or uploading fails: re-read this tool's description via meta-tools.describe for setup and troubleshooting steps.
Behavior5/5

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

Since no annotations are provided, the description fully carries the burden. It discloses that the tool only reserves a slot (not uploads), returns an upload_code, the CLI handles actual upload, files stored for 14 days, billing details, and resolution timeout. No behavioral surprises.

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 lengthy but front-loaded with the core purpose. Each sentence adds necessary information (billing, CLI, storage limits). Minor redundancy could be trimmed, but overall well-structured.

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 multi-step nature (reservation, CLI upload, billing, error handling), the description covers all necessary aspects for successful use. It explains the flow, prerequisites, constraints, and follow-up actions, making it fully self-contained.

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?

With 100% schema coverage, baseline is 3. The description adds value by explaining that the name may omit an extension and that extension is replaced based on detected type, which is not fully clear from the schema alone.

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 'Reserve a direct upload slot for a local file,' which clearly states the tool's primary verb and resource. It distinguishes itself from the sibling tool 'meta-tools.list_uploaded_files' by mentioning it for follow-up work.

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 provides explicit step-by-step instructions on how to use the tool: pass file_name, install CLI, run vee3-upload command, use resulting file_name. It also includes troubleshooting for TLS errors and references when to use list_uploaded_files, giving clear usage context.

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

rotten-tomatoes.celebrity_detailsAInspect

Look up a celebrity on Rotten Tomatoes by slug (for example morgan-freeman).

Returns name, bio, birth date and place, profile image, and filmography lists for movies and TV with scores and years.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
celebrity_slugYesCelebrity slug (for example morgan-freeman).

Output Schema

ParametersJSON Schema
NameRequiredDescription
tvNoTV credits with title, slug, year, and score.
nameNoCelebrity name.
slugNoCelebrity slug.
moviesNoMovie credits with title, slug, year, and score.
Behavior4/5

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

With no annotations, the description carries full burden. It discloses read-only behavior and lists returned fields (name, bio, birth date/place, profile image, filmography). Cost is mentioned. No contradictions or hidden 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?

Three sentences: purpose, return fields, cost. Every sentence adds value, no fluff. Front-loaded with the core action.

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 simple tool with one parameter and an output schema, the description provides all necessary context: input, output summary, and cost. No gaps for typical usage.

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 covers the single parameter with 100% description coverage. The description re-iterates the slug format example but adds little beyond 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 states the tool looks up a celebrity by slug on Rotten Tomatoes, specifying the resource (celebrity), action (look up), and identifier (slug). It distinguishes from sibling tools like movie_details or search by focusing on celebrity 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 usage for looking up celebrity details by slug but does not explicitly mention when not to use it or compare with alternatives like rotten-tomatoes.search or other celebrity-related tools.

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

rotten-tomatoes.movie_cast_and_crewAInspect

List cast and crew credits for a movie by slug (for example shawshank-redemption).

Returns cast and crew members with names, roles, character names, and profile links where available.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
movie_slugYesMovie slug (for example shawshank-redemption).

Output Schema

ParametersJSON Schema
NameRequiredDescription
castNoCast and crew credits for the movie.
slugNoMovie slug.
Behavior3/5

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

No annotations provided, so description must carry the burden. It discloses the output fields (names, roles, character names, profile links) and cost, but does not mention side effects, authentication, rate limits, or other behavioral traits. For a read-only list tool, this is adequate but not rich.

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: purpose, output, cost. Every sentence is necessary, front-loaded with key action, and no fluff. Ideal conciseness.

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's simplicity (one parameter, output schema exists), the description sufficiently covers input and output. Context signals confirm high schema coverage, so no 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?

Schema coverage is 100% with the parameter already well-described. The description repeats the slug example 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 states the verb 'List' and resource 'cast and crew credits for a movie'. It specifies the required input (slug) with a concrete example, distinguishing it from sibling tools like 'movie_details' and 'tv_show_cast_and_crew'.

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 implicitly guides usage by stating it is for movie cast/crew, and siblings include TV show equivalent. However, it lacks explicit when-to-use or when-not-to-use instructions, though the context is clear from the name and examples.

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

rotten-tomatoes.movie_detailsAInspect

Look up a movie on Rotten Tomatoes by slug (for example shawshank-redemption).

Returns title, year, rating, runtime, genres, description, poster and hero images, Tomatometer and Popcornmeter scores, cast highlights, and where to watch links.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
movie_slugYesMovie slug (for example shawshank-redemption).

Output Schema

ParametersJSON Schema
NameRequiredDescription
castNoFeatured cast with name, slug, and imageUrl.
slugNoMovie slug.
yearNoRelease year.
titleNoMovie title.
tomatometerNoCritic Tomatometer score and metadata.
popcornmeterNoAudience Popcornmeter score and metadata.
Behavior3/5

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

No annotations provided, so description bears full burden. States cost (5 tokens) and output fields, but lacks behavioral details like read-only, auth requirements, or rate limits. Adequate but minimal.

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 concise sentences: purpose, return values, cost. Front-loaded with key information, no fluff.

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 one-param tool with output schema, description covers input, output outline, cost, and purpose sufficiently. No 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?

Schema covers 100% of parameter with description. Description adds example value but does not provide additional meaning beyond schema. Baseline 3.

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 clearly states action (look up), resource (movie on Rotten Tomatoes), and identifier (slug). Lists return fields, differentiating from siblings like cast/crew or reviews.

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?

Mentions input format (slug) with example but does not explicitly guide when to use this vs. search or other movie tools. Implicit from context but no direct guidance.

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

rotten-tomatoes.movie_reviewsAInspect

Load reviews for a movie by slug (for example shawshank-redemption).

Returns review quotes, sentiment, publication, critic details, and pageInfo for pagination. Use cursor from pageInfo.endCursor for the next page. Optionally set type to critic for critic reviews only.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of review pages to return (1–50, default 20).
cursorNoPagination cursor from a previous response pageInfo.endCursor field.
movie_slugYesMovie slug (for example shawshank-redemption).
review_typeNoReview filter. Use critic for critic reviews; omit for the default set.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNoMovie slug.
typeNoReview set type (for example critic).
reviewsNoReview entries with quote, sentiment, critic, and publication.
pageInfoNoPagination metadata for review listings.
Behavior4/5

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

No annotations provided, but description discloses pagination mechanism (use cursor from pageInfo.endCursor) and cost (5 tokens). Could mention rate limits or error handling, but for a read tool this is fairly 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 efficient sentences, front-loaded with purpose and example, followed by return details, pagination, and optional filter. No redundant information.

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 output schema exists, description adequately covers return fields (review quotes, sentiment, etc.) and pagination. Provides enough context for successful invocation without missing critical details.

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 parameters are well-documented. Description adds value with example slug, explicit instruction on cursor usage, and optional type for critic reviews. Reinforces and clarifies 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?

Clearly states it loads reviews for a movie by slug, gives an example, and lists return content (review quotes, sentiment, publication, critic details, pageInfo). Distinguishes from sibling tools like movie_details and movie_cast_and_crew.

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 instructions on using movie_slug, optional limit, cursor for pagination, and review_type for critic reviews. Does not explicitly state when not to use or compare with alternatives, but usage is clear and straightforward.

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

rotten-tomatoes.searchAInspect

Search Rotten Tomatoes by title or name.

Returns matching movies, TV series, and celebrities with slugs, scores, poster URLs, release years, and top-billed cast where available.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of search results to return (1–50, default 20).
queryYesSearch query for movies, TV series, or celebrities.

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNoEcho of the search query.
moviesNoSearch hits (movies, TV series, or celebrities). Each entry includes type, slug, title, url, posterUrl, score, and cast when available.
Behavior3/5

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

With no annotations, the description must disclose behaviors. It states the cost (10 tokens) and lists return fields, but does not address rate limits, authentication, or side effects. This is adequate but not fully 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 three sentences: purpose, return fields, cost. It is concise, front-loaded, and contains no unnecessary 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 presence of an output schema and simple parameters, the description provides sufficient context about returned fields. However, it omits details like default sorting or result type filtering, which could be useful.

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 minor context ('by title or name') but does not enrich parameter 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.

Purpose5/5

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

The description clearly states the tool searches Rotten Tomatoes by title or name and returns movies, TV series, and celebrities. This distinguishes it from sibling detail tools, which focus on specific entities.

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 its siblings (e.g., movie_details, celebrity_details). The description does not mention that this tool fetches slugs for subsequent detail lookups.

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

rotten-tomatoes.tv_show_cast_and_crewAInspect

List cast and crew credits for a TV series by slug (for example breaking-bad).

Returns cast and crew members with names, roles, character names, and profile links where available.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
tv_show_slugYesTV series slug (for example breaking-bad).

Output Schema

ParametersJSON Schema
NameRequiredDescription
castNoCast and crew credits for the series.
slugNoTV series slug.
Behavior3/5

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

No annotations are provided, so the description carries full burden. It mentions cost tokens and lists returned fields, but does not disclose any side effects, permissions, or rate limits beyond cost. It is adequate for a read-only operation.

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 very concise with two sentences and a cost note. No extraneous information; essential details 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?

Given the simple nature of the tool (one parameter, output schema exists), the description covers purpose, input example, and return fields. It lacks information on pagination or sorting, but is mostly complete for its 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 coverage is 100% with a single parameter described. The description adds no substantial meaning beyond the schema, only reinforcing the example. 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?

The description clearly states the verb 'List' and the resource 'cast and crew credits for a TV series by slug', and distinguishes from the sibling tool 'movie_cast_and_crew' by specifying TV series.

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 TV series but does not explicitly state when to use this tool versus alternatives like movie_cast_and_crew. No exclusion criteria or guidance on alternatives is provided.

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

rotten-tomatoes.tv_show_detailsAInspect

Look up a TV series on Rotten Tomatoes by slug (for example breaking-bad).

Returns title, years on air, TV rating, season count, genres, description, poster and hero images, Tomatometer and Popcornmeter scores, and creator/cast highlights.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
tv_show_slugYesTV series slug (for example breaking-bad).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNoTV series slug.
yearNoYears on air (for example 2008 - 2013).
titleNoSeries title.
tomatometerNoAverage Tomatometer score and metadata.
popcornmeterNoAverage Popcornmeter score and metadata.
Behavior4/5

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

The description mentions cost (5 tokens) and lists return fields. Since there are no annotations, the description carries the full burden. It is transparent for a read-only lookup, though it does not mention 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.

Conciseness5/5

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

The description is very concise: two sentences plus cost. No wasted words, purpose 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 simple lookup tool with output schema, the description is complete enough. It covers what the tool does and what it returns. Lacks mention of errors or edge cases, but 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% and the description repeats the slug example provided in the schema. No additional semantic value beyond what the schema offers.

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 purpose: 'Look up a TV series on Rotten Tomatoes by slug'. It also lists the return fields, distinguishing it from sibling tools like tv_show_cast_and_crew, tv_show_episode, etc.

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 basic TV show details but does not explicitly state when to use this tool versus alternatives like tv_show_cast_and_crew or tv_show_season. No explicit when-not or alternative references.

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

rotten-tomatoes.tv_show_episodeAInspect

Load a single episode by TV series slug (for example breaking-bad), season number, and episode number.

Returns episode title, air date, description, and episode Tomatometer score when available.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
tv_show_slugYesTV series slug (for example breaking-bad).
season_numberYesSeason number as one or two digits (for example 1 or 01).
episode_numberYesEpisode number as one or two digits (for example 1 or 01).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNoTV series slug.
titleNoEpisode title.
seasonNoSeason number.
episodeNoEpisode number.
Behavior3/5

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

No annotations provided, so description carries full burden. It lists return fields and token cost but does not disclose error handling, authorization, 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.

Conciseness5/5

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

Concise three sentences: purpose, return fields, cost. No wasted words, front-loaded with key action.

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 lookup tool with output schema, the description covers purpose, parameters, and returns. Could mention error behavior but overall 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?

Schema coverage is 100%; description largely repeats schema descriptions with minimal added value (e.g., examples already in 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 states the tool loads a single episode given a TV series slug, season number, and episode number. It differentiates from sibling tools like rotten-tomatoes.tv_show_season which loads all episodes of a season.

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 single episode lookup but does not explicitly state when not to use or provide alternative tools. Sibling tools like tv_show_season are evident but not mentioned.

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

rotten-tomatoes.tv_show_seasonAInspect

Load season-level details for a TV series by slug (for example breaking-bad) and season number.

Returns season title, episode list summaries, and season Tomatometer scores when available.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
tv_show_slugYesTV series slug (for example breaking-bad).
season_numberYesSeason number as one or two digits (for example 1 or 01).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNoTV series slug.
seasonNoSeason identifier.
episodesNoEpisodes in the season when listed.
Behavior3/5

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

No annotations are provided. The description adds cost (5 tokens) and notes Tomatometer scores are returned 'when available', but does not disclose other behavioral traits like auth needs, rate limits, or error conditions. For a read operation, this is adequate but not comprehensive.

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 sentences: purpose, outputs, cost. It is front-loaded, concise, and every sentence provides value with no fluff.

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 an output schema present, the description appropriately focuses on high-level outputs (season title, episode summaries, Tomatometer scores). It misses handling of pagination or errors, but the tool is simple and the context signals support completeness.

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 with clear descriptions, including examples. The description repeats these examples without adding significant new 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 clearly states the tool loads season-level details for a TV series by slug and season number, and lists specific outputs (title, episode summaries, Tomatometer scores). It distinguishes from siblings like tv_show_episode and tv_show_season_reviews.

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 (for season details) but does not explicitly mention when not to use or provide alternatives. Sibling tools exist for other granularities, 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.

rotten-tomatoes.tv_show_season_reviewsAInspect

Load reviews for a TV season by series slug (for example breaking-bad) and season number.

Returns review quotes, sentiment, publication, critic details, and pageInfo for pagination. Use cursor from pageInfo.endCursor for the next page. Optionally set type to critic for critic reviews only.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of review pages to return (1–50, default 20).
cursorNoPagination cursor from a previous response pageInfo.endCursor field.
review_typeNoReview filter. Use critic for critic reviews; omit for the default set.
tv_show_slugYesTV series slug (for example breaking-bad).
season_numberYesSeason number as one or two digits (for example 1 or 01).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNoTV series slug.
seasonNoSeason number.
reviewsNoReview entries with quote, sentiment, critic, and publication.
pageInfoNoPagination metadata for review listings.
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses return fields (quotes, sentiment, publication, critic details, pageInfo), pagination behavior, cost, and optional filter. Lacks mention of rate limits or authentication, but core behavioral traits 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.

Conciseness5/5

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

Four concise sentences, no fluff. Critical info (purpose, pagination, optional filter, cost) is front-loaded and every sentence is meaningful.

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?

Tool has 5 params, required 2, and an output schema. Description covers all key aspects: how to identify the season, pagination, optional filter, and cost. Output schema handles return details, so no missing context.

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 parameters are documented. The description adds value by explaining how to use cursor for pagination and the effect of review_type. This exceeds schema details.

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 action (Load reviews) and the specific resource (TV season reviews by series slug and season number). It distinguishes from siblings like movie_reviews or tv_show_episode by targeting season-level reviews.

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 explains pagination and optional review_type filter, but does not explicitly guide when to use this tool over alternatives like tv_show_episode for episode reviews or movie_reviews for movies. Context is implied but not explicit.

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

seo.basic_metricsAInspect

Get Ahrefs domain authority signals for a website URL.

Returns domainRating (0–100 Ahrefs authority score) and ahRank (global Ahrefs website rank). Useful for comparing site strength and prioritizing outreach or competitive research.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic website URL to analyze (for example https://example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription
ahRankNoGlobal website rank (lower is stronger).
domainRatingNoDomain authority score from 0 to 100.
Behavior3/5

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

No annotations provided, so description carries full burden. It discloses cost (10 tokens) and return format, but does not mention side effects, rate limits, or limitations beyond what is implied by the name.

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 plus a cost line, all front-loaded with the main action. No extraneous 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?

Given the tool's simplicity (one required param, no annotations, output schema exists), the description specifies return values and intended use adequately, though a note on what it does not cover would be beneficial.

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 description does not add meaning beyond what the parameter already conveys. Baseline score of 3 applies as no additional semantic value 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 clearly states the tool retrieves Ahrefs domain authority signals, specifically domainRating and ahRank, distinguishing it from sibling SEO tools like backlinks or keyword metrics.

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 it is useful for comparing site strength and prioritizing outreach or competitive research, providing clear context for when to use it, though it does not explicitly exclude alternatives.

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

seo.country_codesAInspect

List country codes you can pass as country on seo.keyword_metrics.

Returns an array of 2-letter ISO country codes (for example us, gb, de).

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
country_codesNoSupported ISO country codes for keyword metrics.
Behavior4/5

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

Discloses return format (array of ISO codes) and cost (0 tokens). No annotations provided, but the description is transparent about behavior, which is straightforward read-only.

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 concise sentences front-loaded with purpose. Every sentence adds value with no 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?

For a zero-parameter tool, the description covers purpose, output format, and cost. Output schema exists, so return details are adequate.

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?

No parameters exist, so schema coverage is 100%. The description adds meaning by explaining the purpose of the output, which is more than 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 clearly states the tool lists country codes for use with seo.keyword_metrics, specifying output as 2-letter ISO codes with examples. It distinguishes itself from siblings by being a helper 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?

Explicitly says the codes are to be passed as 'country' on seo.keyword_metrics, providing clear usage context. No alternatives or exclusions needed for such a simple tool.

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

seo.keyword_metricsAInspect

Get SEO metrics for a search keyword in a specific country market.

Returns keyword, searchVolume, clicks, cpc, difficulty, globalSearchVolume, and trafficPotential.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNo2-letter ISO country code for the target market (default us). Use seo.country_codes for supported values.us
keywordYesSearch keyword or phrase to analyze.

Output Schema

ParametersJSON Schema
NameRequiredDescription
cpcNoEstimated cost per click in paid search.
clicksNoEstimated monthly clicks from organic search.
keywordNoAnalyzed keyword.
difficultyNoKeyword difficulty score (higher is harder to rank).
searchVolumeNoEstimated monthly search volume in the selected country.
trafficPotentialNoEstimated traffic potential if ranking well.
globalSearchVolumeNoEstimated global monthly search volume.
Behavior2/5

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

No annotations are provided, so the description must bear the full burden of behavioral disclosure. It states cost (10 tokens) and return fields, but does not disclose whether the operation is read-only, has rate limits, or requires authentication. This is insufficient for a tool with no annotation safety profile.

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 concise sentences. The first sentence front-loads the core purpose, the second lists returns, and the third states cost. Every sentence is essential and 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 the tool's low complexity (2 params, simple data retrieval) and the presence of an output schema, the description is nearly complete. It covers purpose, returns, and cost. It could mention the default country or potential errors, but is adequate for the 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%, so the baseline is 3. The description adds minimal meaning beyond the schema: 'search keyword' and 'specific country market' are already implied. It does not provide additional format or usage details for the parameters.

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: 'Get SEO metrics for a search keyword in a specific country market.' It specifies the verb and resource, and lists the returned fields, distinguishing it from sibling tools like seo.url_metrics.

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 you need SEO keyword metrics for a country, but does not explicitly mention when not to use it or provide alternatives (e.g., google-search.keyword_traffic_insights). Context is clear but lacks exclusionary guidance.

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

seo.url_metricsAInspect

Get detailed Ahrefs SEO metrics for a specific URL.

Returns two sections:

  • page: backlinks, referring domains, estimated traffic, traffic value, organic keywords, URL rating, and word count on the page

  • domain: domain rating, rank, backlinks, referring domains, traffic, traffic value, and organic keywords

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic page URL to analyze.

Output Schema

ParametersJSON Schema
NameRequiredDescription
pageNoMetrics for the requested page URL.
domainNoMetrics for the parent domain.
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 discloses the output structure and cost but lacks details about read-only nature, authentication requirements, rate limits, or data freshness. The behavior is implied but not fully 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 concise and well-structured: a clear summary sentence followed by a bullet list of returned metrics and a note on cost. No extraneous information, and the format aids quick understanding.

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 single parameter and the presence of an output schema (not shown), the description explains the two-section return structure and lists all major metrics. It is sufficient for an agent to understand what the tool does and what it returns, though it could define terms like 'URL rating'.

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 single parameter 'url' is described in the schema as 'Public page URL to analyze.' The description adds no further semantic meaning beyond the schema. With 100% schema coverage, baseline is 3.

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 gets 'detailed Ahrefs SEO metrics for a specific URL' and distinguishes between page-level and domain-level metrics. This differentiates it from sibling tools like seo.basic_metrics and seo.backlinks, which focus on simpler or specific metrics.

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 like seo.basic_metrics or seo.backlinks. It only mentions a cost of 10 tokens, which is a constraint but not a usage hint.

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

tiktok.comment_repliesAInspect

List replies to a TikTok comment. Requires video_id and comment_id. Pass cursor from a previous response to fetch the next page.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of replies to return (max 40).
cursorNoPagination cursor from a previous response.
video_idYesTikTok video id.
comment_idYesTikTok comment id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior4/5

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

No annotations provided, but the description covers core behavior (listing, pagination) and adds cost (2 tokens). Does not contradict any annotations.

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 concise sentences front-load purpose and required inputs, followed by pagination and cost. No wasted words.

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 paginated list endpoint with full schema and output schema provided, the description covers purpose, required params, pagination, and cost. Could mention rate limits but overall 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?

Schema covers all 4 params with descriptions (100% coverage). Description adds minimal value beyond 'cursor from previous response' context; 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 states the verb 'List' and resource 'replies to a TikTok comment', specifying required IDs. It distinguishes from siblings like tiktok.video_comments (lists top-level comments).

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?

Describes required parameters (video_id, comment_id) and pagination via cursor. Implicitly suggests it's for replies after video_comments, but does not explicitly state when not to use or list alternatives.

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

tiktok.download_musicAInspect

Download a TikTok music track. Provide either music_id or music_url, not both. Returns a signed download URL. Prefer return_mode 'url'.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
music_idNoTikTok music id.
music_urlNoTikTok music page URL.
return_modeNoHow to deliver the result. 'url' returns a signed download URL only. 'file' returns inline base64 when the file is under 10 MB. 'both' returns the signed URL plus inline base64 when small enough.both

Output Schema

ParametersJSON Schema
NameRequiredDescription
playNoSigned download URL for the music file.
download_idNoUnique download identifier, prefix td_.
return_modeNoEcho of the requested delivery mode.
content_typeNoMIME type of the music file.
file_size_bytesNoMusic file size in bytes.
Behavior3/5

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

No annotations are provided, so the description carries the burden. It mentions that the tool returns a signed download URL and describes return modes. However, it does not disclose behavior when both music_id and music_url are provided (e.g., error), rate limits, authentication needs, or file size limits beyond the return mode description. These are gaps, but the core 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 extremely concise: four sentences covering purpose, parameter constraint, return behavior, preference, and cost. No redundant words. Every sentence adds essential information. It is front-loaded with the core purpose.

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 simplicity and the presence of an output schema, the description covers the key aspects: purpose, parameter constraint, return type, and cost. However, it could mention error handling for invalid inputs or simultaneous parameters. Still, it is mostly complete for a straightforward download 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 schema already documents each parameter. The description adds value beyond the schema by stating the mutual exclusivity of music_id and music_url and recommending return_mode 'url'. This provides meaningful guidance for correct invocation.

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 action ('Download a TikTok music track') and the resource. It distinguishes from the sibling 'tiktok.download_music_from_video' by specifying music track directly. The verb 'Download' and resource 'music track' are specific.

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 explicit usage guidance: 'Provide either music_id or music_url, not both' and 'Prefer return_mode url'. It implies when to use this tool (when you have a music ID or URL) versus the sibling for music from video. Cost mention (10 tokens) also helps. No explicit exclusion of alternatives, but the context is clear.

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

tiktok.download_music_from_videoAInspect

Download music from a TikTok video. Provide either video_id or video_url, not both. Returns a signed download URL. Prefer return_mode 'url'.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idNoTikTok video id.
video_urlNoTikTok video URL.
return_modeNoHow to deliver the result. 'url' returns a signed download URL only. 'file' returns inline base64 when the file is under 10 MB. 'both' returns the signed URL plus inline base64 when small enough.both

Output Schema

ParametersJSON Schema
NameRequiredDescription
music_infoNoMusic metadata with a signed download URL.
download_idNoUnique download identifier, prefix td_.
return_modeNoEcho of the requested delivery mode.
Behavior3/5

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

Without annotations, the description discloses return type (signed download URL) and cost. It does not mention error handling, prerequisites, rate limits, or behavior when wrong input is given.

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?

Short, front-loaded sentences with no redundancy. Includes cost note efficiently.

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?

While the description covers core functionality, it lacks details on prerequisites (e.g., authentication), error scenarios, and what the output schema contains. Adequate but not 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%, but description adds value by explaining the mutual exclusivity of video_id and video_url, and recommending return_mode 'url', which is not in 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 states the tool downloads music from a TikTok video, using either video_id or video_url. It distinguishes itself from siblings like tiktok.download_video and tiktok.download_music by specifying the output is music.

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 input selection guidance: provide either video_id or video_url, not both. Also recommends return_mode 'url'. However, it does not compare to related tools like tiktok.download_music or explain when to use each.

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

tiktok.download_videoAInspect

Download a TikTok video. Provide either video_id or video_url, not both. Returns a signed download URL for the standard-quality play file. Set include_hdplay to true only when high definition is required. Prefer return_mode 'url'.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idNoTikTok video id.
video_urlNoTikTok video URL.
return_modeNoHow to deliver the result. 'url' returns signed download URLs only. 'file' returns inline base64 when the file is under 10 MB. 'both' returns signed URLs plus inline base64 when small enough.both
include_hdplayNoWhen true, also download the high-definition hdplay variant. Defaults to false.

Output Schema

ParametersJSON Schema
NameRequiredDescription
playNoSigned download URL for the standard-quality video.
hdplayNoSigned download URL for the high-definition video when include_hdplay is true.
download_idNoUnique download identifier, prefix td_.
return_modeNoEcho of the requested delivery mode.
Behavior4/5

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

No annotations provided, so description carries full burden. Discloses that it returns a signed download URL for standard quality, and that include_hdplay adds HD. Notes cost. Lacks details on error behavior or rate limits, but for a download tool, this is adequate.

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 concise sentences, each delivering essential info. Front-loaded with main purpose, then constraints, then return format, then cost. No wasted words.

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 output schema exists, the description suffices. It covers all parameters, return behavior, and cost. Context signals show no required parameters and complete schema coverage, so description is 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%; descriptions already define each parameter. The description adds value by constraining usage (mutual exclusivity of video_id and video_url), recommending return_mode, and clarifying include_hdplay usage.

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 action ('Download a TikTok video'), the required identifier options (video_id or video_url), the output (signed download URL), and key options (include_hdplay, return_mode). It effectively distinguishes from sibling tools like tiktok.download_music and tiktok.download_music_from_video.

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 explicit usage instructions: provide either video_id or video_url (not both), prefer return_mode 'url', only set include_hdplay for HD. Mentions cost=10 tokens. However, lacks explicit comparison to sibling download tools, though the name and context sufficiently differentiate.

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

tiktok.for_you_feedBInspect

Fetch for-you feed videos for a region. Requires region.

Cost = 4 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of videos to return (max 20).
regionYesRegion code (for example us, jp, kr).

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior2/5

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

No annotations are provided, and the description only adds 'Cost = 4 tokens' as behavioral info. It does not disclose other traits like data volume, response format, or 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.

Conciseness4/5

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

The description is extremely concise (two sentences plus a cost note), front-loading the core purpose. Every sentence is relevant, though it could be slightly more informative without losing conciseness.

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 the tool's simplicity (2 params, output schema exists) and no annotations, the description is minimally adequate. It covers the basic action and requirement but lacks details on output or use 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 coverage is 100%, so the description adds no further parameter detail beyond the schema. The 'Requires region' note aligns with the required parameter but provides no extra 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 clearly states 'Fetch for-you feed videos for a region' with a specific verb and resource. It distinguishes from sibling tools like tiktok.search_videos or tiktok.user_videos by focusing on the for-you feed.

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 mentions 'Requires region' as a prerequisite but lacks explicit guidance on when to use this tool versus alternatives. No exclusions or context for 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.

tiktok.music_detailsAInspect

Look up metadata for a TikTok music track. Provide either music_id or music_url, not both.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
music_idNoTikTok music id.
music_urlNoTikTok music page URL.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior4/5

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

No annotations, so description carries burden. Discloses cost (2 tokens) and mutual exclusivity of parameters. Does not mention auth or rate limits, but it's a read operation with output schema covering return data.

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 plus cost note. Purpose is first, then constraint. No wasted words. Efficient and front-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?

Simple lookup tool with output schema covering return values. All necessary information is provided: purpose, parameter rules, cost. No gaps.

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?

Schema has 100% description coverage but the description adds the crucial mutual exclusivity rule not in the schema. This is significant additional semantics for correct invocation.

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?

Clearly states it looks up metadata for a TikTok music track. Distinct from sibling tools tiktok.music_videos and tiktok.download_music. The 'either music_id or music_url, not both' adds specificity.

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 ('look up metadata') and a critical parameter constraint ('provide either...not both'). Lacks explicit comparison to alternatives, but sibling differentiation is implied by name.

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

tiktok.music_videosAInspect

List videos that use a TikTok music track. Requires music_id. Pass cursor from a previous response to fetch the next page.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
cursorNoPagination cursor from a previous response.
music_idYesTikTok music id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/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 pagination behavior and cost (3 tokens), but does not mention authentication requirements, error states, or side effects. The read-only nature is implied but not stated.

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 sentences, front-loaded with the core purpose, and each sentence adds essential information. No redundant or unnecessary words.

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 simplicity (3 parameters, output schema exists), the description covers the main aspects: purpose, required input, pagination, and cost. It could mention authentication or error handling, but it is sufficient for a basic list 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?

The input schema already describes all three parameters with 100% coverage. The description adds extra context by reiterating the requirement for music_id and explaining cursor usage for pagination, but this adds only marginal value 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 states the tool's purpose: 'List videos that use a TikTok music track'. It specifies the primary input (music_id) and distinguishes it from other TikTok tools like search_videos or user_videos.

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 states that music_id is required and explains pagination via cursor. It provides clear directions for fetching paginated results, though it does not mention when not to use this tool or suggest alternatives.

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

tiktok.search_photosAInspect

Search TikTok photo posts by keyword. Requires query. Pass cursor from a previous response to fetch the next page.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
queryYesSearch keywords.
cursorNoPagination cursor from a previous response.
regionNoRegion code (for example us, jp, kr).

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

No annotations provided. Description mentions cost (5 tokens) and pagination behavior. However, it does not disclose if the tool is read-only or any side effects. Basic transparency but lacking safety cues.

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 concise sentences with no fluff. The first sentence states purpose, the second clarifies requirement and pagination, the third notes cost. Efficiently 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 the output schema exists and parameter schema is fully described, the description covers core functionality, requirement, pagination, and cost. Missing mention of region or optional parameters, but those are self-explanatory. Adequate for a straightforward search 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 coverage is 100% with descriptions for all 4 parameters. The description adds minor context (query required, cursor for pagination) but doesn't significantly enhance understanding beyond the schema. Baseline 3 given high 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 searches for TikTok photo posts by keyword. It uses the specific verb 'search' and resource 'TikTok photo posts', distinguishing it from sibling tools like tiktok.search_videos and tiktok.search_users.

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?

States query is required and explains pagination via cursor. While it doesn't explicitly say when to use versus alternatives, the specific focus on photos provides clear context. Missing explicit when-not-to-use guidance, but adequate.

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 by keyword. Requires query. Pass cursor from a previous response to fetch the next page.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
queryYesSearch keywords.
cursorNoPagination cursor from a previous response.
follower_countNoFollower count filter: 0-4.0

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

No annotations provided, so description must carry burden. It discloses cost (5 tokens) and pagination via cursor, but does not mention auth, rate limits, or result behavior. Lacks depth for a full transparency assessment.

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 concise, front-loaded sentences with no wasted words. Every sentence serves a purpose.

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 an output schema present, return values need not be explained. Description covers key usage and pagination. Could mention filters or sorting, but overall adequate for the tool's simplicity.

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%, baseline 3. Description adds meaning to cursor pagination, but does not explain count or follower_count beyond schema, providing marginal added 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 clearly states 'Search TikTok users by keyword', which is a specific verb+resource. It distinguishes from sibling tools like tiktok.user_info or tiktok.search_videos.

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 mentions required query and pagination cursor, but does not explicitly state when to use this tool vs alternatives like user_info or search_videos, lacking 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.

tiktok.search_videosAInspect

Search TikTok videos by keyword. Requires query. Pass cursor from a previous response to fetch the next page.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
queryYesSearch keywords.
cursorNoPagination cursor from a previous response.
regionNoRegion code (for example us, jp, kr).
sort_byNoSort order: relevance, like_count, or date_posted.relevance
publish_timeNoPublish time filter: 0, 1, 7, 30, 90, or 180.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior2/5

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

No annotations provided; description only mentions pagination and cost. It fails to disclose side effects, authentication requirements, or rate limits. The mutation potential is unclear.

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 concise sentences with no wasted words. Front-loaded with the purpose, then adds pagination and cost 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 rich schema (100% coverage) and presence of output schema, the description is adequate. It could mention region or sort_by, but the schema handles those. Overall complete for a search 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 baseline is 3. The description adds value by highlighting that 'query' is required and explaining cursor usage for pagination.

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 'Search TikTok videos by keyword' with a specific verb and resource, and distinguishes from sibling tools like tiktok.search_photos and tiktok.search_users.

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?

Description includes 'Requires query' and explains pagination via cursor. However, it does not explicitly mention when to use this tool over alternatives or provide exclusions.

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 followers for a TikTok user. Requires user_id. Pass cursor from a previous response to fetch the next page.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 200).
cursorNoPagination cursor from a previous response.
user_idYesTikTok numeric user id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior4/5

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

No annotations provided, but description adds behavioral context: pagination via cursor and token cost (2 tokens). It does not mention destructive actions, which is appropriate for a read operation.

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, front-loaded with the main purpose, no unnecessary words. Every sentence provides essential 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?

With an output schema present, description does not need to explain return values. It covers core usage: list followers, require user_id, pagination. Lacks details on error handling or rate limits, but is sufficient for a simple 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 parameters are well-described. Description adds value by reinforcing that 'user_id' is required and explaining how to use 'cursor' for pagination, which aids in correct invocation.

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 clearly states the action ('List followers'), the resource ('TikTok user'), and the required input ('user_id'). It also distinguishes from sibling tools like user_following by focusing on followers.

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?

Description explains the requirement for 'user_id' and provides pagination guidance with 'cursor'. It does not explicitly mention when not to use or alternatives, but the context is clear for a list followers tool.

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

tiktok.user_followingAInspect

List accounts a TikTok user follows. Requires user_id. Pass cursor from a previous response to fetch the next page.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 200).
cursorNoPagination cursor from a previous response.
user_idYesTikTok numeric user id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior4/5

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

With no annotations, the description discloses pagination mechanism (cursor) and cost (2 tokens). It does not mention error handling or rate limits, but provides adequate behavioral context for a read operation.

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 concise sentences with no filler. First sentence states purpose immediately, followed by essential usage notes and cost.

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 output schema exists, description covers purpose, required parameter, pagination, and cost. Lacks error scenarios but is complete for a simple 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 coverage is 100%, baseline is 3. Description adds value by explaining cursor usage for pagination, which goes beyond 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 clearly states 'List accounts a TikTok user follows.' This is a specific verb+resource statement that distinguishes from sibling tools like tiktok.user_followers (list followers) and tiktok.user_videos (list user videos).

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?

Description specifies requirement of user_id and explains pagination using cursor from previous response. However, it does not explicitly state when to use this vs alternatives or when not to use.

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

tiktok.user_infoAInspect

Look up a TikTok user profile. Provide either user_id or unique_id, not both.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idNoTikTok numeric user id.
unique_idNoTikTok unique id (username).

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

No annotations are present, so the description must convey behavioral traits. It discloses a cost of 2 tokens, implying resource usage. However, it does not address error behavior (e.g., if user not found or both parameters provided) or authentication requirements, leaving gaps in 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 consists of two concise sentences with no extraneous information. It is front-loaded with the action and immediately provides the key constraint and cost, making it efficient for agents 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 that an output schema exists, the description does not need to detail return values. It covers the essential purpose, parameter constraint, and cost. However, it could be more complete by noting prerequisites (e.g., no auth required) or default behavior when both parameters are provided, but for a simple tool it is largely sufficient.

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 each parameter (user_id as numeric id, unique_id as username) with 100% coverage. The description adds valuable meaning by specifying the mutual exclusivity rule, which is not present in the schema. This goes beyond the schema's documentation.

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-resource combination: 'Look up a TikTok user profile.' This clearly distinguishes it from sibling tools like tiktok.search_users (which searches for users) and other user-specific tools (followers, videos, etc.). The mutual exclusivity constraint ('Provide either user_id or unique_id, not both') further clarifies the scope.

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 looking up a single profile by providing a user ID or username, but it does not explicitly compare with alternatives like search_users or state when not to use this tool. The constraint 'not both' is helpful but lacks comparative guidance.

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

tiktok.user_repostsAInspect

List reposts for a TikTok user. Provide either user_id or unique_id, not both. Pass cursor from a previous response to fetch the next page.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
cursorNoPagination cursor from a previous response.
user_idNoTikTok numeric user id.
unique_idNoTikTok unique id (username).

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior2/5

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

With no annotations, the description should disclose behavioral aspects. It mentions pagination and cost (3 tokens), but lacks info on side effects, auth requirements, or error handling for non-existent users. Minimal transparency beyond basic usage.

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 sentences long, front-loaded with the verb and resource, and contains no fluff. Every sentence contributes to understanding the tool's operation.

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?

An output schema exists, so return value explanation is unnecessary. The description covers pagination and parameter constraints adequately for a simple list tool. Lacks details on result contents but not critical given 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%, but the description adds value by clarifying the mutual exclusivity of user_id and unique_id, and explaining cursor usage. This supplemental constraint enhances understanding beyond the schema alone.

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 action 'List reposts' and the resource 'TikTok user', with specific guidance on user identification via user_id or unique_id. It distinguishes from sibling tools like user_videos or user_followers by its focus on reposts.

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 includes explicit constraints ('Provide either user_id or unique_id, not both') and pagination guidance. However, it does not provide when-to-use vs alternatives or when not to use.

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

tiktok.user_videosAInspect

List videos posted by a TikTok user. Provide either user_id or unique_id, not both. Set latest to true for newest posts or false for top posts. Pass cursor from a previous response to fetch the next page.

Cost = 3 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of items to return (max 30).
cursorNoPagination cursor from a previous response.
latestNoWhen true, return latest videos. When false, return top videos.
user_idNoTikTok numeric user id.
unique_idNoTikTok unique id (username).

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

Discloses cost (3 tokens) and pagination behavior, but no annotations exist. Does not explicitly state read-only nature or potential side effects. Adequate but not comprehensive for a tool without annotations.

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 no fluff, front-loaded with purpose. Cost line is additional but relevant. Well-structured and concise.

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?

Covers user identification, filtering, pagination. With output schema present, return values need not be described. Could mention authentication or potential errors, but sufficient for a listing 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?

Adds value beyond the 100% schema coverage by clarifying mutual exclusivity of user_id and unique_id, the effect of latest, and pagination flow. Schema already describes each parameter, but description enhances practical usage.

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 lists videos posted by a TikTok user, which is a specific verb+resource. It distinguishes from sibling tools like tiktok.user_info or tiktok.search_videos by focusing on user videos.

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 explicit instructions on using user_id or unique_id exclusively, setting latest for newest/top posts, and using cursor for pagination. However, it does not compare alternatives or mention when not to use this tool.

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

tiktok.video_commentsAInspect

List comments on a TikTok video. Provide either video_id or video_url, not both. Pass cursor from a previous response to fetch the next page.

Cost = 2 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of comments to return (max 50).
cursorNoPagination cursor from a previous response.
video_idNoTikTok video id.
video_urlNoTikTok video URL.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

No annotations; description adds cost=2 tokens and pagination cursor behavior. However, lacks details on rate limits or safety. Adequate but not rich.

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?

Very concise (3 sentences) with purpose first, then constraints, then cost. No wasted words.

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 4 params fully described in schema and an output schema available, the description covers essentials (exclusivity, pagination, cost). Could mention response format but output schema exists.

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%, but description adds value by stating exclusivity constraint (either video_id or video_url) and explaining cursor usage beyond 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 states the tool lists comments on a TikTok video, with specific parameters (video_id or video_url). It distinguishes from siblings like 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?

It explicitly says to provide either video_id or video_url (not both) and explains cursor pagination. No explicit when-not, but enough for a list tool.

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

tiktok.video_detailsAInspect

Look up metadata for a TikTok video. Provide either video_id or video_url, not both.

Cost = 1 token.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idNoTikTok video id.
video_urlNoTikTok video URL.

Output Schema

ParametersJSON Schema
NameRequiredDescription
msgNoUpstream status message.
codeNoUpstream status code (0 = success).
dataNoCapability-specific payload from the upstream provider.
processed_timeNoUpstream processing time in seconds.
Behavior3/5

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

No annotations exist, so description carries full burden. It mentions 'Cost = 1 token' which is transparent about pricing. But it does not disclose whether the operation is read-only, any authorization needs, or rate limits. 'Look up metadata' implies read-only, but more detail would be better.

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 short sentences, front-loaded with purpose. No wasted words. Cost note is appended succinctly. Excellent structure for quick understanding.

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?

An output schema exists (not shown but indicated), so description need not detail return values. The description covers input constraints and cost. For a simple metadata lookup, it is sufficiently complete, though it could mention read-only nature explicitly.

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 already describes parameters with descriptions ('TikTok video id.' and 'TikTok video URL.'), covering 100% of schema. The description adds value by imposing an exclusivity constraint ('Provide either video_id or video_url, not both') beyond the schema's property definitions.

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 clearly states 'Look up metadata for a TikTok video', specifying the verb 'look up' and resource 'metadata for a TikTok video'. It distinguishes from sibling tools like tiktok.video_comments or tiktok.user_info by focusing on metadata retrieval.

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?

Explicitly instructs to provide either video_id or video_url, not both. This gives clear parameter usage guidance. However, it does not explicitly state when to use this tool versus other TikTok tools (e.g., for you feed, search videos), though the use case is implied.

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

website-screenshots.captureAInspect

Capture a screenshot of a public website so you can inspect its layout, content, and UI.

Use this when you need to see what a page looks like rather than guessing from HTML or text. Prefer return_mode 'both' or 'image' so you receive a viewable image; use 'url' only when you need a shareable link or want to avoid large inline payloads. Use format 'jpeg' with an optional quality setting (0-100) for smaller file sizes. Set dark_mode to true to capture sites that support prefers-color-scheme: dark. Set block_cookie_banners to true to dismiss common consent overlays (best-effort).

Cost = 20 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic http or https URL to capture. Private, localhost, and internal network addresses are blocked.
formatNoOutput image format. 'png' preserves lossless quality (default). 'jpeg' produces smaller files.png
qualityNoJPEG compression quality from 0 (smallest) to 100 (best). Only applies when format is 'jpeg'; ignored for PNG.
dark_modeNoWhen true, emulate prefers-color-scheme: dark so sites with dark-mode CSS render in dark mode. Has no effect on sites without dark-mode styling.
full_pageNoCapture the full scrollable page. When false, only the viewport area is captured.
wait_untilNoWhen to take the screenshot: 'load' (load event), 'domcontentloaded' (DOM ready, faster), or 'networkidle' (no network activity for 500ms, slowest but most complete).domcontentloaded
return_modeNoHow to deliver the result. 'url' returns JSON with a signed screenshot_url (valid ~1 hour). 'image' returns an inline image the agent can view directly. 'both' returns JSON metadata plus an inline image (default). Inline images over 10 MB fall back to the signed URL.both
viewport_widthNoBrowser viewport width in pixels.
timeout_secondsNoMaximum seconds to wait for the page to load before failing.
viewport_heightNoBrowser viewport height in pixels.
block_cookie_bannersNoWhen true, attempt to dismiss common cookie consent banners and overlays before capture. Best-effort - custom or first-party banners may remain.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNoEcho of requested URL.
errorNoPresent on HTTP 200 when return_mode is "image" and the image exceeds the inline size limit. Value is "inline_image_unavailable".
formatNoEcho of the requested output format (png or jpeg).
statusNoAlways "completed" for synchronous capture.
messageNoHuman-readable detail when error is set on an otherwise successful capture.
qualityNoEcho of JPEG quality used when format is jpeg.
dark_modeNoEcho of whether dark color scheme emulation was used.
full_pageNoWhether full page was captured.
created_atNoISO 8601 timestamp.
return_modeNoEcho of the requested return mode.
inline_imageNoWhether an inline image is included in inline_image_data.
screenshot_idNoUnique identifier, prefix ss_.
screenshot_urlNoSigned download URL, valid for about 1 hour.
viewport_widthNoActual viewport width used.
file_size_bytesNoImage file size in bytes.
viewport_heightNoActual viewport height used.
inline_image_dataNoBase64-encoded image when return_mode is image or both.
block_cookie_bannersNoEcho of whether cookie banner dismissal was attempted.
inline_image_skip_reasonNoReason the inline image was omitted when over the size limit.
Behavior4/5

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

With no annotations, the description discloses important behaviors: only public URLs, fallback for large images, best-effort cookie banner blocking, and cost. Could mention rate limits or error handling but is sufficient.

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?

Single paragraph well-structured: purpose first, then usage guidance, then parameter specifics. No filler sentences, but could be slightly more scannable with line breaks.

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 output schema exists (not shown), description covers main use cases thoroughly for 11-parameter tool. Minor gap: no mention of error handling or timeout behavior beyond parameter description.

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%, but the description adds value by explaining use cases for return_mode, format, quality, dark_mode, and block_cookie_banners beyond schema 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 'Capture a screenshot of a public website' with a specific verb and resource, and distinguishes the tool's purpose from siblings by emphasizing visual inspection over HTML/text guessing.

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 explicit guidance on when to use (need to see layout), preferences for return_mode, format, dark_mode, and block_cookie_banners. Lacks explicit 'when not to use' but the context is clear.

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

x-twitter.connected_accountsAInspect

List X (Twitter) accounts connected to the authenticated Vee3 account for write capabilities.

Returns user_id, user_name, display name, avatar URL, and whether each account is the default. Use user_id or user_name on future write calls, or omit both to use the default account.

If accounts is empty, the user must connect an X account at https://vee3.io/dashboard/connections before write capabilities work. Agents cannot complete OAuth; ask the user to connect, then call this tool again.

Cost = 0 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
accountsNoActive connected X accounts for the authenticated Vee3 account.
Behavior5/5

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

With no annotations, the description fully discloses behavior: it lists connected accounts, returns specific fields (user_id, user_name, display name, avatar URL, default status), and notes zero token cost. It also clarifies that agents cannot complete OAuth, setting user expectations correctly.

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 sentences, front-loaded with purpose, and each sentence adds distinct value: purpose, return fields, usage hint, and contingency plan. No waste.

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 no parameters and an existing output schema, the description covers all needed context: what the tool does, what it returns, how to use the results, and what to do if no accounts. Cost is also stated. It is fully 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?

The tool has zero parameters, so the description adds no parameter details. A score of 4 is appropriate as there is nothing more to explain beyond what the schema already shows (empty properties).

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 'List X (Twitter) accounts connected to the authenticated Vee3 account for write capabilities.' It specifies the verb 'list', the resource 'connected accounts', and the purpose for write capabilities. This distinguishes it from sibling tools that perform write actions like posting.

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 provides explicit guidance: 'Use user_id or user_name on future write calls, or omit both to use the default account.' It also instructs what to do when accounts are empty: 'ask the user to connect, then call this tool again.' This clearly covers when and how to use the tool.

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

x-twitter.create_bookmarkAInspect

Bookmark a post for a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Cost = 30 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesNumeric id of the post to bookmark.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
user_idNoNumeric X user id of the connected account.
user_nameNoX handle of the connected account.
bookmarkedNoWhether the post is bookmarked after this request.
Behavior3/5

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

No annotations provided, so description must carry burden. States cost (30 tokens) and that it bookmarks, but does not disclose permissions, reversal, or failure conditions (e.g., duplicate bookmark). Adequate but not thorough.

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 action, then prerequisite and cost. No fluff, every sentence adds 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?

Given the tool's simplicity (one required param, output schema exists), description adequately covers prerequisite, targeting, and cost. Missing minor behavioral details but sufficient for typical 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 description coverage is 100%, so baseline is 3. Description adds minimal extra meaning beyond schema; it reiterates the option to omit both for default account, which is already in properties.

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 'Bookmark a post for a connected X account' with a specific verb and resource. It distinguishes from sibling tools like delete_bookmark and get_bookmarks.

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 prerequisite (call x-twitter.connected_accounts first) and options for targeting accounts, including default. Lacks explicit mention of when not to use or alternatives, but context is sufficient for most cases.

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

x-twitter.create_postAInspect

Publish a post to a connected X account via the official X API (POST /2/tweets).

Call x-twitter.connected_accounts first. If accounts is empty, the user must connect an X account at https://vee3.io/dashboard/connections before posting. Agents cannot complete OAuth; ask the user to connect, then call x-twitter.connected_accounts again.

Pass user_id or user_name to target a specific account, not both. Omit both to use the default connected account.

At least one of text, poll, media, or card_uri is required.

Supports text, polls, media attachments, reply settings, paid partnership disclosure, AI-generated labels, super-follower exclusivity, nullcast posts, cards, communities, and direct-message deep links.

To attach media, upload files with meta-tools.upload_file and the @vee3/upload CLI, then pass file_name values returned by meta-tools.list_uploaded_files in the media array (up to 4 files). Only files listed by list_uploaded_files can be attached. poll, media, and card_uri are mutually exclusive in the X API.

Token pricing: 60 tokens base for text posts. Posts whose text includes a URL are billed 1000 tokens base instead. Attaching only media (an image or video) without a URL in the text does not trigger the URL rate. Each attached image adds 50 tokens. Each attached video adds 150 tokens plus 50 tokens per 5 MB of video size.

X rate limit: 100 POST /2/tweets requests per connected user per 15 minutes. Wait and retry if posting is temporarily blocked.

If X authorization fails, reconnect the account in the Vee3 dashboard. Read the error message when X rejects a post and adjust the request.

ParametersJSON Schema
NameRequiredDescriptionDefault
pollNoPoll object with options (2-4 strings) and duration_minutes (5-10080).
textNoPost text content. At least one of text, poll, media, or card_uri is required.
mediaNoFile names from meta-tools.list_uploaded_files to attach (up to 4). Upload with meta-tools.upload_file and @vee3/upload first, then list_uploaded_files to get the stored file_name values.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
card_uriNoCard URI for the post. Mutually exclusive with poll and media.
nullcastNoWhether the post is promoted-only and hidden from the public timeline.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
community_idNoCommunity id when posting to an X community.
made_with_aiNoWhether the post contains AI-generated media.
reply_settingsNoWho can reply to the post.
paid_partnershipNoWhether the post is a paid partnership.
share_with_followersNoWhether to share a community post with followers too.
direct_message_deep_linkNoDeep link that moves the conversation into Direct Messages.
for_super_followers_onlyNoWhether the post is exclusive to super followers.

Output Schema

ParametersJSON Schema
NameRequiredDescription
textNoPost text returned by the X API.
user_idNoNumeric X user id of the connected account that published the post.
tweet_idNoNumeric id of the created or edited post.
user_nameNoX handle of the connected account that published the post.
Behavior5/5

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

The description fully discloses the tool's behavior beyond what annotations would provide (none present). It explains the media attachment process, mutual exclusivity of poll, media, and card_uri, token pricing based on content type, rate limits (100 requests per 15 minutes), and error recovery steps (reconnect account, read error messages). This is comprehensive.

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 long but well-structured, starting with the core action, then prerequisites, usage rules, detailed features, and finally billing/rate limits/errors. It is front-loaded with the most important information. Every section adds value, though it could be slightly more concise. Still, it earns a 4 for effective organization.

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's complexity (14 parameters, no required ones, output schema present), the description is remarkably complete. It covers prerequisites, account targeting, content requirements, media upload workflow, token pricing, rate limits, error handling, and mentions additional features like reply settings, paid partnership, AI labels, etc. No gaps are apparent.

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?

Schema description coverage is 100%, so baseline is 3. The description adds significant value by explaining the relationships between parameters (e.g., mutual exclusivity of poll, media, card_uri; requirement of at least one of text/poll/media/card_uri; the account targeting logic for user_id/user_name; the media upload prerequisite). It also clarifies token pricing implications tied to parameters like text containing URLs and media attachments.

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 publishes a post to a connected X account via the official X API. It uses a specific verb ('Publish') and resource ('post to a connected X account'), and distinguishes itself from sibling tools like x-twitter.delete_post, x-twitter.search, etc. by focusing on creation.

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 instructs to call x-twitter.connected_accounts first, handles the case of empty accounts, and explains how to target a specific account or use the default. It details the required content (text, poll, media, card_uri) and the mutual exclusivity rules. It provides clear guidance on media upload workflow, token pricing, rate limits, and error handling.

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

x-twitter.delete_bookmarkAInspect

Remove a bookmarked post for a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Cost = 30 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesNumeric id of the bookmarked post to remove.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
user_idNoNumeric X user id of the connected account.
user_nameNoX handle of the connected account.
bookmarkedNoWhether the post is bookmarked after this request.
Behavior3/5

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

Discloses removal action and cost (30 tokens), but does not mention potential failures (e.g., if post is not bookmarked) or side effects. With no annotations, somewhat minimal 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 short sentences, front-loaded with the action. No extraneous information; every sentence serves a purpose.

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?

Covers main action, prerequisite, account targeting, and cost. Lacks output description, but given simplicity and no nested objects, it 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%, so baseline is 3. The description adds value by summarizing account targeting logic ('pass user_id or user_name... or omit both'), which reinforces schema 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 the action ('Remove a bookmarked post') and the target resource ('for a connected X account'). This distinguishes it from sibling tools like create_bookmark and get_bookmarks.

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?

Explicitly mentions prerequisite ('Call x-twitter.connected_accounts first') and explains account targeting options (user_id, user_name, or default). Does not provide when-not-to-use or alternatives, but context is clear.

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

x-twitter.delete_postAInspect

Delete a post published by a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Cost = 25 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesNumeric id of the post to delete.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
deletedNoWhether the post was deleted.
user_idNoNumeric X user id of the connected account.
user_nameNoX handle of the connected account.
Behavior3/5

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

The description mentions cost but does not disclose that deletion is permanent or irreversible. It also lacks info on error handling or rate limits. Without annotations, more transparency is needed.

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 purpose, makes efficient use of text. No fluff.

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 output schema exists, coverage is good. Includes prerequisite and cost. Could mention permanence of deletion, but overall complete enough for a simple delete operation.

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 covers all parameters (100% coverage). Description adds clarity on mutual exclusivity of user_id and user_name and default behavior, which goes beyond schema 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 the tool deletes a post on X (Twitter). It distinguishes from other X tools like create_post or edit_post by specifying 'delete'.

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?

Explicitly says to call x-twitter.connected_accounts first, and explains how to target a specific account or use default. No confusion about when to use.

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

x-twitter.edit_postAInspect

Edit a recent post from a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Requires post_id and at least one of text, media, paid_partnership, or made_with_ai.

Edits must be within X's one-hour window after posting. The authenticated X account may need X Premium for API edits. Posts with polls and some other types cannot be edited. Each edit returns a new post_id.

To attach media, upload files with meta-tools.upload_file and pass file_name values from meta-tools.list_uploaded_files.

Token pricing matches x-twitter.create_post: 60 tokens base, 1000 with URL, plus media surcharges.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoUpdated post text.
mediaNoFile names from meta-tools.list_uploaded_files to attach (up to 4). Upload with meta-tools.upload_file first.
post_idYesNumeric id of the post to edit.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
made_with_aiNoWhether the post contains AI-generated media.
paid_partnershipNoWhether the post is a paid partnership.

Output Schema

ParametersJSON Schema
NameRequiredDescription
textNoPost text returned by the X API.
post_idNoNumeric id of the edited post returned by the X API.
user_idNoNumeric X user id of the connected account.
user_nameNoX handle of the connected account.
Behavior4/5

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

No annotations provided, but description discloses important behaviors: edit time window, premium requirement, unsupported post types, token pricing. Does not discuss rate limits or authentication details, but overall informs well.

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?

Concise, front-loaded with purpose, each sentence adds value. No 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?

Covers prerequisites, constraints, pixel limitations, token pricing, and media attachment. Output schema exists, so return values are covered. Complete for a complex 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 has 100% description coverage, and description adds value by explaining requirement for at least one of text, media, etc., and media upload process. Adds meaning beyond 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?

Explicitly states 'Edit a recent post from a connected X account.' Uses specific verb and resource, clearly distinguishing from sibling tools like create_post, delete_post, etc.

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 sequence (call connected_accounts first), account targeting options, required fields, and constraints (one-hour window, X Premium, cannot edit polls). Mentions alternatives for media upload. Could be more explicit about when not to use, but covers key guidance.

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

x-twitter.get_bookmarksAInspect

Fetch bookmarked posts for a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Returns raw X API data with tweet objects, expanded authors, media, polls, and places. Use next_cursor to fetch the next page.

Cost = 25 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of bookmarks to return (default 20, max 100).
cursorNoPagination cursor from a previous response next_cursor field.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNoBookmarked posts returned by the X API.
includesNoExpanded users, media, polls, places, and referenced posts.
next_cursorNoCursor for the next page of bookmarks, when available.
result_countNoNumber of bookmarks in this page.
Behavior4/5

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

Describes output: 'raw X API data with tweet objects, expanded authors, media, polls, and places.' Also notes cost of 25 tokens and pagination. No annotations provided, so description carries full burden.

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?

Concise, front-loaded first sentence. Each sentence serves a purpose: purpose, prerequisite, targeting, output, pagination, cost. No fluff.

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?

Complete for a 4-param tool with 0 required. Covers prerequisites, account targeting, output content, pagination, cost. Output schema exists, so return values need not be detailed.

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 3. Description adds context about user_id/user_name targeting, default account behavior, and limit default (20). Adds value beyond 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?

Clearly states 'Fetch bookmarked posts for a connected X account.' Distinguishes from sibling tools like create_bookmark and delete_bookmark.

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?

Explicitly instructs to call x-twitter.connected_accounts first, and explains how to target a specific account or use default. Mentions pagination with next_cursor. No explicit when-not-to-use, but context is clear.

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

x-twitter.reply_to_postAInspect

Reply to a post from a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Requires reply_to_post_id. Supports the same content options as x-twitter.create_post: text, polls, media, reply settings, paid partnership disclosure, AI-generated labels, super-follower exclusivity, nullcast posts, cards, communities, and direct-message deep links.

At least one of text, poll, media, or card_uri is required, same as x-twitter.create_post.

Token pricing matches x-twitter.create_post.

ParametersJSON Schema
NameRequiredDescriptionDefault
pollNoPoll object with options (2-4 strings) and duration_minutes (5-10080).
textNoReply text content. At least one of text, poll, media, or card_uri is required.
mediaNoFile names from meta-tools.list_uploaded_files to attach (up to 4).
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
card_uriNoCard URI for the post. Mutually exclusive with poll and media.
nullcastNoWhether the post is promoted-only and hidden from the public timeline.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
community_idNoCommunity id when posting to an X community.
made_with_aiNoWhether the post contains AI-generated media.
reply_settingsNoWho can reply to the post.
paid_partnershipNoWhether the post is a paid partnership.
reply_to_post_idYesNumeric id of the post to reply to.
share_with_followersNoWhether to share a community post with followers too.
exclude_reply_user_idsNoUser ids to exclude from the reply mention list.
direct_message_deep_linkNoDeep link that moves the conversation into Direct Messages.
for_super_followers_onlyNoWhether the post is exclusive to super followers.
auto_populate_reply_metadataNoWhether to automatically populate reply metadata.

Output Schema

ParametersJSON Schema
NameRequiredDescription
textNoReply text returned by the X API.
post_idNoNumeric id of the reply post.
user_idNoNumeric X user id of the connected account.
user_nameNoX handle of the connected account.
Behavior3/5

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

No annotations provided, so description carries full burden. It mentions token pricing and content options, but does not disclose potential side effects, permission requirements, rate limits, or error handling. The behavior is straightforward, but more detail would improve 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 concise (8 sentences) with clear structure: main action, prerequisite, account selection, content options, required parameters, token pricing. No unnecessary words 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?

Given the tool has an output schema (not shown), description need not explain return values. It covers purpose, prerequisites, parameter constraints, and references sibling for details. Could mention error conditions but overall adequate for a reply 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% with descriptive parameter descriptions. The description adds value by summarizing content options, stating required combinations, and explaining user_id/user_name usage. It goes beyond repeating schema info.

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 name and description clearly state 'Reply to a post from a connected X account', specifying the action (reply) and resource (post). It distinguishes from siblings like x-twitter.create_post (creates new post) and x-twitter.repost_post (repost).

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 instructs to call x-twitter.connected_accounts first, explains account selection, and requires reply_to_post_id. It references x-twitter.create_post for content options and states required combination of parameters. However, it does not explicitly state when not to use this tool (e.g., alternatives like tweet_replies).

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

x-twitter.repost_postAInspect

Repost a post for a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Returns the reposted post_id and retweeted status.

Cost = 75 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesNumeric id of the post to repost.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
post_idNoNumeric id of the reposted post.
user_idNoNumeric X user id of the connected account.
retweetedNoWhether the post was reposted.
user_nameNoX handle of the connected account.
Behavior4/5

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

No annotations provided, so description carries full burden. Discloses cost (75 tokens), return value (reposted post_id and retweeted status), but does not mention auth needs beyond 'connected account' or potential rate limits. Still good for a simple 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?

Three sentences, front-loaded with the main purpose. Every sentence adds value: purpose, prerequisite usage, return info, cost. No fluff.

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's simplicity and presence of output schema, the description sufficiently covers what the tool does, prerequisites, parameter handling, return value, and cost. No information 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?

Schema coverage is 100%, so baseline is 3. The description adds no additional parameter info beyond the schema, which already describes each parameter well. No extra meaning 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?

Clearly states 'Repost a post for a connected X account.' The verb 'repost' and resource 'post' are specific. Distinguishes from sibling 'x-twitter.unrepost_post' which is the inverse.

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?

Explicitly says to call x-twitter.connected_accounts first, and explains how to target accounts via user_id/user_name with exclusion rules. Lacks explicit 'when not to use' but the sibling indicates alternative actions.

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

x-twitter.searchAInspect

Search public X (Twitter) posts matching a keyword or phrase.

Returns a timeline of matching posts with tweet text, engagement counts, author info, media, and quoted tweets. Use cursor from next_cursor to fetch the next page. search_type controls ranking: Top (default), Latest, Media, People, or Lists.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch keywords or phrase.
cursorNoPagination cursor from a previous response next_cursor field.
search_typeNoResult ranking mode.Top

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoSearch status from the upstream provider (ok on success).
timelineNoMatching posts from the search. Additional provider-specific fields may appear on each entry.
next_cursorNoCursor for the next results page, when available.
prev_cursorNoCursor for the previous results page, when available.
Behavior3/5

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

No annotations are provided, so the description must carry the full burden. It mentions pagination via cursor, ranking modes, and token cost, which is helpful. However, it does not discuss rate limits, authentication requirements, or whether the operation is read-only (though likely safe).

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 concise: four sentences total, each serving a clear purpose (purpose, return info, pagination and ranking, cost). No unnecessary words.

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 adequately lists return fields (tweet text, engagement, author info, media, quoted tweets). It covers pagination mechanics and ranking options. Missing some details like error handling or empty result behavior, but sufficient for a simple search 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 baseline is 3. The description adds value by explaining search_type behavior ('controls ranking: Top (default), Latest, Media, People, or Lists') and cursor usage for pagination, going beyond the schema 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 the verb 'search' and the resource 'public X (Twitter) posts matching a keyword or phrase.' It is specific and distinct from sibling tools, as no other x-twitter tool serves the same 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 does not provide explicit guidance on when to use this tool versus alternatives (e.g., x-twitter.user_timeline). It implies usage for keyword searches but lacks when-not advice or comparison to similar tools.

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

x-twitter.tweet_infoAInspect

Fetch metadata for a single public X (Twitter) post by its numeric tweet id.

Returns tweet text, engagement counts (likes, retweets, replies, quotes, bookmarks), language, conversation id, author profile summary, and attached media when present.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesNumeric tweet id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNoNumeric tweet id.
langNoDetected language code.
textNoTweet body text.
likesNoLike count.
mediaNoAttached media grouped by type (for example photo or video arrays). Additional provider-specific media fields may appear.
authorNoAuthor profile summary for the tweet.
quotesNoQuote count.
repliesNoReply count.
retweetsNoRepost count.
bookmarksNoBookmark count.
created_atNoTweet creation timestamp from X.
conversation_idNoConversation thread id for the tweet.
Behavior4/5

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

The description details the return fields (text, engagement counts, language, etc.) and cost, but does not mention limitations like public-only posts or rate limits. No annotations provided, so description carries full burden.

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 covering purpose, return details, and cost, with no wasted words. Front-loaded and 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?

Given an output schema exists, the description adequately summarizes returns. However, it could mention that the tweet must be public and perhaps note error conditions for completeness.

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 parameter description 'Numeric tweet id.' The description reinforces this but adds no new semantic information 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 states the verb 'fetch' and resource 'metadata for a single public X post', distinguishing it from siblings like tweet_replies and user_timeline.

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 (fetch by numeric tweet id) but does not explicitly mention when to use alternatives or when not to use this tool.

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

x-twitter.tweet_repliesAInspect

Fetch the latest replies for a single X (Twitter) post by its numeric tweet id.

Returns a timeline of reply tweets with text, engagement counts, author info, media, and in-reply-to metadata. Use cursor from next_cursor to fetch the next page.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesNumeric tweet id.
cursorNoPagination cursor from a previous response next_cursor field.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoReply fetch status from the upstream provider (ok on success).
timelineNoReply tweets, newest first. Additional provider-specific fields may appear on each entry.
next_cursorNoCursor for the next replies page, when available.
prev_cursorNoCursor for the previous replies page, when available.
Behavior4/5

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

With no annotations, the description must convey behavioral traits. It indicates a read operation (fetch), describes the return contents (text, engagement, author info, media, metadata), and mentions pagination. It could be improved by explicitly stating it's non-destructive and does not require authentication beyond what is already assumed.

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 concise with three sentences: action, return description, and pagination/cost. It is front-loaded and every sentence adds value 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?

Given the presence of an output schema and full parameter schema, the description covers the essential: what it does, what it returns, pagination, and cost. It lacks details like maximum page size or ordering, but these are likely in the 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 coverage is 100%, so the baseline is 3. The description for 'id' repeats the schema's 'Numeric tweet id' and for 'cursor' repeats 'Pagination cursor from a previous response next_cursor field'. No additional meaning is added beyond what the schema provides.

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 'Fetch the latest replies for a single X (Twitter) post by its numeric tweet id', specifying the verb (fetch), resource (replies of a post), and unique identifier (tweet id). It distinguishes from sibling tools like tweet_info (which gets tweet details) and user_timeline (which gets user's tweets).

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 tweet_info or search. It only mentions pagination but does not compare with other tools or state prerequisites.

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

x-twitter.unrepost_postAInspect

Remove a repost for a connected X account.

Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.

Cost = 50 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesNumeric id of the original post to unrepost.
user_idNoNumeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.
user_nameNoX handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
user_idNoNumeric X user id of the connected account.
retweetedNoWhether the post is still reposted after this request.
user_nameNoX handle of the connected account.
Behavior3/5

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

With no annotations provided, the description must disclose behavioral traits. It includes the cost (50 tokens) and hints at idempotency by implying the action removes a repost. However, it does not mention required permissions, side effects (e.g., whether the original post is affected), error conditions, or rate limits. The information is useful but incomplete.

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 succinct sentences: action, prerequisite, parameter usage, and cost. It front-loads the essential purpose and avoids any superfluous text. Every sentence contributes 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?

The description covers the core action, authentication prerequisite, and parameter usage. An output schema exists so return values need not be explained. It is adequate for a straightforward mutation tool, though it could mention error handling or confirmation. Overall, it provides sufficient context for effective 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?

The input schema covers all 3 parameters with full descriptions. The description adds no new semantic information beyond restating the account targeting logic already present in the schema. Therefore, it meets the baseline for high schema coverage without further clarification.

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 action: 'Remove a repost' for a connected X account. It explicitly names the resource (repost) and the verb (remove), distinguishing it from sibling tools like 'repost_post' (create repost) and 'delete_post' (delete original post).

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 a clear prerequisite: 'Call x-twitter.connected_accounts first.' It also explains how to target a specific account or use the default. However, it does not explicitly state when not to use this tool or mention alternatives (e.g., if the user wants to delete the original post instead).

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

x-twitter.user_infoAInspect

Fetch public profile metadata for an X (Twitter) user.

Provide user_name (handle without @) or rest_id (numeric user id). At least one is required. When rest_id is set, it takes precedence over user_name. Returns display name, bio, follower counts, verification flags, avatar URLs, and related profile fields.

Cost = 5 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
rest_idNoNumeric X user id (rest_id). When provided, user_name is ignored.
user_nameNoX handle without the leading @ (for example elonmusk). Required when rest_id is omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNoNumeric X user id (may duplicate rest_id).
descNoProfile bio / description.
nameNoDisplay name shown on the profile.
avatarNoProfile avatar image URL.
statusNoProfile lookup status from the upstream provider.
friendsNoNumber of accounts the user follows.
profileNoX screen name (handle).
rest_idNoNumeric X user id.
locationNoProfile location string.
protectedNoWhether the account is protected (private).
sub_countNoFollower count.
affiliatesNoAffiliate account metadata when present (object or empty array from the provider). Additional provider-specific fields may appear.
created_atNoAccount creation timestamp from X.
media_countNoTotal media item count.
header_imageNoProfile banner image URL.
blue_verifiedNoWhether the account has X blue verification.
statuses_countNoTotal post count.
business_accountNoBusiness account metadata when present (object with counts or empty array from the provider when not applicable).
verification_typeNoVerification type label from X when present.
pinned_tweet_ids_strNoPinned tweet ids for the profile when present.
Behavior3/5

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

No annotations provided, so description carries full burden. It implies a read-only operation ('Fetch'), mentions cost, but does not explicitly state non-destructive nature, authentication needs, or behavior on errors. Adequate but could be more explicit.

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?

Concise with 4 sentences covering purpose, parameters, return fields, and cost. Front-loaded with purpose. Could be slightly more structured but remains 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?

Has output schema, so return info not required, but description still lists key fields. Covers parameter behavior. Lacks error handling or rate limit info but sufficient for a simple read 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%, baseline 3. Description adds value by clarifying that at least one parameter is required (despite schema marking optional), the precedence of rest_id over user_name, and the format of user_name (without @).

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 verb (Fetch) and resource (public profile metadata for an X user), distinguishing it from sibling tools like tweet_info or search which serve different purposes.

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 on when to use (when needing user profile metadata) and detailed parameter guidance (both parameters, precedence, requirement). Lacks explicit exclusions or alternative suggestions but context is sufficient.

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

x-twitter.user_timelineAInspect

Fetch a user's recent X (Twitter) posts, pinned tweet, and profile summary.

Provide user_name (handle without @) or rest_id (numeric user id). At least one is required. When rest_id is set, it takes precedence over user_name. Returns timeline entries with tweet text, engagement counts, media, quoted tweets, and author info. Use cursor from next_cursor to fetch the next page.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor from a previous response next_cursor field.
rest_idNoNumeric X user id (rest_id). When provided, user_name is ignored.
user_nameNoX handle without the leading @ (for example elonmusk). Required when rest_id is omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
userNoProfile summary for the requested user.
pinnedNoPinned tweet object when the user has one pinned post.
statusNoTimeline fetch status from the upstream provider (ok on success).
timelineNoRecent posts from the user. Additional provider-specific fields may appear on each entry.
next_cursorNoCursor for the next timeline page, when available.
prev_cursorNoCursor for the previous timeline page, when available.
Behavior3/5

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

No annotations are provided, so the description bears full responsibility. It discloses the tool is read-only, returns timeline data, and costs 10 tokens. It mentions pagination. However, it lacks details on authentication requirements, rate limits, or whether it works for protected accounts.

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 concise with four sentences. The main purpose is front-loaded. No redundant information. Every sentence adds 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?

The description covers the main functionality, parameter usage, pagination, and output summary. It mentions pinned tweet, which is a distinguishing feature. Given that an output schema exists, the description is sufficiently complete for an agent to use 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 input schema covers all parameters with descriptions. The description adds value by clarifying that at least one of user_name or rest_id is required, rest_id takes precedence, and how to use cursor for pagination. This goes beyond the schema 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 the tool fetches a user's recent X posts, pinned tweet, and profile summary. The verb 'Fetch' is specific and the resource is precisely identified. It distinguishes from siblings like user_info (profile info) and search.

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 when to use (fetch user timeline), how to identify the user (user_name or rest_id), and precedence (rest_id over user_name). It also provides pagination instructions. However, it does not explicitly exclude use cases or compare with siblings.

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

youtube.channel_detailsAInspect

Fetch metadata for a public YouTube channel by channel id or URL.

Accepts a channel id (for example UCJ5v_MCY6GNUBTO8-D3XoAg) or common YouTube channel URLs (for example https://www.youtube.com/@WWE). Returns title, username, description, subscriber and view counts, join date, verification flags, avatar and banner images, keywords, and external links.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
channel_idYesYouTube channel id or URL (for example UCJ5v_MCY6GNUBTO8-D3XoAg or https://www.youtube.com/@WWE).

Output Schema

ParametersJSON Schema
NameRequiredDescription
linksNoExternal links listed on the channel About page.
statsNoPublic channel statistics.
titleNoChannel display name.
avatarNoChannel avatar images at different sizes.
badgesNoChannel badges (for example Official Artist Channel).
bannerNoChannel banner images for desktop, mobile, and TV layouts.
countryNoCountry associated with the channel when available.
keywordsNoChannel keywords from the About page.
usernameNoPublic @ handle when available.
artistBioNoArtist bio text when the channel is a music artist.
channelIdNoCanonical YouTube channel id.
isVerifiedNoWhether the channel is verified.
joinedDateNoChannel creation date (ISO 8601).
descriptionNoChannel About description.
isFamilySafeNoWhether the channel is marked family safe.
joinedDateTextNoHuman-readable join date.
canonicalBaseUrlNoCanonical channel path on YouTube when available.
hasBusinessEmailNoWhether a business email is available for contact.
isVerifiedArtistNoWhether the channel is a verified artist channel.
Behavior4/5

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

No annotations provided, so description carries full burden. It lists return fields and mentions it works for public channels, and includes a cost. However, it does not disclose behavior on missing channels 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.

Conciseness5/5

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

Three sentences, each with a clear purpose: purpose, input/output details, cost. Front-loaded and no unnecessary words.

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 an output schema present, description's listing of return fields is extra. It covers input and output clearly. Minor gap: no mention of authentication or error handling.

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 has 100% coverage, and description adds examples but largely repeats schema. Baseline 3 is appropriate as description reinforces without adding significant new 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 clearly states the tool fetches metadata for a public YouTube channel, specifying the input types (channel id or URL). It distinguishes from sibling tools like youtube.channel_search and youtube.channel_videos.

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 implies usage context by specifying the resource and input format, but lacks explicit when-to-use vs alternatives or exclusion criteria. Context is clear enough for most cases.

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

youtube.channel_videosAInspect

Fetch a paginated list of videos from a public YouTube channel by its channel id.

Accepts a channel id (for example UCg6gPGh8HU2U01vaFCAsvmQ) or common YouTube channel URLs (for example https://www.youtube.com/@ChrisTitusTech). Use cursor from a prior response for the next page.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor from a previous response cursor field.
channel_idYesYouTube channel id or URL (for example UCg6gPGh8HU2U01vaFCAsvmQ or https://www.youtube.com/@ChrisTitusTech).

Output Schema

ParametersJSON Schema
NameRequiredDescription
cursorNoCursor for the next page, when available.
videosNoChannel videos for the current page.
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 mentions pagination, cost (10 tokens), and that the channel must be public. However, it does not disclose potential errors, rate limits, or authentication requirements, which would be helpful.

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 sentences with no wasted words. It front-loads the main purpose, then provides key details (input examples, pagination, cost). Every sentence adds 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?

The tool has 2 parameters and an output schema (not shown). The description covers input format, pagination behavior, cost, and public channel constraint. It is nearly complete; only minor aspects like response order are omitted.

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 description restates the examples already present in the schema for channel_id and cursor. It adds no new semantic value 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?

The description clearly states the verb 'Fetch' and resource 'paginated list of videos from a public YouTube channel by its channel id'. It distinguishes this tool from sibling tools like youtube.channel_details and youtube.search by specifying channel-based video listing and pagination.

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 guidance on when to use this tool versus alternatives like youtube.search or youtube.channel_search. The description only implies its use for fetching videos from a specific channel but does not provide context or exclusions.

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

youtube.playlist_detailsAInspect

Fetch metadata for a public YouTube playlist by playlist id.

Returns title, description, creator summary, video and view counts, thumbnails, badges, and last updated timestamps.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
playlist_idYesYouTube playlist id (for example PLcirGkCPmbmFeQ1sm4wFciF03D_EroIfr).

Output Schema

ParametersJSON Schema
NameRequiredDescription
statsNoPublic playlist statistics.
titleNoPlaylist title.
authorNoPlaylist creator summary.
badgesNoPlaylist badges when available.
playlistIdNoCanonical YouTube playlist id.
thumbnailsNoPlaylist thumbnail images at different sizes.
descriptionNoPlaylist description.
updatedTimeNoLast update date (ISO 8601).
updatedTimeTextNoHuman-readable last update time.
Behavior4/5

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

With no annotations, the description carries full burden. It lists return fields and cost (10 tokens), implying a read-only operation. However, no mention of authentication or rate limits, but sufficient for a simple 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?

Three sentences: action, return list, cost. Front-loaded and efficient with no wasted words.

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 one-parameter read tool with an output schema, the description covers input, output summary, and cost. No missing critical information.

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 description adds minimal value beyond the schema. The schema already describes playlist_id; description only reiterates 'by playlist id'.

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?

Clearly states 'Fetch metadata for a public YouTube playlist by playlist id', specifying the verb, resource, and identifier method. Distinguishes from sibling tools like youtube.channel_details and youtube.video_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?

Implicitly indicates usage for public playlists only, but does not explicitly state when not to use or mention alternatives. The context is clear given sibling tools.

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

youtube.searchAInspect

Search public YouTube content by keyword or phrase.

Returns matching result cards, estimated result count, and spelling suggestions.

Use filter parameters to apply multiple YouTube search filters:

  • upload_date: Last hour, Today, This week, This month, This year

  • content_type: Video, Channel, Playlist, Movie

  • duration: Under 4 minutes, 4 - 20 minutes, Over 20 minutes

  • features: Live, 4K, HD, Subtitles/CC, Creative Commons, 360°, VR180, 3D, HDR, Location, Purchased (multiple allowed)

  • sort_by: Relevance, Upload date, View count, Rating

Filter values are matched case-insensitively. Only one option per group applies except features, which accepts multiple labels.

When a requested filter cannot be applied, the API returns the best-effort results available so far and includes unappliedFilters with the labels that were skipped.

Use cursor with the same query to paginate: pass cursorNext from a prior response. Filter parameters and cursor cannot be combined.

Check didYouMean when the query may be misspelled.

Cost = 20 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch keywords or phrase.
cursorNoPagination cursor from cursorNext.
sort_byNoSort order. One of: Relevance, Upload date, View count, Rating.
durationNoDuration filter. One of: Under 4 minutes, 4 - 20 minutes, Over 20 minutes.
featuresNoFeature filters. Multiple allowed. Each value must be one of: Live, 4K, HD, Subtitles/CC, Creative Commons, 360°, VR180, 3D, HDR, Location, Purchased.
languageNoLanguage code for localized results (for example en).en
locationNoCountry code for localized results (for example US).US
upload_dateNoUpload date filter. One of: Last hour, Today, This week, This month, This year.
content_typeNoContent type filter. One of: Video, Channel, Playlist, Movie.

Output Schema

ParametersJSON Schema
NameRequiredDescription
contentsNoSearch result entries for the current page. Video entries include a type field and nested video object.
cursorNextNoCursor for the next results page, when available.
didYouMeanNoSuggested corrected query when the search may be misspelled.
estimatedResultsNoApproximate total number of matching results.
unappliedFiltersNoRequested filter labels that could not be applied. Present only when at least one filter was skipped.
Behavior5/5

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

No annotations exist, so the description fully covers behavior: case-insensitive filters, best-effort with unappliedFilters, cursor pagination restriction, cost in tokens, and didYouMean. This is comprehensive for a search 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 well-structured with a clear opening, bullet-like filter list, and concise statements on pagination and fallbacks. 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?

Given the output schema exists, the description doesn't need to detail return formats. It covers search scope, filters, pagination, cost, and error handling (unappliedFilters). Complete for the tool's complexity.

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?

Schema coverage is 100%, but the description adds significant value: explains filter groups, multiple features, case-insensitivity, and cursor constraints. It enriches understanding 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 clearly states the tool searches public YouTube content by keyword/phrase and lists return types. It does not explicitly differentiate from sibling tools like youtube.channel_search, but the purpose is unmistakable.

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 detailed guidance on filter usage, pagination with cursor, and handling of unapplied filters. Lacks explicit comparison to alternatives, but the context is sufficient for correct invocation.

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

youtube.search_autocompleteAInspect

Get YouTube search autocomplete suggestions for a partial query.

Returns the normalized query and an array of suggested search phrases. Optional language and location codes localize suggestions (defaults: en, US).

Cost = 8 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesPartial search keywords or phrase.
languageNoLanguage code for localized suggestions (for example en).en
locationNoCountry code for localized suggestions (for example US).US

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNoNormalized query echoed from the provider.
resultsNoSuggested search phrases for the query.
Behavior5/5

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

No annotations provided, so description carries full burden. It discloses the return format (normalized query + array of suggested phrases), optional parameters (language, location) with defaults, and token cost (8 tokens). This is comprehensive for a simple read-only 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 three sentences, front-loading the main purpose. No extraneous information, and every sentence adds value. It is perfectly concise for the tool's simplicity.

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's low complexity, presence of output schema, and complete parameter documentation, the description adequately covers the tool's behavior. It explains return values, parameter effects, and cost, leaving no significant 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 baseline is 3. The description adds value by stating the effect of language and location parameters: 'localize suggestions (defaults: en, US)'. This goes beyond the schema's parameter 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 the tool gets YouTube search autocomplete suggestions for a partial query. The verb 'Get' and resource 'YouTube search autocomplete suggestions' are specific, and the tool name includes 'youtube' to distinguish it from sibling 'google-search.autocomplete'.

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 implies usage for YouTube autocomplete queries but does not explicitly state when to use this tool versus alternatives like google-search.autocomplete. However, the context of YouTube vs Google search is clear enough for an agent to infer.

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

youtube.video_commentsAInspect

Fetch top-level comments for a public YouTube video by its 11-character video id.

Returns comment text, author summary, vote and reply counts, pinned status, total comment count, and cursorNext for the next page.

Use sort_by to choose comment order:

  • sort_by: Top comments, Newest first

Sort values are matched case-insensitively.

Use cursor with the same video_id to paginate: pass cursorNext from a prior response. sort_by and cursor cannot be combined.

Cost = 15 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor from a previous response cursorNext field.
sort_byNoComment sort order. One of: Top comments, Newest first.
video_idYesYouTube video id (11 characters, not a URL).

Output Schema

ParametersJSON Schema
NameRequiredDescription
commentsNoTop-level comments for the current page and sort order. Additional provider-specific fields may appear on each entry.
cursorNextNoCursor for the next comments page, when available.
totalCommentsCountNoTotal number of comments on the video.
Behavior4/5

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

Discloses that it fetches top-level comments (not replies), requires public video, and explains pagination via cursorNext. Mentions sort values are case-insensitive. Lacks mention of rate limits or error handling, but good overall.

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 concise paragraphs, front-loaded with purpose and return fields, followed by parameter usage and cost. No superfluous text, 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?

Given 3 parameters and output schema, the description covers return fields, pagination, sorting, and cost. It is sufficient for the 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 coverage is 100%, so baseline is 3. The description adds value by explaining cursor usage from previous response, sort value case-insensitivity, and that video_id is not a URL. Enhances clarity beyond 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 states the tool fetches top-level comments for a public YouTube video by its 11-character video ID. It specifies the return content and distinguishes from sibling tools like youtube.video_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 description explains when to use sort_by and cursor, including their incompatibility. It also gives cost. No explicit when-not-to-use or alternatives, but context clear given no other comment tools.

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

youtube.video_detailsAInspect

Fetch metadata for a public YouTube video by video id or URL.

Accepts a bare 11-character video id (for example PuQFESk0BrA) or common YouTube watch, youtu.be, Shorts, and embed URLs. Returns title, description, view count, duration, publish date, channel id, category, keywords, and thumbnails.

Cost = 10 tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYesYouTube video id or URL (for example PuQFESk0BrA, https://youtu.be/PuQFESk0BrA, or https://www.youtube.com/watch?v=PuQFESk0BrA).

Output Schema

ParametersJSON Schema
NameRequiredDescription
typeNoVideo type (for example NORMAL).
titleNoVideo title.
authorNoChannel display name.
categoryNoPrimary category label.
keywordsNoVideo keyword tags.
video_idNoCanonical YouTube video id.
channel_idNoUploader channel id.
thumbnailsNoAvailable thumbnail images at different sizes.
descriptionNoPlain-text video description.
video_lengthNoVideo duration in seconds as a string.
published_timeNoPublish date (ISO 8601).
is_live_contentNoWhether the video is live content (True or False as a string).
number_of_viewsNoTotal view count.
Behavior3/5

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

With no annotations, the description bears full responsibility. It notes the tool works on 'public' videos and mentions cost (10 tokens). However, it does not disclose rate limits, authorization requirements, or error conditions.

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 waste. First states purpose, second details input formats, third lists outputs and cost. 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?

Given the tool's simplicity (1 parameter, no nested objects) and the presence of an output schema, the description adequately covers input, output, and cost. It is complete for its complexity.

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 single parameter 'video_id' already has a good schema description. The description adds value by enumerating accepted formats (bare id, youtu.be, watch, Shorts, embed URLs), which goes 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 states it 'Fetch metadata for a public YouTube video by video id or URL.' It specifies the verb (fetch) and resource (metadata for a video), distinguishing it from sibling tools like channel_details or search.

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 input format guidance (bare 11-character id or common URL forms). It does not explicitly state when not to use it, but the context of sibling tools makes its specific purpose clear.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources