Vee3
Server Details
Hosted MCP with 78 agent tools: X, domains, SEO, Trends, YouTube, TikTok, screenshots, 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.
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.
Tool Definition Quality
Average 4.2/5 across 78 of 78 tools scored. Lowest: 3.2/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.
All tools follow a consistent group.tool_name pattern using snake_case. The naming is predictable and uniformly applied across all groups.
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.
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
78 toolsdomains.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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domains | Yes | Domain names to check (maximum 10). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but the description discloses the return format (JSON object mapping domains to booleans) and token cost (5 API tokens). This adds behavioral context beyond the schema, though it does not detail error behavior 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: first states the action, second explains the output, third mentions token cost. No wasted words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple single-parameter tool with output schema indicated, the description covers main functionality, return format, and token cost. It lacks error handling details but is sufficient for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear description for the single parameter 'domains'. The description reinforces the max 10 domains and adds context about the return format and token usage, adding value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks domain name availability for up to ten domains, returning a JSON object with booleans. This is distinct from sibling tools like domains.dns_records, domains.lookup, and domains.whois.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking availability but provides no explicit guidance on when to use this tool versus alternatives, nor does it mention 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.
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).
Successful calls use 2 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to look up (for example example.com). | |
| subdomain | No | Optional subdomain label to include (for example www or blog). |
Output Schema
| Name | Required | Description |
|---|---|---|
| records | No | DNS records returned for the domain. |
Tool Definition Quality
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 that the tool is read-only by nature, returns an array of records with specific fields, and mentions the API token cost (2 tokens). It does not discuss error handling, rate limits, or pagination, but for a simple fetch 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place. The first sentence states the action, the second describes the return format, and the third explains the optional parameter with an example. No fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description covers the return format, parameter usage, and token cost. An output schema exists, so deep return value documentation is unnecessary. It lacks mention of error conditions or edge cases, but for a straightforward fetch tool, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for both parameters (100% coverage), so the baseline is 3. The description adds value by including an example usage for the subdomain parameter ('blog for blog.example.com'), clarifying the relationship between domain and subdomain. This enhances the schema's meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Fetch DNS records for a domain,' clearly stating the action and resource. It explains the returned record fields. While the name itself is descriptive, it does not explicitly differentiate from sibling tools like 'domains.lookup', but the purpose is still clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use (to fetch DNS records) and notes optional subdomain usage. However, it does not provide explicit guidance on when not to use this tool or mention alternatives among siblings. The context is clear but lacks exclusions.
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).
Successful calls use 2 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for paginated results. | |
| limit | No | Maximum number of TLDs to return. Defaults to 100 when omitted. | |
| search | No | Return TLDs whose suffix contains this substring. | |
| tld_type | No | Filter by TLD category: country-code, generic, generic-restricted, infrastructure, or sponsored. | |
| availability | No | Filter by registration phase: general-availability (normal public registration) or sunrise (early trademark-holder period). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tlds | No | Matching top-level domain records. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses behavioral details: token cost (2 API tokens), default limit (100), explanation of availability values, and response fields. This compensates for missing annotations and clearly informs the agent about side effects and expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, well-structured, and front-loaded with the primary purpose. Every sentence adds value: purpose, filtering options, defaults, token cost, and response contents. No redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 no annotations, the description provides complete context: explains filtering, pagination, defaults, token usage, and response fields. It covers all necessary aspects for an agent to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds value beyond the schema by explaining the default value for limit (100) and the meaning of availability values ('general-availability', 'sunrise'). This augments the parameter definitions with contextual information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'List or search top-level domains (TLDs) with registry metadata,' which clearly identifies the action (list/search) and resource (TLDs). This distinguishes it from sibling tools like domains.tld_details, which is for a single TLD.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides criteria for use: 'Filter by substring search, availability phase, TLD category, and paginate with limit and page.' It implies when to use (listing/searching multiple TLDs) versus alternatives (e.g., tld_details for a specific TLD), but does not explicitly state when not to use or name alternatives.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to look up (for example example.com). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tld | No | Top-level domain suffix. |
| dates | No | Registration lifecycle dates. |
| domain | No | Looked-up domain name. |
| source | No | Primary data source used for the normalized response. |
| status | No | Normalized EPP status codes. |
| keyword | No | Second-level domain label without the TLD. |
| contacts | No | Registrant, admin, tech, and billing contact records. |
| registrar | No | Registrar summary data. |
| nameservers | No | Authoritative nameserver host names. |
| availability | No | Availability state (for example registered or available). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It describes data sources (registry/registrar RDAP+WHOIS), normalization, returned fields, and token cost. Missing details about rate limits, idempotency, or error behavior, but overall transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, 60 words, front-loaded with the core action, followed by details and usage guidance. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple one-parameter input, existence of an output schema, and clear description covering purpose, usage, and returned fields, the description is complete for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single 'domain' parameter, so the description adds little beyond the schema's own description. The schema already provides an example, so no additional semantics are needed. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'look up' and resource 'domain', and distinguishes itself from sibling tools like domains.whois and domains.rdap by emphasizing normalized registration details from combined sources. It also lists the specific fields returned, making the purpose very clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this when you need registrant-oriented summary data rather than raw WHOIS or RDAP payloads', providing both when-to-use and alternatives. Also mentions token cost, aiding decision-making.
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).
Successful calls use 40 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to analyze (for example example.com). |
Output Schema
| Name | Required | Description |
|---|---|---|
| mozDA | No | Moz domain authority score (0-100). |
| mozPA | No | Moz page authority score (0-100). |
| domain | No | Analyzed domain name. |
| ahrefsDR | No | Ahrefs domain rating (0-100). |
| stumbles | No | Total StumbleUpon shares. |
| FB_shares | No | Total Facebook shares. |
| ahrefsRank | No | Global website ranking from Ahrefs. |
| majesticCF | No | Majestic citation flow score (0-100). |
| majesticTF | No | Majestic trust flow score (0-100). |
| FB_comments | No | Total Facebook comments. |
| last_updated | No | When the metrics snapshot was last updated. |
| ahrefsTraffic | No | Estimated monthly organic traffic. |
| majesticLinks | No | Total links from the Majestic database. |
| pinterest_pins | No | Total Pinterest saves. |
| ahrefsBacklinks | No | Total number of backlinks from Ahrefs. |
| ahrefsRefDomains | No | Number of unique referring domains from Ahrefs. |
| ahrefsTrafficValue | No | Estimated value of organic traffic. |
| ahrefsOrganicKeywords | No | Number of ranking organic keywords. |
Tool Definition Quality
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 token cost (40 API tokens) and lists returned data, but does not mention error behavior, rate limits, or what happens for invalid domains. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear first sentence followed by a bullet-like list of metric categories and token cost. It is front-loaded but could be more concise by reducing the detailed enumeration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input schema, presence of output schema, and disclosure of token cost, the description is fairly complete. However, it lacks details on error handling or constraints, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter 'domain' described as 'Domain name to analyze (for example example.com).' The tool description adds no additional semantic meaning beyond the schema, earning the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes a domain with comprehensive SEO metrics, backlink data, and social signals. It specifies the verb 'analyze' and lists specific metric categories, distinguishing 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.
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. While it implies usage for obtaining domain metrics, it omits conditions or exclusions, such as when to prefer other tools like seo.basic_metrics or domains.lookup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.rdapBInspect
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.
Successful calls use 3 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to look up (for example example.com). |
Output Schema
| Name | Required | Description |
|---|---|---|
| events | No | Registration, expiration, and last-changed timestamps. |
| status | No | EPP status codes for the domain. |
| ldhName | No | Domain name in LDH form. |
| entities | No | Registrar, registrant, and related RDAP entities. |
| secureDNS | No | DNSSEC delegation and DS record data. |
| nameservers | No | Authoritative nameservers for the domain. |
| objectClassName | No | RDAP object class (for example domain). |
Tool Definition Quality
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 of behavioral disclosure. It only mentions token cost (3 API tokens) but does not state whether the operation is read-only, idempotent, or if any side effects occur. This is insufficient for an agent to assess safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (three sentences) and front-loaded with the core purpose. Every sentence contributes meaningful information—purpose, return data, and token cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (single parameter, output schema exists), the description covers the main aspects: purpose, returned data, and token cost. It lacks usage guidelines and is slightly thin on behavioral transparency, but overall it is sufficient for a basic lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single 'domain' parameter already described in the schema as 'Domain name to look up (for example example.com).' The tool description adds nothing beyond that, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Look up raw RDAP data for a domain' and lists the returned data types. This provides a specific verb+resource. However, it does not explicitly distinguish this tool from sibling tools like 'domains.lookup' or 'domains.whois', leaving some ambiguity for the agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention scenarios where RDAP is preferred over WHOIS or other lookup tools, nor does it exclude any cases.
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).
Successful calls use 1 API token.
| Name | Required | Description | Default |
|---|---|---|---|
| tld | Yes | TLD suffix to look up without a leading dot (for example io). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tld | No | TLD suffix without a leading dot. |
| type | No | TLD category (for example country-code or generic). |
| level | No | TLD level (1 for standard TLDs). |
| status | No | Delegation status (for example ACTIVE). |
| changed | No | TLD record last changed timestamp. |
| created | No | TLD delegation created timestamp. |
| remarks | No | Additional registry notes or links. |
| contacts | No | Registry contact records. |
| rdap_server | No | Authoritative RDAP server URL. |
| availability | No | Registration phase for the TLD. |
| organization | No | Registry operator contact details. |
| registry_url | No | Registry web site URL. |
| whois_server | No | Authoritative WHOIS server host name. |
| domains_count | No | Approximate registered domain count when reported by the registry. |
Tool Definition Quality
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 important behavior: the tool returns a detailed set of fields (status, type, servers, etc.) and that 'Successful calls use 1 API token.' This adds context about token cost and indicates it is a read-only operation, though permission requirements are not mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: four sentences that respectively state the purpose, list return fields, provide usage instructions, and note the API token cost. Every sentence adds value, with no repetitive or extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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) and the presence of an output schema (not shown), the description provides sufficient context: what it does, what it returns, how to call it, and cost. It could be improved by noting that it is read-only or mentioning error scenarios, but overall it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter with 100% description coverage. The description repeats the format requirement ('without a leading dot') and provides examples ('io or com'), which adds marginal value beyond the schema. With complete schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Look up detailed registry information for a single top-level domain (TLD).' It lists specific return fields, distinguishing it from sibling tools like domains.list_tlds (which lists all TLDs) and domains.whois/domains.rdap (which operate on domain names, not TLDs).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage guidance: 'Pass the TLD suffix without a leading dot (for example io or com).' However, it does not explicitly state when to use this tool versus alternatives like domains.whois or domains.rdap, nor does it mention when not to use it. The 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.
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.
Successful calls use 4 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to look up (for example example.com). | |
| include_registrar | No | When true, query registry and registrar WHOIS servers for more complete data. When false (default), query the registry server only. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description effectively discloses the return format (JSON object keyed by server, parsed fields, raw text), the effect of include_registrar on speed/completeness, and token cost (4 tokens). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with zero waste: first states purpose, second describes return, third explains parameter, fourth notes cost. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple tool with 2 parameters, 100% schema coverage, and existence of output schema (per context), the description covers purpose, return format, parameter effect, and cost. Missing only error handling or edge cases, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentioning the 'slower' trade-off for include_registrar beyond the schema's description, and clarifies the default behavior. This justifies a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the specific verb 'Fetch' and resource 'WHOIS registration data for a domain'. It clearly differentiates from sibling tools like domains.lookup (DNS) and domains.rdap (RDAP) by focusing on WHOIS data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the trade-off of the include_registrar parameter ('slower, more complete') but does not explicitly compare WHOIS to alternatives like RDAP or when to choose this tool over others, leaving the agent to infer usage context.
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.
Successful calls use 1 API token.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| languages | No | Map of language names to language codes for Google Maps place endpoints (for example English: en). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description adds value by stating successful calls use 1 API token. Non-destructive read operation implied, but not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with front-loaded purpose, followed by token usage note. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with output schema, description explains output and use case completely. No missing information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds meaning by explaining output format and usage, beyond what schema (empty) provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'List' with specific resource 'supported language codes for Google Maps place endpoints'. Distinguishes from sibling tools like place_details or search by being a supporting utility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use these codes with language parameter on other calls. No when-not-to or alternatives, but simplicity of tool and lack of similar siblings compensates.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.nearby_searchAInspect
Search for places near a latitude and longitude.
Required: location. Optional: radius (defaults to 1000 meters when sort_by is Relevance), keyword, place_type, open_now, min_price, max_price, language, region, and cursor. When sort_by is Distance, omit radius and provide keyword or place_type. Pass cursor from a previous cursor_next to fetch the next page.
Returns matching places in places. 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.
Successful searches use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from cursor_next on a previous response. | |
| radius | No | Search radius in meters (default 1000). | |
| region | No | Two-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data. | |
| keyword | No | Keyword to match nearby places (for example restaurant). | |
| sort_by | No | Result ordering: "Relevance" (default) or "Distance". | |
| language | No | Language code for results (for example en). | |
| location | Yes | Latitude and longitude of the search point (for example 40,-110). | |
| open_now | No | When true, return only places open for business at query time. | |
| max_price | No | Maximum price level (0–4, inclusive). | |
| min_price | No | Minimum price level (0–4, inclusive). | |
| place_type | No | Restrict results to a single Google Maps place type (for example restaurant). |
Output Schema
| Name | Required | Description |
|---|---|---|
| places | No | Nearby places matching the search criteria. Additional upstream fields may appear. |
| cursor_next | No | Cursor for the next page when more results are available. |
| cursor_previous | No | Cursor for the previous page when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but the description thoroughly discloses behavior: default radius (1000m when sort_by Relevance), token cost (10 API tokens), pagination via cursor, and that additional upstream fields may appear. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with main purpose first, followed by parameter details and usage notes. Relatively concise given the number of parameters, but could be slightly shortened without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters (1 required) and existence of output schema, the description covers essential usage patterns, return fields (places), pagination, and cost. It is 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds value by explaining default radius behavior, parameter interdependencies (sort_by and radius/keyword), and pagination cursor usage, going beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches for places near a location. The verb 'search' and resource 'places' are specific, but it doesn't explicitly differentiate from sibling search tools like 'google-maps.search'. However, the name 'nearby_search' implies the scope, and the description adds location requirement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides conditional usage: when sort_by is Distance, omit radius and provide keyword or place_type. Mentions cursor for pagination. Does not explicitly state when to use alternatives, but gives clear context for parameter interactions.
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.
Successful calls use 4 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Two-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data. | |
| language | No | Language code for results (for example en). | |
| place_id | Yes | Google Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66). |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | No | Place display name. |
| hours | No | Opening hours when available. |
| types | No | Place type labels when available. |
| rating | No | Average user rating when available. |
| status | No | Human-readable open/closed status when available. |
| website | No | Place website when available. |
| location | No | Place coordinates when available. |
| full_address | No | Full formatted address when available. |
| phone_number | No | Place phone number when available. |
| review_count | No | Total number of reviews when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully addresses transparency by listing returned fields, noting that additional upstream fields may appear, and disclosing the API token cost (4 tokens per successful call). It does not mention auth or rate limits, but the read-only nature is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise, front-loaded sentences. First states purpose, second gives input guidance, third lists output fields, fourth mentions token cost. No redundant or vague language.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 competently lists major fields and warns of extra fields. It covers token cost and input options. Minor omission: no mention of error handling or pagination (not applicable). Adequate for a simple detail fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter fully described (place_id examples, region/language formats). The description adds minimal semantic value beyond the schema, such as the context of obtaining place_id from search results, but it's already implied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get detailed information for a Google Maps place' with a specific verb and resource. It distinguishes itself from sibling tools like search, photos, and reviews by requiring a place_id from search results and providing detailed fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, notes the alternative business identifier form, and mentions optional region/language. It implicitly guides when to use (after search) but does not explicitly state when not to use or list alternatives, though siblings are distinct.
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.
Successful calls use 3 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from cursor_next on a previous response. | |
| region | No | Two-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data. | |
| language | No | Language code for results (for example en). | |
| place_id | Yes | Google Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66). |
Output Schema
| Name | Required | Description |
|---|---|---|
| place | No | Place metadata for the photo listing. |
| photos | No | Place photos. |
| cursor_next | No | Cursor for the next page when more results are available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses API token cost (3 tokens), pagination behavior, return structure (photos array, metadata, cursor_next), and mentions additional upstream fields. Could note error conditions or idempotency, but currently informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is moderately concise with 6 sentences, each contributing: purpose, required input, optional params, pagination, return details, cost. Well structured and front-loaded, though minor redundancy (e.g., place_id mentioned twice).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so description doesn't need to detail return values. It covers purpose, input, pagination, and cost. 'Additional upstream fields' is vague but acceptable. For a 4-param tool with output schema, this is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 (pass from previous response), place_id formats (business identifier form), and purpose of region/language. This enriches parameter understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get photos for a Google Maps place', specifying the exact resource and action. It distinguishes from sibling tools like place_details or place_reviews by focusing on photos, making selection unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: use place_id from search results, optional cursor/region/language, and pagination with cursor_next. Lacks explicit 'when not to use' alternatives, but context is sufficient given sibling tool names.
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.
Successful calls use 3 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from cursor_next on a previous response. | |
| region | No | Two-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data. | |
| sort_by | No | Review sort order: "Relevant" (default), "Lowest", "Highest", or "Newest". | |
| language | No | Language code for results (for example en). | |
| place_id | Yes | Google Maps place identifier (for example ChIJk_grnPDq9EcRE7gOH9gAPZA). Also accepts the business identifier form (for example 0x47f4eb87e91f866d:0x9629fabb993eb66). |
Output Schema
| Name | Required | Description |
|---|---|---|
| place | No | Place metadata for the reviewed location. |
| reviews | No | Place reviews. |
| cursor_next | No | Cursor for the next page when more results are available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It discloses token cost (3 API tokens), pagination behavior (cursor_next condition), and return structure (reviews array with specific fields). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with clear front-loading of purpose. A few sentences could be merged, but overall each sentence adds meaningful information. Not excessively verbose for the amount of detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description appropriately covers pagination, token cost, and key return fields. Could mention that it does not include place details (those are in place_details), but otherwise 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all parameters with descriptions. Description adds value by explaining the business identifier form for place_id, listing sort_by options, and clarifying cursor usage. Exceeds schema-only info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get reviews for a Google Maps place' and distinguishes from sibling tools like place_details and place_photos. However, it does not explicitly differentiate from review_details, which might overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides basic usage guidance: provide place_id from search results and use cursor for pagination. But lacks explicit when to use vs alternatives (e.g., review_details) and does not state 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.
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.
Successful calls use 1 API token.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| place_types | No | Supported Google Maps place type string values. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that successful calls use 1 API token and returns a string array, adding behavioral context beyond the null annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: first states purpose, second explains usage, third provides API token cost. No waste, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and existence of output schema, description covers purpose, usage, and cost. It could mention if the list is static or dynamic, but is otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. Description adds value by explaining that the output is a list of place_type values for use in other tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'List' and resource 'supported Google Maps place type values', and distinguishes from siblings like google-maps.search and google-maps.nearby_search by specifying its role as a source of filter values.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use the output: 'Use a value with place_type on google-maps.search or google-maps.nearby_search.' It lacks explicit when-not-to-use or alternatives, but the guidance is clear.
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.
Successful calls use 2 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| review_id | Yes | Google Maps review identifier. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rating | No | Star rating for the review. |
| review_id | No | Review identifier. |
| user_name | No | Reviewer display name when available. |
| review_text | No | Review body text. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It discloses that the tool returns one review object with specific fields, notes that additional upstream fields may appear, and specifies token usage: 'Successful calls use 2 API tokens.' This is transparent about what to expect, including potential extra fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: first states purpose, second gives guidance, third mentions token cost and extra fields. It is front-loaded, no wasted words, and each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (from context signals), the description need not detail return values but still mentions key fields and potential extras. It covers the input source, token cost, and expectations. For a single-parameter tool, this is complete and informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the parameter 'review_id' has a description in the schema). The description adds useful context: 'Provide review_id from a place reviews response', which tells the agent where to obtain the value. This adds value beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get details for one Google Maps review' which is a specific verb and resource. It clearly distinguishes from sibling tools like place_reviews which list reviews, and explains the input is a review_id from a place reviews response.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Provide review_id from a place reviews response', guiding the agent to use this after obtaining a review_id via another tool. It does not explicitly state when not to use it or name alternatives, but the context is clear and sufficient for a straightforward detail retrieval tool.
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.
Successful searches use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query for places (for example restaurants in Paris). | |
| cursor | No | Pagination cursor from cursor_next on a previous response. | |
| radius | No | Search radius in meters (default 1000). | |
| region | No | Two-character region code (for example us). On search endpoints this biases results by ccTLD. On place endpoints this selects regional place data. | |
| language | No | Language code for results (for example en). | |
| location | No | Optional latitude and longitude bias point (for example 40,-110). A location embedded in the query may override this. | |
| open_now | No | When true, return only places open for business at query time. | |
| max_price | No | Maximum price level (0–4, inclusive). | |
| min_price | No | Minimum price level (0–4, inclusive). | |
| place_type | No | Restrict results to a single Google Maps place type (for example restaurant). |
Output Schema
| Name | Required | Description |
|---|---|---|
| places | No | Matching places from the text search. Additional upstream fields may appear. |
| cursor_next | No | Cursor for the next page when more results are available. |
| cursor_previous | No | Cursor for the previous page when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden for disclosing behavioral traits. It mentions token cost (10 tokens per successful search), pagination cursor availability, and that additional upstream fields may appear. It omits rate limits, error handling, or behavior on empty results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: first sentence states purpose, then filter list, pagination, return fields, follow-up, cursor notes, upstream fields, and token cost. Every sentence adds useful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 10 parameters and an output schema, the description covers input, pagination, output fields, and cost. It explains how to use results with other endpoints. It does not mention sorting or ordering, but overall is fairly complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description's parameter summary adds marginal value. It lists the optional filters and mentions radius default (1000 meters), which is not explicit in the schema (schema shows default null). This adds some value but not significant.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches Google Maps by text query, which is a specific verb and resource. It lists return fields and follow-up actions, but does not explicitly differentiate from sibling tool nearby_search, which also searches by location-based criteria.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains optional filters, pagination via cursor, and how to use place_id for further endpoints. However, it lacks explicit guidance on when to use this tool versus alternatives like nearby_search, and does not mention prerequisites or constraints.
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. Successful lookups use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Partial search keywords or phrase. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | Normalized query echoed from the request. |
| suggestions | No | Suggested search phrases for the query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description includes token cost information ('5 API tokens') and the return structure (normalized query, suggestions). This adds useful behavioral context beyond the basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences: the first states the purpose, the second adds return details and cost. No superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (1 param, output schema exists), the description covers the return structure and token cost. It could mention that suggestions are for Google Search only, but overall it is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for the single parameter. The tool description does not add new semantic meaning beyond what the schema already provides, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('Google Search autocomplete suggestions'), and the context ('for a partial query'). It distinguishes itself from sibling tools like google-search.search or youtube.search_autocomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing autocomplete suggestions but does not explicitly state when to use or avoid this tool compared to alternatives like keyword_traffic_insights or search.
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).
Successful calls use 20 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Keyword suggestion filter: exact returns only suggestions that exactly match the seed keyword; all returns all suggestions (default). | all |
| intent | No | Filter by search intent: informational, navigational, commercial, or transactional. | |
| keyword | Yes | Seed keyword to get traffic insights and suggestions for. | |
| language | Yes | Language code for the search market (for example en). | |
| location | No | Optional country or region code for localized traffic (for example US). Omit for global keyword insights. | |
| min_search_volume | No | Minimum monthly search volume; only keywords at or above this threshold are returned. |
Output Schema
| Name | Required | Description |
|---|---|---|
| keyword_suggestions | No | Keyword suggestions with traffic and competition metrics. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses token cost (20 per successful call), return format (array with text, volume, competition, bids, trend), and parameter behavior. Does not specify if it's read-only, but the name and context imply a safe query. Sufficient for a read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured: starts with purpose, then return format, then parameters, then token cost. No redundancy, each sentence adds value. Could be slightly more concise by grouping optional params, but current length is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description covers return fields, all parameters, and token cost. Missing details like pagination or error handling, but for a keyword insights tool, this is adequate. No major gaps for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with param descriptions, so baseline is 3. Description adds practical examples (language 'en', location 'US'), clarifies default for mode ('all') and location (global), and explains intent filter values. This enhances understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Starts with clear verb+resource: 'Get Google keyword traffic insights and related keyword suggestions for a seed keyword.' Differentiates from sibling tools like google-search.url_traffic_insights and seo.keyword_metrics by specifying it returns suggestions with volume and competition data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Lists required and optional parameters with examples (e.g., language 'en', location 'US') but provides no explicit guidance on when to use this tool vs alternatives like seo.keyword_metrics or google-search.url_traffic_insights. Usage is implied but not contrasted.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| languages | No | Supported languages for the language request parameter. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that there are no request parameters, the output is an array with name and code, the token cost per successful call (5 tokens), and the mapping to upstream API. It does not mention rate limits or error conditions, but for a simple listing tool, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: four sentences, each serving a purpose. The first sentence states the core function, the second details the output, the third provides upstream mapping context, and the fourth notes the token cost. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (zero parameters, defined output schema), the description covers all essential aspects: purpose, output format, context of use (which tools consume this), and token cost. It is complete for the tool's role as a helper listing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema coverage is 100%, so the baseline is 4. The description adds value by explaining the output fields (language_name and language_code) and providing an example, which helps the agent understand the return format beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: list languages that can be used as the 'language' parameter in two specific sibling tools (google-search.keyword_traffic_insights and google-search.url_traffic_insights). It also specifies the output format (language_name and language_code) and mapping to the upstream provider API, leaving no ambiguity about its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says the languages are for use with two specific tools, guiding the agent on when to call this tool (before those tools). It does not mention when not to use it, but given the narrow scope, the guidance is clear and sufficient. It names the sibling tools that consume the output, which is helpful.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| locations | No | Supported countries for the location request parameter. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description fully compensates by stating that successful calls use 5 API tokens and returns an array with country_name and country_code. This covers cost, return format, and the non-destructive nature of the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences: purpose, return format, token cost. No fluff, front-loaded with the most important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 fully covers what it does, what it returns, and how it relates to sibling tools. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and schema coverage is 100%. The description confirms 'No request parameters,' adding value beyond the schema by clarifying the lack of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists countries and region codes for use as location parameter in google-search.keyword_traffic_insights and google-search.url_traffic_insights. It specifies the return format (array with country_name and country_code). No sibling tool has 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly mentions the two tools where the output can be used as location input. It states there are no request parameters. While it doesn't explicitly exclude other uses, the context is clear and no alternatives are needed.
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).
Successful calls use 20 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http or https URL to get traffic insights and suggestions for. | |
| intent | No | Filter by search intent: informational, navigational, commercial, or transactional. | |
| language | Yes | Language code for the search market (for example en). | |
| location | No | Optional country or region code for localized traffic (for example US). Omit for global URL keyword insights. | |
| min_search_volume | No | Minimum monthly search volume; only keywords at or above this threshold are returned. |
Output Schema
| Name | Required | Description |
|---|---|---|
| keyword_suggestions | No | Keyword suggestions with traffic and competition metrics. |
Tool Definition Quality
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 mentions successful calls use 20 tokens, which is useful cost information, but does not disclose other behavioral aspects like idempotency, data freshness, or error handling. The description implies 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and efficient: two sentences for purpose and output, one for parameters. It is front-loaded with the core action and uses no superfluous words, earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 need not detail return values, but it lists the fields. It covers all parameters with examples and defaults. It lacks information on error handling or rate limits, but for a tool with moderate complexity and high schema coverage, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all parameters with descriptions (100% coverage), establishing a baseline of 3. The description adds value by providing concrete examples (e.g., language 'en', location 'US'), clarifying defaults (min_search_volume 0), and listing possible intent values (informational, navigational, commercial, transactional).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Google keyword traffic insights and keyword suggestions for a given URL, specifying the action, resource, and scope. It distinguishes itself from sibling tools like google-search.keyword_traffic_insights by focusing on URL input.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists required and optional parameters with examples, and explains default behavior for location. However, it does not explicitly state when to use this tool over alternatives or provide exclusion criteria, leaving usage context implied.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| cat | No | Category and subcategory names accepted by the category field. |
| msg | No | Status or informational message from the upstream API (often empty). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description carries full burden. It mentions API token cost (5 tokens) and return structure (cat array and msg), but does not explicitly state it is read-only or that no parameters are required. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, front-loaded with purpose, no unnecessary words. Highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with an output schema, the description fully explains the purpose, usage context, return structure, and token cost. No gaps detected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist (schema coverage 100%), so the description adds no param info. Baseline 4; the description is not penalized but also does not earn extra credit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Google Trends category and subcategory labels for use in other tools, with a specific verb 'List all'. It distinguishes itself from siblings (e.g., interest_over_time) by being the only tool for categories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use before interest-over-time or interest-by-region calls when filtering by category. However, it does not mention when not to use or alternatives, but the guidance is clear and context-specific.
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.
Successful calls use 40 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Range end in datetime-with-timezone form. Defaults to now. | |
| gprop | No | Google property filter (for example images, news, youtube, froogle). Defaults to all. | |
| start | Yes | Range start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). | |
| region | No | Region within country. Requires country when set. | |
| country | No | Country name for geo filtering. Defaults to global. | |
| category | No | Trends category or subcategory. Defaults to all. | |
| keywords | Yes | Up to five keywords to compare. | |
| resolution | No | Geographic resolution: COUNTRY (default) or REGION. | COUNTRY |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return format, token cost (40 tokens), and parameter defaults, but does not discuss error behavior, rate limits, or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of 5 sentences, front-loading the main action and then efficiently covering parameter details. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters fully described in the schema and an output schema presumed to exist, the description covers return format and token cost. It is nearly complete for an agent to use correctly, though missing error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining parameter defaults, the requirement for datetime-with-timezone format, and the token cost, going beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Fetch Google Trends interest-by-region breakdowns for one to five keywords.' This is a specific verb+resource that clearly distinguishes 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on parameter requirements (start required, end defaults, country defaults, etc.) but does not explicitly state when to use this tool vs alternatives like interest_over_time.
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.
Successful calls use 40 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Range end in datetime-with-timezone form. Defaults to now. | |
| gprop | No | Google property filter (for example images, news, youtube, froogle). Defaults to all. | |
| start | Yes | Range start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). | |
| region | No | Region within country. Requires country when set. | |
| country | No | Country name for geo filtering. Defaults to global. | |
| category | No | Trends category or subcategory. Defaults to all. | |
| keywords | Yes | Up to five keywords to compare. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses return format (JSON with keyword keys, score 0-100), granularity dependency on date range, parameter defaults, and token cost (40). It does not explicitly state idempotency but 'fetch' implies read-only. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of three sentences plus token cost note. Front-loaded with main action. Every sentence adds value with no redundancy. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, required 2, and an output schema, the description covers key aspects: return format, granularity, defaults, token cost. It omits explicit detail on the output structure beyond top-level keys, but output schema compensates. Overall, sufficient for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all 7 parameters described), so baseline is 3. Description adds value beyond schema: explains granularity, token cost, and scope of return values. For example, 'Granularity depends on the requested date range' is not in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool fetches Google Trends interest-over-time series for one to five keywords. The verb 'Fetch' and resource 'interest-over-time series' are specific. Sibling tools like interest_by_region and related_queries are distinct, so purpose is well-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 siblings. It provides constraints (up to 5 keywords, date format) but does not mention alternatives or exclusion cases. The agent must infer usage from the description alone.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| geo | No | Geographic options keyed by country name. |
| msg | No | Status or informational message (often empty). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, but the description discloses the tool is read-only (listing) and specifies a token cost of 5 API tokens. This adds behavioral context beyond the empty annotations, though it could mention non-destructive nature more explicitly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with no wasted words: purpose, return details, usage guidance, and token cost. Front-loaded with the main action, each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero input parameters and an output schema, the description fully explains what the tool returns and when to use it. Token cost is included, making it complete for a simple lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist (schema coverage 100%), so the description need not add param info. However, it still adds value by describing the return object structure (countries map with label and regions), which is relevant context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists countries and subregions for use in other Google Trends tools. It specifies the return structure (geo.countries with label and regions array) and distinguishes itself from siblings by being the geography reference tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use: before interest-over-time or interest-by-region calls when filtering by geography. Also suggests pairing with google-trends.categories for category filtering, providing clear context with siblings.
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.
Successful calls use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | Keyword or phrase to get suggestions for. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | No | Suggested topics and entities for the keyword. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. Discloses API token cost (10 tokens) but does not explicitly state read‑only nature or error handling. Sufficient for a simple lookup but with room for improvement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences covering purpose, return data, usage guidance, and cost. No fluff, every sentence adds value. Front‑loaded with the key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers what the tool does, what it returns, when to use it, and cost. Does not mention result limits or error cases, but for a straightforward suggestions tool with an output schema, this is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% but description adds value by clarifying it expects a 'single keyword', complementing the schema's 'keyword or phrase'. Also describes output structure (mid, title, type) beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get Google Trends suggestions') and the resource ('a single keyword'), and distinguishes from sibling tools like interest_by_region and interest_over_time by specifying it's for keyword refinement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to use this tool before interest-over-time, interest-by-region, or related-queries calls, providing clear context and sequencing.
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 by id.
Use this after meta-tools.list_all when you need parameter names, defaults, response fields, examples, and token cost before calling a tool. This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
| capability_id | Yes | Capability id to describe (for example website-screenshot). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tool | No | Full capability detail including fields, examples, and bindings. |
| capability_id | No | Described capability id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that the call is free (0 tokens) and what it returns, adding behavioral context beyond a simple 'describe'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose, second gives usage context. No unnecessary words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 explains what the tool returns (parameter names, defaults, response fields, examples, token cost) and that it's free. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description. The tool description adds minimal extra meaning beyond the schema, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Describe a single Vee3 capability by id.' It specifies what information is provided (parameter names, defaults, response fields, examples, token cost), distinguishing it from meta-tools.list_all.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage guidance: 'Use this after meta-tools.list_all when you need parameter names, defaults, response fields, examples, and token cost before calling a tool. This call is free (0 tokens).' This tells when and why to use it.
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 and their REST bindings.
Use this when you need to discover which tools exist, what they are called in MCP, and how much each successful call costs in API tokens. This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| tools | No | Live tool summaries for every capability exposed to agents. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the full burden. It discloses that the tool lists live tools and their REST bindings, and that it's free (0 tokens). This is transparent for a read-only discovery tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences that front-load the action and provide necessary context. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 but not shown), the description fully explains the output scope (list of tools, bindings, costs). The free cost is also noted, making it complete for a listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is effectively 100%. The description adds value by explaining what the output contains (REST bindings and token costs) beyond the schema, which would not capture that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists all live Vee3 agent tools with REST bindings. The verb 'list' and the specific resource 'tools' make it distinct from sibling tools, which are specific domain tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use: to discover existing tools, MCP names, and costs. It also notes the call is free. However, it does not mention when to avoid using it or suggest alternatives, though for a meta listing tool this 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_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. This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| groups | No | Capability groups with live tool counts. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that the call is free (0 tokens), providing cost transparency beyond the tool's basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose, second gives usage guidance and cost info. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and presence of output schema, the description fully informs the agent with purpose, usage, and cost.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so parameter semantics are not needed; baseline 4 applies as schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all Vee3 capability groups, distinguishing from sibling tools that list tools within a group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit advice to use before listing tools in a specific group, though does not mention alternatives like list_group_tools.
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 the same tool summary shape as meta-tools.list_all, filtered to one group. This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
| group_id | Yes | Group id to list tools for (for example website-screenshots). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tools | No | Live tool summaries in the requested group. |
| group_id | No | Requested group id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description adds transparency by stating it returns same shape as list_all, filtered, and is free. Does not mention auth requirements or side effects, but as a listing tool, risks are low.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose and usage, no filler. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of output schema and 100% schema coverage, the description is complete enough. It covers purpose, parameter source, output shape, and cost. Could mention error handling but not necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description. Description adds value by guiding to get group_id from list_groups and providing an example, beyond the schema's own description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists live tools for a single capability group, uses group_id, and distinguishes from siblings like list_all and list_groups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states source of group_id from list_groups, notes return shape similarity to list_all, and mentions zero token cost. Does not explicitly exclude alternatives but provides clear usage context.
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. This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| tokens_used | No | Tokens consumed in the current billing period. |
| billing_plan | No | Current billing plan id (free, starter, pro, scale). |
| tokens_remaining | No | Tokens left before quota is exhausted. |
| billing_period_end | No | ISO 8601 end of the current billing period. |
| billing_period_start | No | ISO 8601 start of the current billing period. |
| monthly_token_allowance | No | Total tokens included in the current billing period. |
| billing_period_resets_at | No | ISO 8601 timestamp when the token allowance resets (same as period end). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the call is free, lists return fields, and implies read-only behavior. It does not mention rate limits or error handling beyond the 402 hint, but overall transparency is good.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with purpose, then usage guidance and details. Every sentence earns its place with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and the presence of an output schema, the description covers purpose, usage timing, and return details. It is complete and sufficient for a simple balance check.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and the schema coverage is 100%. The description adds value by explaining what the call returns, which goes beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the API token balance for the authenticated account, listing specific return fields (tokens used, remaining, etc.). It uses a specific verb-resource combination and is distinct from sibling tools, which are unrelated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using the tool before expensive calls or upon receiving a 402 error, providing clear when-to-use guidance. It also notes the call is free. No when-not-to-use or alternatives are mentioned, but the context is sufficient.
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.
Successful lookups use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| celebrity_slug | Yes | Celebrity slug (for example morgan-freeman). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tv | No | TV credits with title, slug, year, and score. |
| name | No | Celebrity name. |
| slug | No | Celebrity slug. |
| movies | No | Movie credits with title, slug, year, and score. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses token cost and lists returned fields, which is positive. However, it does not detail potential errors, rate limits, or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the purpose and usage, then list return data and token cost. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description adequately covers the tool's purpose, input, and token usage. It is complete for a straightforward lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 from the schema without adding new semantics. It adds minimal value beyond the schema for the single parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Look up' and resource 'celebrity on Rotten Tomatoes', clearly distinguishing it from other rotten-tomatoes tools that handle movies, TV shows, or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an example slug and states the input format, but does not explicitly mention when to use this tool versus alternatives like rotten-tomatoes.search. Context is clear but lacks exclusions.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| movie_slug | Yes | Movie slug (for example shawshank-redemption). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cast | No | Cast and crew credits for the movie. |
| slug | No | Movie slug. |
Tool Definition Quality
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 (names, roles, character names, profile links) and API token cost (5 tokens per success), which are useful behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences: purpose, output details, cost. No waste, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 required param, output schema exists), the description covers how to call, expected output, and cost. Nothing missing for an agent to correctly invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description of 'movie_slug'. The tool description repeats the example but adds no new meaning beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List cast and crew credits for a movie by slug', which is a specific verb-resource combination. It distinguishes from siblings like movie_details or celebrity_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an example slug (shawshank-redemption) but does not explicitly state when to use this tool vs alternatives like tv_show_cast_and_crew or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
Successful lookups use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| movie_slug | Yes | Movie slug (for example shawshank-redemption). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cast | No | Featured cast with name, slug, and imageUrl. |
| slug | No | Movie slug. |
| year | No | Release year. |
| title | No | Movie title. |
| tomatometer | No | Critic Tomatometer score and metadata. |
| popcornmeter | No | Audience Popcornmeter score and metadata. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lists the returned fields and mentions a token cost of 5 API tokens, suggesting rate limiting. However, it does not explicitly state that the tool is read-only or non-destructive, and no authentication requirements or error handling are noted. Given no annotations, the description reasonably covers behavior but lacks full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundant information. The description is front-loaded with the core purpose, followed by a concise list of return values and token cost. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 input, output (examples of what is returned), and token usage. It is complete for a straightforward lookup tool, with no obvious gaps given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the 'movie_slug' parameter with an example. The description repeats this example without adding new semantic meaning. Since schema coverage is 100%, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Look up' and specifies the resource 'a movie on Rotten Tomatoes' with required slug input. It includes an example slug ('shawshank-redemption'), making it easy to understand. It distinguishes from sibling tools like 'search' and 'movie_reviews' by focusing on comprehensive details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required parameter (slug) and gives an example, but it does not explicitly state when to use this tool over alternatives like 'movie_cast_and_crew' or 'movie_reviews'. While the list of returned fields implies broad information, no direct guidance on selection 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.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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of review pages to return (1–50, default 20). | |
| cursor | No | Pagination cursor from a previous response pageInfo.endCursor field. | |
| movie_slug | Yes | Movie slug (for example shawshank-redemption). | |
| review_type | No | Review filter. Use critic for critic reviews; omit for the default set. |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | Movie slug. |
| type | No | Review set type (for example critic). |
| reviews | No | Review entries with quote, sentiment, critic, and publication. |
| pageInfo | No | Pagination metadata for review listings. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses token cost (5 API tokens per successful call) and pagination behavior, but does not mention authentication requirements, error handling, or data freshness. Still, it provides substantial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with purpose, then covers returns, pagination, filter, and token cost efficiently. Every sentence is informative and necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations but an output schema, the description covers key aspects: input slug, return fields, pagination, filter, and cost. It lacks mention of prerequisites (e.g., valid slug) or error scenarios, but is generally complete for a listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds significant value: example slug 'shawshank-redemption', clarifies cursor comes from pageInfo.endCursor, and explains review_type='critic' usage. This goes beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it loads reviews for a movie by slug, specifying the returned data (quotes, sentiment, publication, critic details, pageInfo). The verb 'load' plus 'reviews' and the example slug make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains pagination (cursor from pageInfo.endCursor) and optional filter (review_type='critic'), but does not explicitly differentiate when to use this tool over siblings like 'movie_details' or 'movie_cast_and_crew'. Usage is implied rather than stated with when/when-not/alternatives.
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.
Successful searches use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of search results to return (1–50, default 20). | |
| query | Yes | Search query for movies, TV series, or celebrities. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | Echo of the search query. |
| movies | No | Search hits (movies, TV series, or celebrities). Each entry includes type, slug, title, url, posterUrl, score, and cast when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses API token consumption (10 per successful search) and specifies return fields. It does not mention rate limits, authentication, or error handling, but adequately covers key behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, front-loaded with purpose, no unnecessary words. Efficiently communicates core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 sibling tools for further details, the description sufficiently covers what the tool returns. It lacks discussion of pagination or no-result behavior, but overall is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and describes both parameters well. The description adds minimal value beyond stating 'by title or name' for query and mentioning token cost. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 lists specific return fields (slugs, scores, poster URLs, etc.). It effectively distinguishes from sibling tools that provide details on known items.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for initial discovery (returning slugs for use in other tools), but does not explicitly state when to use it versus alternatives. No exclusions or when-not-to-use 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_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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| tv_show_slug | Yes | TV series slug (for example breaking-bad). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cast | No | Cast and crew credits for the series. |
| slug | No | TV series slug. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description adds token cost and lists return fields (names, roles, character names). Lacks details on pagination, error handling, or data freshness, but provides basic behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a token cost note, front-loaded with the main action. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema so return values are covered; description lists key fields. Mentions token usage. Lacks error handling details for invalid slugs, but otherwise sufficient for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'tv_show_slug' is described in the schema with an example. The tool description reinforces the example but adds minimal extra semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it lists cast and crew for a TV series using a slug, with specific examples. It clearly distinguishes from sibling tools like rotten-tomatoes.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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for TV series cast/crew but does not explicitly state when to use this tool over alternatives like rotten-tomatoes.movie_cast_and_crew. No when-not or alternative mentions.
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.
Successful lookups use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| tv_show_slug | Yes | TV series slug (for example breaking-bad). |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | TV series slug. |
| year | No | Years on air (for example 2008 - 2013). |
| title | No | Series title. |
| tomatometer | No | Average Tomatometer score and metadata. |
| popcornmeter | No | Average Popcornmeter score and metadata. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. It discloses API token cost ('5 API tokens') but does not mention idempotency, mutability, or side effects. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose and parameter, second lists returns and cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one parameter, output schema present, and clear return fields, the description is complete for this simple lookup tool. Covers all necessary context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; description adds an example ('breaking-bad') and clarifies 'by slug'. Adds marginal value beyond schema but not substantial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'look up a TV series on Rotten Tomatoes by slug', specifying a distinct verb and resource. It lists detailed return fields, differentiating from sibling tools like movie_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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context for when to use (by slug) but does not explicitly mention when not to use or alternatives. Implicitly distinct from sibling tools.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| tv_show_slug | Yes | TV series slug (for example breaking-bad). | |
| season_number | Yes | Season number as one or two digits (for example 1 or 01). | |
| episode_number | Yes | Episode number as one or two digits (for example 1 or 01). |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | TV series slug. |
| title | No | Episode title. |
| season | No | Season number. |
| episode | No | Episode number. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses returned fields and token cost (5 API tokens). No mention of rate limits or idempotency, but adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, return fields, cost. No unnecessary words. Well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (not shown but indicated), the description adequately covers inputs, key return fields, and cost. Missing mention of error handling, but enough for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and descriptions are already detailed. The description reiterates the parameters without adding new semantic meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Load a single episode' using a specific verb and resource. It distinguishes from sibling tools that load season details or cast/crew.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (needs slug, season, episode) but does not explicitly state when not to use or suggest alternatives. Still, 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.
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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| tv_show_slug | Yes | TV series slug (for example breaking-bad). | |
| season_number | Yes | Season number as one or two digits (for example 1 or 01). |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | TV series slug. |
| season | No | Season identifier. |
| episodes | No | Episodes in the season when listed. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the API token cost (5 tokens per successful call) and notes that Tomatometer scores are returned 'when available'. However, it does not mention rate limits, authentication, or any 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding value: purpose, return fields, and token cost. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description does not need to detail return values. It covers purpose, parameters, cost, and return content adequately. Could mention read-only nature or error conditions, but overall complete for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not add additional meaning beyond what is in the input schema for the two parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it loads season-level details for a TV series by slug and season number, and lists what it returns. It is specific about the resource and action, but does not explicitly differentiate from sibling tools like tv_show_details or tv_show_episode.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage example (by slug and season number) but does not indicate when to use this tool versus alternatives (e.g., tv_show_details for show-level info). No exclusions or prerequisites are 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_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.
Successful calls use 5 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of review pages to return (1–50, default 20). | |
| cursor | No | Pagination cursor from a previous response pageInfo.endCursor field. | |
| review_type | No | Review filter. Use critic for critic reviews; omit for the default set. | |
| tv_show_slug | Yes | TV series slug (for example breaking-bad). | |
| season_number | Yes | Season number as one or two digits (for example 1 or 01). |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | TV series slug. |
| season | No | Season number. |
| reviews | No | Review entries with quote, sentiment, critic, and publication. |
| pageInfo | No | Pagination metadata for review listings. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It states 'Load reviews' (read operation) and the token cost (5 API tokens per success). It describes output fields and pagination. Although it omits error behavior, the read-only nature and cost information are sufficient for an agent to use the tool safely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: first states core purpose, second lists output and pagination, third notes token cost. It is front-loaded with the action and resource, and every sentence adds essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, pagination support, optional filter) and the presence of an output schema, the description covers the main use case, pagination mechanics, and parameter options. It does not cover error scenarios (e.g., invalid slug), but the core functionality is well-documented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 5 parameters have descriptions in the input schema (100% coverage). The description adds value by explaining pagination with cursor and the effect of the 'type' parameter for filtering critic reviews. It also notes the default limit, which is not fully explicit in the schema (schema says default 20, description reinforces). This goes beyond what the schema alone provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads reviews for a TV season using series slug and season number. It enumerates the output fields (review quotes, sentiment, publication, critic details, pagination info), making the purpose unambiguous. This distinctively separates it from sibling tools like 'movie_reviews' and 'tv_show_details'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use (for TV season reviews) and provides pagination instructions using cursor. It mentions the optional 'type' parameter for critic-only reviews and the token cost per successful call. While it does not explicitly list alternatives, the context of sibling tools makes the usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.backlinksAInspect
Find backlinks pointing to a website URL.
Returns an overview (domain rating, URL rating, backlink counts, referring domains, dofollow breakdown) and a list of individual backlinks with anchor text, source and target URLs, domain rating, and redirect chains.
Successful calls use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public website URL to check for backlinks. | |
| include_subdomains | No | When true (default), include backlinks to the domain and its subdomains. When false, analyze only the exact URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| overview | No | Aggregate backlink statistics for the target. |
| backlinks | No | Individual backlink records with anchor text and source URLs. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses token cost (10 API tokens) and outlines return content (overview and backlink list). However, no mention of authentication requirements, rate limits, error handling, or response pagination—despite no annotations provided to cover these.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with the primary purpose, followed by return structure and token cost. No extraneous content; every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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), the description adequately summarizes typical return fields. However, it lacks context on error conditions, authorization, or performance characteristics, which would be helpful for an API-based tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (url and include_subdomains) with clear descriptions. The tool description adds no additional semantic detail beyond what is in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool finds backlinks for a given URL, distinguishing it from siblings like SEO metrics tools. The verb 'find' and resource 'backlinks' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Does not provide explicit guidance on when to use this tool versus other SEO tools (e.g., seo.url_metrics), nor does it mention prerequisites or exclusions. The context is implied but not directive.
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.
Successful calls use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public website URL to analyze (for example https://example.com). |
Output Schema
| Name | Required | Description |
|---|---|---|
| ahRank | No | Global website rank (lower is stronger). |
| domainRating | No | Domain authority score from 0 to 100. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses token cost ('10 API tokens') but does not explicitly state side effects or authorization needs, though the tool is clearly 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with key information, and no wasted words. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param, output schema present), the description covers purpose, outputs, and cost. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'url' is fully described in the schema (100% coverage). The description adds minimal extra meaning beyond what the schema provides, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets Ahrefs domain authority signals for a URL, listing specific outputs (domainRating and ahRank). It distinguishes among siblings like seo.backlinks or seo.keyword_metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context: 'useful for comparing site strength and prioritizing outreach or competitive research.' It implies when to use but does not explicitly mention when not to use or name alternatives, though siblings are distinct.
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).
This call is free (0 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| country_codes | No | Supported ISO country codes for keyword metrics. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description adds value by stating the output format (array of 2-letter codes) and that the call is free, which helps the agent know it's low cost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then output format and cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 fully covers the tool's behavior: listing country codes and noting it's free. No missing information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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%. Baseline is 4 as per guidelines, and the description provides no additional parameter info (none needed).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists country codes for use with seo.keyword_metrics, specifying 2-letter ISO codes. It distinguishes itself from other tools by its specific purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells when to use (for getting valid country codes for seo.keyword_metrics) and notes the call is free. No alternatives or exclusions, but not needed for this 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.
Successful calls use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | 2-letter ISO country code for the target market (default us). Use seo.country_codes for supported values. | us |
| keyword | Yes | Search keyword or phrase to analyze. |
Output Schema
| Name | Required | Description |
|---|---|---|
| cpc | No | Estimated cost per click in paid search. |
| clicks | No | Estimated monthly clicks from organic search. |
| keyword | No | Analyzed keyword. |
| difficulty | No | Keyword difficulty score (higher is harder to rank). |
| searchVolume | No | Estimated monthly search volume in the selected country. |
| trafficPotential | No | Estimated traffic potential if ranking well. |
| globalSearchVolume | No | Estimated global monthly search volume. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses token cost but lacks details on authentication, rate limits, or side effects. The read-only nature is implied but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, return fields, token cost. No redundancy, front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity and presence of output schema, the description covers purpose, return fields, and cost. Could benefit from mentioning sibling tools for context, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not add meaningful parameter information beyond what the schema provides, such as the default country or max lengths.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets SEO metrics for a keyword in a specific country, listing specific return fields. It distinguishes itself from siblings like seo.backlinks and seo.url_metrics by focusing on keyword-level metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for keyword analysis in a country context and mentions token cost, but does not explicitly state when to use this tool versus siblings or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.url_metricsBInspect
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
Successful calls use 10 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public page URL to analyze. |
Output Schema
| Name | Required | Description |
|---|---|---|
| page | No | Metrics for the requested page URL. |
| domain | No | Metrics for the parent domain. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it is a read operation ('Get') and lists the returned metrics for page and domain sections, as well as the token cost. However, it does not clarify potential failure modes, data freshness, rate limits, or any side effects. Given no annotations, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at about 80 words, front-loaded with the purpose, and uses a clear structure with bullet points for return sections. It efficiently conveys needed information without unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no annotations, the description covers the purpose, return structure, and token cost. It reasonably addresses what an agent needs to know to use it, though it could improve by noting any constraints on URL validity or data update frequency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'url' is already described in the input schema as 'Public page URL to analyze.' The description does not add additional semantics such as format requirements, allowed protocols, or expected behavior for invalid URLs. With 100% schema coverage, the baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves detailed Ahrefs SEO metrics for a specific URL, specifying the data source and target. However, it does not explicitly distinguish from sibling tools like seo.basic_metrics or seo.backlinks, leaving ambiguity about when to use this tool over others.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, suitable contexts, or exclude scenarios. The only usage-related note is the token cost (10 API tokens), but this is insufficient for decision-making.
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. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of replies to return (max 40). | |
| cursor | No | Pagination cursor from a previous response. | |
| video_id | Yes | TikTok video id. | |
| comment_id | Yes | TikTok comment id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is straightforward but does not reveal behaviors beyond what is stated. It mentions cost (2 tokens) and pagination, but lacks details like whether the operation is read-only, or what the response structure looks like. No annotations are present to supplement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences that are front-loaded and efficient: purpose, requirements, pagination, cost. Every sentence adds unique value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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's focus on input and pagination is sufficient. It covers the essential aspects of a paginated reply listing tool. Minor omission: not specifying that the cursor should be taken from a specific field (e.g., 'next_cursor').
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters well. The description adds practical context for the cursor parameter (pass from a previous response) but does not significantly extend meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List replies to a TikTok comment', which is a specific verb and resource. It distinguishes this tool from siblings like tiktok.video_comments which lists comments on a video.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly mentions required parameters (video_id, comment_id) and explains pagination using a cursor. However, it does not provide explicit guidance on when to use this versus alternatives, such as after retrieving comments via tiktok.video_comments.
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'. Costs 10 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| music_id | No | TikTok music id. | |
| music_url | No | TikTok music page URL. | |
| return_mode | No | How 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
| Name | Required | Description |
|---|---|---|
| play | No | Signed download URL for the music file. |
| download_id | No | Unique download identifier, prefix td_. |
| return_mode | No | Echo of the requested delivery mode. |
| content_type | No | MIME type of the music file. |
| file_size_bytes | No | Music file size in bytes. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses token cost (10 tokens), return type (signed download URL), and behavior (preferring return_mode 'url'). This is sufficient for a read-like download tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. The first sentence states purpose and key constraint, the second adds token cost and preference. Highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (known from context), the description does not need to explain return values. It covers purpose, constraints, token cost, and guidance on return_mode. It is complete for a simple three-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for each parameter. The description adds value by explicitly stating mutual exclusivity of music_id and music_url, and advising to prefer return_mode 'url', which is not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Download' and resource 'TikTok music track'. It distinguishes from sibling tools like tiktok.download_music_from_video and tiktok.download_video by specifying the exact resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage guidance: provide either music_id or music_url, not both, and prefer return_mode 'url'. It does not explicitly state when not to use or list alternatives, but the context of sibling tools helps.
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'. Costs 10 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| video_id | No | TikTok video id. | |
| video_url | No | TikTok video URL. | |
| return_mode | No | How 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
| Name | Required | Description |
|---|---|---|
| music_info | No | Music metadata with a signed download URL. |
| download_id | No | Unique download identifier, prefix td_. |
| return_mode | No | Echo of the requested delivery mode. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the return type ('signed download URL') and token cost, but omits details on error handling, idempotency, or authorization requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, constraint, and return/cost. Every sentence earns its place, front-loaded with key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given three parameters and an output schema, the description covers purpose, constraints, return behavior, and cost. Missing details like error scenarios or exact behavior when both IDs provided, but sufficient for a download tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by specifying the mutual exclusivity of video_id/video_url and preferring 'url' return_mode, which are not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Download music from a TikTok video'), using a strong verb and resource. It differentiates from sibling tools like tiktok.download_video and tiktok.download_music by specifying 'music from a video'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage constraints ('Provide either video_id or video_url, not both') and a recommendation ('Prefer return_mode 'url''). However, it lacks direct comparison with 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.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'. Costs 10 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| video_id | No | TikTok video id. | |
| video_url | No | TikTok video URL. | |
| return_mode | No | How 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_hdplay | No | When true, also download the high-definition hdplay variant. Defaults to false. |
Output Schema
| Name | Required | Description |
|---|---|---|
| play | No | Signed download URL for the standard-quality video. |
| hdplay | No | Signed download URL for the high-definition video when include_hdplay is true. |
| download_id | No | Unique download identifier, prefix td_. |
| return_mode | No | Echo of the requested delivery mode. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description discloses return type, HD behavior, and cost. Lacks rate limits or error handling but covers key behavioral aspects for a download tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise and front-loaded, no redundant sentences. Could use slight restructuring (e.g., bullet points) but effective as is.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Completes all needed context: input selection, return mode, HD, cost. Output schema handles return details, so no gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by clarifying mutual exclusivity of video_id/video_url, explaining include_hdplay as HD variant, and detailing return_mode options ('url', 'file', 'both' with base64 condition).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it downloads a TikTok video, specifies input options (video_id or video_url) and output (signed download URL), and distinguishes from sibling tools like tiktok.download_music.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: 'Provide either video_id or video_url, not both', recommends preferring return_mode 'url', and mentions cost. Could mention alternatives like video_details for metadata.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.for_you_feedAInspect
Fetch for-you feed videos for a region. Requires region. Costs 4 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of videos to return (max 20). | |
| region | Yes | Region code (for example us, jp, kr). |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions a cost of 4 tokens, which is helpful, but lacks details on rate limits, error handling for invalid regions, or whether the tool is read-only. This is minimal transparency for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at two sentences, front-loading the action and requirement. Every word adds value, with no redundancy or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (two parameters, no nested objects) and the presence of an output schema, the description adequately covers the core requirement (region) and cost. It is complete enough for an agent to invoke the tool correctly, though a brief note on the return type could enhance it further.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions for both parameters (count and region) are clear and cover all details. The description adds no additional semantic meaning beyond the schema, and with 100% schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch for-you feed videos') and the required resource ('for a region'). It distinguishes from sibling TikTok tools like search_videos or user_videos by specifying the 'for-you feed' context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates the requirement of a region and the cost, implying basic usage conditions. However, it does not provide guidance on when to use this tool versus alternatives (e.g., search_videos for specific queries) or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.music_detailsAInspect
Look up metadata for a TikTok music track. Provide either music_id or music_url, not both. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| music_id | No | TikTok music id. | |
| music_url | No | TikTok music page URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
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 'Costs 2 tokens' but does not disclose other behavioral aspects like idempotency, rate limits, or side effects. For a simple read-only lookup, this is adequate but not exemplary.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each serving a purpose: stating the function and providing usage constraints. No unnecessary words, front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (lookup by two parameters) and has an output schema to define return values. The description covers the essential usage constraints and cost, making it complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by specifying the mutual exclusivity of 'music_id' and 'music_url', which is not captured in the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Look up metadata for a TikTok music track,' using a specific verb and resource. It distinguishes from sibling tools like 'download_music' and 'download_music_from_video' which focus on downloading rather than metadata lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the constraint 'Provide either music_id or music_url, not both,' and mentions a token cost. Although it does not discuss when to use alternatives, the sibling tools are distinct enough that confusion is unlikely.
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. Costs 3 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| cursor | No | Pagination cursor from a previous response. | |
| music_id | Yes | TikTok music id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds token cost and pagination behavior. However, it does not disclose potential errors, read-only nature, or any side effects beyond listing. Adequate but not rich for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, each serving a distinct purpose: purpose statement, required parameter, pagination hint, and token cost. No unnecessary words. Front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 an output schema, the description covers the core functionality, required parameter, pagination, and cost. However, it leaves out details like potential error scenarios or the expected format of music_id, which could be helpful for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 repeats that music_id is required and cursor is for pagination, but adds no new semantic detail beyond what the schema already provides. No additional insight on parameter constraints or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List videos that use a TikTok music track', specifying the verb, resource, and scope. It distinguishes from siblings like tiktok.music_details (which describes the track itself) and tiktok.search_videos (general search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides essential usage guidance: 'Requires music_id' and cursor for pagination. Does not explicitly mention when not to use or contrast with siblings, but the requirement and pagination hint are clear. Lacks exclusionary guidance.
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. Costs 5 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| query | Yes | Search keywords. | |
| cursor | No | Pagination cursor from a previous response. | |
| region | No | Region code (for example us, jp, kr). |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the cost (5 tokens) and pagination behavior via cursor. However, it does not cover authentication needs, rate limits, or any potential side effects beyond indicating it is a search operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of three concise sentences (34 words total), each providing essential information: purpose, requirement, pagination, and cost. No extraneous text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 core behavior and pagination. It does not mention the region parameter, but the schema handles it. Overall, sufficient for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions already present. The description adds value by confirming the query is required and explaining the cursor's role in pagination, improving understanding beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches TikTok photo posts by keyword, distinguishing it from siblings like search_videos (video posts) and search_users (users). The verb 'Search' and resource 'TikTok photo posts' are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies that a query is required and explains how to use the cursor parameter for pagination. It provides clear context for use but does not explicitly mention when not to use this tool or suggest alternatives, though sibling differentiation is inherent.
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. Costs 5 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| query | Yes | Search keywords. | |
| cursor | No | Pagination cursor from a previous response. | |
| follower_count | No | Follower count filter: 0-4. | 0 |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
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 the token cost (5 tokens) and pagination behavior via cursor. However, it does not mention authentication requirements, rate limits, or whether the tool is read-only (presumably it is, since it's a search). The description adds some transparency but could be more thorough given the lack of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of three short sentences. It front-loads the purpose, then adds required usage and cost. Every sentence earns its place without any fluff or redundancy. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters (1 required) and an output schema, the description covers the essential operation (search by keyword, pagination, cost). However, it omits mention of the optional 'follower_count' filter, which might be important for nuanced searches. The output schema handles return values, so that is acceptable. Overall, it's fairly complete but could be slightly more thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining that 'cursor' comes from a previous response for pagination. However, it does not elaborate on other parameters like 'count' or 'follower_count', which are already described in the schema. The additional context for cursor is helpful but not enough to warrant a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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', using a specific verb ('Search') and resource ('TikTok users'). This effectively distinguishes it from sibling tools like tiktok.search_videos (searches videos) and tiktok.user_info (gets info for a specific user). The name itself also 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required query and pagination through cursor, which is useful. However, it does not provide guidance on when to use this tool versus other user-related tools (e.g., tiktok.user_followers, tiktok.user_info) or when not to use it. No alternatives are explicitly mentioned, so usage context is adequate but not comprehensive.
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. Costs 5 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| query | Yes | Search keywords. | |
| cursor | No | Pagination cursor from a previous response. | |
| region | No | Region code (for example us, jp, kr). | |
| sort_by | No | Sort order: relevance, like_count, or date_posted. | relevance |
| publish_time | No | Publish time filter: 0, 1, 7, 30, 90, or 180. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description discloses behavioral traits: pagination mechanism and cost (5 tokens). However, it does not mention rate limits, idempotency, or authentication requirements. With no annotations, the description carries the full burden and is partially adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: three sentences with no wasted words. It front-loads the essential purpose and follows with key usage details. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 does not need to explain return values. It covers purpose, required input, pagination, and cost. It is complete for a search tool, though it could mention result type ('videos') but that is implied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds context beyond schema: that 'cursor' is from a previous response for pagination, and that cost is 5 tokens. This is useful but not extensive, earning a baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search TikTok videos') and the required parameter ('Requires query'). It distinguishes from sibling tools like tiktok.search_photos or tiktok.search_users by specifying video search and keyword requirement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on pagination ('Pass cursor from a previous response to fetch the next page') and cost, but does not explicitly state when to use this tool versus alternatives or when not to use it. The context is clear but lacks 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. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 200). | |
| cursor | No | Pagination cursor from a previous response. | |
| user_id | Yes | TikTok numeric user id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses important behaviors: cost of 2 tokens and pagination mechanism. It doesn't mention rate limits or auth, but for a simple read tool, it 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (three sentences) and front-loaded with the primary purpose. Every sentence adds essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description covers the key aspects: purpose, required parameter, pagination, and cost. It is largely complete for a straightforward list tool, though it could briefly mention error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all parameter descriptions (100% coverage). The description adds value by explaining how to use the cursor for pagination and noting the required user_id, enhancing the schema's information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists followers for a TikTok user, specifying the required user_id and pagination. This directly communicates the tool's function and distinguishes it from siblings like tiktok.user_following or tiktok.user_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required user_id and pagination cursor, providing basic usage context. However, it lacks explicit guidance on when to prefer this tool over siblings (e.g., tiktok.user_following) or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_followingAInspect
List accounts a TikTok user follows. Requires user_id. Pass cursor from a previous response to fetch the next page. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 200). | |
| cursor | No | Pagination cursor from a previous response. | |
| user_id | Yes | TikTok numeric user id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It mentions pagination and cost, which is helpful. But it does not address authentication, rate limits, idempotency, or safety (e.g., destructive hint). The description is adequate but lacks comprehensive behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of three sentences that pack essential information: purpose, requirement, pagination hint, and cost. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (implied), the description covers the core functionality. However, it omits context about authentication, rate limits, or any prerequisites beyond user_id. For a complete understanding of usage context, more details would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description restates the user_id requirement and cursor usage, adding no significant 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists accounts a TikTok user follows, using a specific verb 'List accounts' and resource 'a TikTok user follows'. It distinguishes from siblings like tiktok.user_followers by focusing on 'following' rather than 'followers'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on prerequisites ('Requires user_id') and pagination ('Pass cursor from a previous response to fetch the next page'). It also notes cost ('Costs 2 tokens'). However, it does not explicitly contrast with alternative tools or specify 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.user_infoAInspect
Look up a TikTok user profile. Provide either user_id or unique_id, not both. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | No | TikTok numeric user id. | |
| unique_id | No | TikTok unique id (username). |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
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 the token cost but fails to disclose behavioral traits like what happens if both parameters are provided, rate limits, data freshness, or authentication requirements. The description is minimal on behavioral expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence that conveys the purpose, parameter constraint, and cost. No wasted words; front-loaded with the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (though not shown), the description does not need to detail return values. It covers the essential information for a lookup tool, but could mention that it returns profile information to improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters with 100% coverage. The description adds value by clarifying the mutual exclusivity constraint ('not both'), which is critical for correct invocation. This goes beyond the schema's individual parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Look up' and the resource 'TikTok user profile'. It also specifies the two allowed identifiers and the constraint 'not both', which distinguishes it from other tiktok tools like user_followers 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage guidance on which parameter to provide ('either user_id or unique_id, not both'), but does not explain when to use this tool versus other user-related tools (e.g., user_followers, user_videos) or any exclusions.
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. Costs 3 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| cursor | No | Pagination cursor from a previous response. | |
| user_id | No | TikTok numeric user id. | |
| unique_id | No | TikTok unique id (username). |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the 'either/or' parameter constraint, pagination mechanism, and token cost. Since no annotations are provided, the description carries the transparency burden. It covers key behavioral traits, though it omits rate limits and authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise at three 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers all essential aspects: purpose, parameters, pagination, cost. With an output schema present, describing return values is unnecessary. Could optionally mention error cases, but overall complete for a paginated list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%. The description adds meaning beyond the schema by specifying mutual exclusivity for user_id/unique_id and explaining cursor usage, which is not present in the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists reposts for a TikTok user, with a specific verb and resource. However, it does not explicitly differentiate from sibling tools like tiktok.user_videos or tiktok.user_followers, which could cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit instructions on parameter usage (either user_id or unique_id) and pagination via cursor. Cost is mentioned. But lacks guidance on when to use this tool versus alternatives like tiktok.user_videos for different content types.
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. Costs 3 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of items to return (max 30). | |
| cursor | No | Pagination cursor from a previous response. | |
| latest | No | When true, return latest videos. When false, return top videos. | |
| user_id | No | TikTok numeric user id. | |
| unique_id | No | TikTok unique id (username). |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses cost (3 tokens), pagination via cursor, and parameter constraint (mutual exclusion). Missing details like authentication requirements but acceptable 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with clear front-loading. No redundant words. Every sentence serves a purpose: purpose, parameter constraint, sorting, pagination, and cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers essential usage for a list tool with pagination and sorting. Output schema exists so return values not needed. Could mention that user IDs come from search, but not necessary for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% but description adds key constraint 'not both' for user_id/unique_id, interprets boolean latest, and explains cursor usage. This adds significant value beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List videos posted by a TikTok user' with specific verb and resource. It differentiates from siblings like tiktok.search_videos (search) and tiktok.video_details (single video) by specifying user-scoped listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit instructions: use either user_id or unique_id (not both), set latest for newest/top, use cursor for pagination. Does not explicitly state when not to use or list alternatives, 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.
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. Costs 2 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of comments to return (max 50). | |
| cursor | No | Pagination cursor from a previous response. | |
| video_id | No | TikTok video id. | |
| video_url | No | TikTok video URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It mentions cost ('Costs 2 tokens') and pagination. However, it does not disclose error handling (e.g., what happens if both or neither parameter is provided), rate limits, or authentication requirements. The description adds some value but lacks completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each serving a distinct purpose: purpose, parameter constraint, and pagination/cost hint. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 does not need to cover return values. It adequately covers parameter usage and pagination. Missing error conditions or prerequisites, but overall sufficient for a list operation with good schema support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 clarifying the mutual exclusivity of video_id and video_url, and explaining the cursor's role in pagination. This goes beyond the schema's field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'List comments on a TikTok video.' It uses a specific verb-resource pair. However, it does not explicitly distinguish from the sibling tool 'tiktok.comment_replies', which could cause confusion about whether it lists top-level comments or all comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on parameter usage: 'Provide either video_id or video_url, not both.' It also explains pagination: 'Pass cursor from a previous response to fetch the next page.' This is clear and actionable.
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. Costs 1 token.
| Name | Required | Description | Default |
|---|---|---|---|
| video_id | No | TikTok video id. | |
| video_url | No | TikTok video URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| msg | No | Upstream status message. |
| code | No | Upstream status code (0 = success). |
| data | No | Capability-specific payload from the upstream provider. |
| processed_time | No | Upstream processing time in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses cost (1 token) and implies read-only lookup, but doesn't detail authentication, rate limits, or error behavior. Adequate but not extensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, front-loaded with purpose. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple inputs (2 params, no required), output schema exists, description sufficiently covers the key usage. Could mention result format briefly, but not necessary with output schema present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with basic descriptions. Description adds crucial constraint of mutual exclusivity ('not both'), which is not in the schema, providing meaningful guidance beyond parameter definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb ('look up metadata') and resource ('TikTok video'), and distinguishes from siblings like tiktok.video_comments or tiktok.download_video by specifying input options (video_id or video_url).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, and mentions cost of 1 token. Lacks explicit 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.
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).
Successful captures use 20 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http or https URL to capture. Private, localhost, and internal network addresses are blocked. | |
| format | No | Output image format. 'png' preserves lossless quality (default). 'jpeg' produces smaller files. | png |
| quality | No | JPEG compression quality from 0 (smallest) to 100 (best). Only applies when format is 'jpeg'; ignored for PNG. | |
| dark_mode | No | When 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_page | No | Capture the full scrollable page. When false, only the viewport area is captured. | |
| wait_until | No | When to take the screenshot: 'load' (load event), 'domcontentloaded' (DOM ready, faster), or 'networkidle' (no network activity for 500ms, slowest but most complete). | domcontentloaded |
| return_mode | No | How 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_width | No | Browser viewport width in pixels. | |
| timeout_seconds | No | Maximum seconds to wait for the page to load before failing. | |
| viewport_height | No | Browser viewport height in pixels. | |
| block_cookie_banners | No | When true, attempt to dismiss common cookie consent banners and overlays before capture. Best-effort - custom or first-party banners may remain. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | No | Echo of requested URL. |
| error | No | Present on HTTP 200 when return_mode is "image" and the image exceeds the inline size limit. Value is "inline_image_unavailable". |
| format | No | Echo of the requested output format (png or jpeg). |
| status | No | Always "completed" for synchronous capture. |
| message | No | Human-readable detail when error is set on an otherwise successful capture. |
| quality | No | Echo of JPEG quality used when format is jpeg. |
| dark_mode | No | Echo of whether dark color scheme emulation was used. |
| full_page | No | Whether full page was captured. |
| created_at | No | ISO 8601 timestamp. |
| return_mode | No | Echo of the requested return mode. |
| inline_image | No | Whether an inline image is included in inline_image_data. |
| screenshot_id | No | Unique identifier, prefix ss_. |
| screenshot_url | No | Signed download URL, valid for about 1 hour. |
| viewport_width | No | Actual viewport width used. |
| file_size_bytes | No | Image file size in bytes. |
| viewport_height | No | Actual viewport height used. |
| inline_image_data | No | Base64-encoded image when return_mode is image or both. |
| block_cookie_banners | No | Echo of whether cookie banner dismissal was attempted. |
| inline_image_skip_reason | No | Reason the inline image was omitted when over the size limit. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that only public URLs work, token cost (20 API tokens), no charge for failures, best-effort cookie banner dismissal, dark mode only affects sites with CSS, and inline image fallback above 10 MB. Could mention rate limits or exact response structure, but overall transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph, well-organized with purpose first, then use cases, then parameter guidance. No redundancy. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters and an output schema, the description covers all key points: usage context, parameter recommendations, token billing, fallback behavior, and limitations. Complete for an AI agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, yet description adds significant value: recommends preferring 'both' or 'image', explains when 'url' is better, clarifies JPEG quality only applies to JPEG, and explains dark_mode effect. Goes beyond schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool captures a screenshot of a public website to inspect layout, content, and UI. It uses specific verbs and resources, and given the sibling tools list (domains, maps, search, etc.), this tool's purpose is distinct and well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'when you need to see what a page looks like rather than guessing from HTML or text.' Provides recommendations for return_mode, format, dark_mode, and cookie banners. Lacks explicit 'when not to use' but the context is clear. A minor gap is not mentioning that private/internal URLs are blocked (though schema covers it).
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.
Successful searches use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords or phrase. | |
| cursor | No | Pagination cursor from a previous response next_cursor field. | |
| search_type | No | Result ranking mode. | Top |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | No | Search status from the upstream provider (ok on success). |
| timeline | No | Matching posts from the search. Additional provider-specific fields may appear on each entry. |
| next_cursor | No | Cursor for the next results page, when available. |
| prev_cursor | No | Cursor for the previous results page, when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. Mentions token billing but lacks details on authentication, rate limits, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences covering purpose, return fields, pagination, search types, and cost. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers core functionality with pagination and ranking. Output schema exists, so return details are handled. Missing error case handling but sufficient for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema 100% covered; description restates the schema info without adding new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states action (search) and resource (public X posts). Lists returned fields, distinguishing it from sibling tools like tweet_info 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on cursor for pagination and search_type for ranking. Does not explicitly state when not to use this tool vs siblings, though the purpose 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.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.
Successful lookups use 5 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Numeric tweet id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | Numeric tweet id. |
| lang | No | Detected language code. |
| text | No | Tweet body text. |
| likes | No | Like count. |
| media | No | Attached media grouped by type (for example photo or video arrays). Additional provider-specific media fields may appear. |
| author | No | Author profile summary for the tweet. |
| quotes | No | Quote count. |
| replies | No | Reply count. |
| retweets | No | Repost count. |
| bookmarks | No | Bookmark count. |
| created_at | No | Tweet creation timestamp from X. |
| conversation_id | No | Conversation thread id for the tweet. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must handle transparency. It discloses token cost (5 API tokens for success, no billing for failures), which is helpful. It also lists return fields. Missing details on authentication or rate limits, but the given information is valuable and accurate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, using two short paragraphs. The first paragraph states purpose and output; the second provides billing info. No unnecessary words. Well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description covers purpose, return data, and token usage. No additional context is needed for correct invocation. Complete given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description repeats the param meaning ('numeric tweet id'), but adds no new details beyond the schema. Baseline score of 3 is appropriate since the description reinforces but does not expand on parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch metadata for a single public X (Twitter) post by its numeric tweet id.' It specifies the verb (fetch), resource (single public X post), and key distinguishing aspect (by numeric tweet id). It also lists the metadata returned, which differentiates it from siblings like tweet_replies or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does and when to use it (to fetch metadata for a single tweet) but does not explicitly mention when not to use it or compare with alternatives like x-twitter.tweet_replies or x-twitter.search. The 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.
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.
Successful lookups use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Numeric tweet id. | |
| cursor | No | Pagination cursor from a previous response next_cursor field. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | No | Reply fetch status from the upstream provider (ok on success). |
| timeline | No | Reply tweets, newest first. Additional provider-specific fields may appear on each entry. |
| next_cursor | No | Cursor for the next replies page, when available. |
| prev_cursor | No | Cursor for the previous replies page, when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description discloses API token cost (10 tokens) and billing policy for failed requests, as well as pagination via cursor. However, it lacks details on rate limits, authentication requirements, or behavior for deleted tweets.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is four sentences, front-loaded with the main action. Each sentence provides useful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main behavior, output, pagination, and cost. With output schema present, return values are explained. Could mention ordering (e.g., most recent first) but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 schema. It reinforces that id is numeric and cursor is for pagination, but does not add new semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it fetches replies for a single tweet by numeric id, distinguishing it from siblings like x-twitter.search (general search) and x-twitter.tweet_info (single tweet details).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does but does not explicitly state when to use it over alternatives. Sibling names provide implicit differentiation, but no direct 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.
x-twitter.user_infoAInspect
Fetch public profile metadata for an X (Twitter) user.
Provide screenname (handle without @) or rest_id (numeric user id). When rest_id is set, it takes precedence over screenname. Returns display name, bio, follower counts, verification flags, avatar URLs, and related profile fields.
Successful lookups use 5 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| rest_id | No | Numeric X user id (rest_id). When provided, screenname is ignored. | |
| screenname | No | X handle without the leading @ (for example elonmusk). Required when rest_id is omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | Numeric X user id (may duplicate rest_id). |
| desc | No | Profile bio / description. |
| name | No | Display name shown on the profile. |
| avatar | No | Profile avatar image URL. |
| status | No | Profile lookup status from the upstream provider. |
| friends | No | Number of accounts the user follows. |
| profile | No | X screen name (handle). |
| rest_id | No | Numeric X user id. |
| location | No | Profile location string. |
| protected | No | Whether the account is protected (private). |
| sub_count | No | Follower count. |
| affiliates | No | Affiliate account metadata when present (object or empty array from the provider). Additional provider-specific fields may appear. |
| created_at | No | Account creation timestamp from X. |
| media_count | No | Total media item count. |
| header_image | No | Profile banner image URL. |
| blue_verified | No | Whether the account has X blue verification. |
| statuses_count | No | Total post count. |
| business_account | No | Business account metadata when present (object with counts or array entries depending on the provider response). |
| verification_type | No | Verification type label from X when present. |
| pinned_tweet_ids_str | No | Pinned tweet ids for the profile when present. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses return fields, billing for successful vs failed requests, and implies read-only public data. It could be more transparent about rate limits or authentication, but it covers key behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with four sentences, each serving a purpose: purpose, parameter usage, return fields, and billing. Front-loaded and no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 covers the main points: purpose, parameter selection, return fields, and billing. It doesn't address rate limits or authentication, but overall it's sufficient for a straightforward fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 clarifying precedence of rest_id over screenname and the format of screenname (without @), which goes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches public profile metadata for an X (Twitter) user, using specific verbs and resource. It distinguishes from sibling tools like user_timeline (tweets) or search by focusing on user info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage guidance: provide either screenname or rest_id, with precedence for rest_id, and notes billing behavior. However, it does not explicitly mention when to use this tool over alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.user_timelineAInspect
Fetch a user's recent X (Twitter) posts, pinned tweet, and profile summary.
Provide screenname (handle without @) or rest_id (numeric user id). When rest_id is set, it takes precedence over screenname. Returns timeline entries with tweet text, engagement counts, media, quoted tweets, and author info. Use cursor from next_cursor to fetch the next page.
Successful lookups use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous response next_cursor field. | |
| rest_id | No | Numeric X user id (rest_id). When provided, screenname is ignored. | |
| screenname | No | X handle without the leading @ (for example elonmusk). Required when rest_id is omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| user | No | Profile summary for the requested user. |
| pinned | No | Pinned tweet object when the user has one pinned post. |
| status | No | Timeline fetch status from the upstream provider (ok on success). |
| timeline | No | Recent posts from the user. Additional provider-specific fields may appear on each entry. |
| next_cursor | No | Cursor for the next timeline page, when available. |
| prev_cursor | No | Cursor for the previous timeline page, when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description discloses return content (tweet text, engagement, media, etc.), pagination via cursor, and API token cost (10 tokens for success, not billed for failures). It is transparent about behavior but could mention authentication 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: purpose, parameter usage, return summary, pagination, and cost. Every sentence adds information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters and an output schema, the description covers all necessary aspects: what it returns, how to identify the user, pagination, and cost. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the description adds value by explaining precedence of rest_id over screenname and how to use cursor, which goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches a user's recent posts, pinned tweet, and profile summary, with a specific verb and resource. It distinguishes from sibling tools like user_info (profile details) and tweet_info (single tweet) by focusing on the timeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains how to provide screenname or rest_id and that rest_id takes precedence, and mentions cursor for pagination. However, it does not explicitly state when to use this tool versus alternatives like user_info, but the purpose is distinct enough.
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.
Successful lookups use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | YouTube channel id or URL (for example UCJ5v_MCY6GNUBTO8-D3XoAg or https://www.youtube.com/@WWE). |
Output Schema
| Name | Required | Description |
|---|---|---|
| links | No | External links listed on the channel About page. |
| stats | No | Public channel statistics. |
| title | No | Channel display name. |
| avatar | No | Channel avatar images at different sizes. |
| badges | No | Channel badges (for example Official Artist Channel). |
| banner | No | Channel banner images for desktop, mobile, and TV layouts. |
| country | No | Country associated with the channel when available. |
| keywords | No | Channel keywords from the About page. |
| username | No | Public @ handle when available. |
| artistBio | No | Artist bio text when the channel is a music artist. |
| channelId | No | Canonical YouTube channel id. |
| isVerified | No | Whether the channel is verified. |
| joinedDate | No | Channel creation date (ISO 8601). |
| description | No | Channel About description. |
| isFamilySafe | No | Whether the channel is marked family safe. |
| joinedDateText | No | Human-readable join date. |
| canonicalBaseUrl | No | Canonical channel path on YouTube when available. |
| hasBusinessEmail | No | Whether a business email is available for contact. |
| isVerifiedArtist | No | Whether the channel is a verified artist channel. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description takes full responsibility. It notes token cost and free failed requests, but omits authentication requirements, rate limits, or behavior on invalid/private channels.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the main purpose, followed by essential details and token cost. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple parameter set and presence of an output schema, the description covers input formats, data returned, and token billing. It could note error handling or required permissions, but is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds examples and clarifies valid URL formats. However, it largely repeats schema info, offering only marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 using a channel id or URL, and lists the specific data returned. It distinguishes well from sibling tools like channel_search and channel_videos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: accepts channel id or common URLs, and mentions token cost. However, it does not explicitly compare to siblings or state 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.
youtube.channel_searchAInspect
Search public videos on a YouTube channel by keyword or phrase.
Accepts a bare channel id (for example UCJ5v_MCY6GNUBTO8-D3XoAg), not a URL. Returns matching video entries and cursorNext for pagination.
Use cursorNext from a prior response as cursor for the next page.
Successful searches use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords or phrase within the channel. | |
| cursor | No | Pagination cursor from cursorNext. | |
| channel_id | Yes | YouTube channel id (for example UCJ5v_MCY6GNUBTO8-D3XoAg, not a URL). |
Output Schema
| Name | Required | Description |
|---|---|---|
| contents | No | Matching video entries for the current page. Each entry includes a type field and nested video object. |
| cursorNext | No | Cursor for the next page, when available. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description effectively discloses behavioral traits: it searches only public videos, requires a channel id (not URL), returns matching entries and cursorNext for pagination, and costs 10 tokens per successful search (not billed for failures). It does not mention rate limits or authentication, but covers the key aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with 6 sentences, each serving a purpose: stating the action, clarifying input format, explaining pagination, and noting billing. No unnecessary words, well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (search with pagination and token cost) and the existence of an output schema (handles return fields), the description covers the essential aspects: what it does, how to use parameters, pagination mechanics, and billing implications. 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all three parameters with descriptions (100% coverage). The description adds context beyond the schema by confirming the channel_id format with an example and explaining how to use the cursor parameter (from cursorNext from prior response), which enhances usability.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies 'Search public videos on a YouTube channel by keyword or phrase', clearly identifying the action (search), resource (public videos on a YouTube channel), and input (keyword/phrase). It distinguishes from siblings like youtube.search (which searches all YouTube) and youtube.channel_videos (which lists all videos without a search query).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on input format (bare channel id, no URL), pagination (use cursorNext as cursor), and billing (10 tokens per successful search). However, it does not explicitly state when to use this tool versus alternatives like youtube.search or youtube.channel_videos, though 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.
youtube.channel_videosAInspect
Fetch a paginated list of videos from a public YouTube channel by its channel id.
Accepts a bare channel id (for example UCg6gPGh8HU2U01vaFCAsvmQ), not a URL. Use cursor from a prior response for the next page.
Successful fetches use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous response cursor field. | |
| channel_id | Yes | YouTube channel id (for example UCg6gPGh8HU2U01vaFCAsvmQ, not a URL). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cursor | No | Cursor for the next page, when available. |
| videos | No | Channel videos for the current page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses pagination via cursor, token cost (10 per success), and that failed/blocked requests are not billed. However, it omits authentication requirements and error behavior for invalid inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise with three short paragraphs. Each sentence adds necessary context (purpose, input format, pagination, token cost) without extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, description adequately covers pagination, token cost, and input constraints. Could mention rate limits or authentication, but overall it is sufficient for agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good parameter descriptions. Description adds value by reinforcing the 'not a URL' rule for channel_id and explaining cursor usage, which goes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a paginated list of videos from a public YouTube channel by channel id. This distinguishes it from sibling tools like youtube.channel_details (channel info) and youtube.channel_search (channel search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description specifies using a bare channel id (not URL) and pagination via cursor. It implies when to use (for public channel video listing) but does not explicitly mention when not to use or provide alternatives among siblings.
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.
Successful lookups use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| playlist_id | Yes | YouTube playlist id (for example PLcirGkCPmbmFeQ1sm4wFciF03D_EroIfr). |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | No | Public playlist statistics. |
| title | No | Playlist title. |
| author | No | Playlist creator summary. |
| badges | No | Playlist badges when available. |
| playlistId | No | Canonical YouTube playlist id. |
| thumbnails | No | Playlist thumbnail images at different sizes. |
| description | No | Playlist description. |
| updatedTime | No | Last update date (ISO 8601). |
| updatedTimeText | No | Human-readable last update time. |
Tool Definition Quality
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 API token costs for successful vs. failed requests, which adds transparency beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences, each serving a distinct purpose: stating the action, listing return fields, and noting billing behavior. No unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description covers purpose, parameters, return fields, and billing. The presence of an output schema covers return values. This is complete for a single-parameter fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers the single parameter with a description and example, achieving 100% coverage. The tool description does not add further semantic meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Fetch metadata') and resource ('public YouTube playlist'), and clearly lists return fields, distinguishing it from sibling tools like video_details or channel_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states it works for public playlists and requires a playlist ID, providing clear context. However, it doesn't explicitly mention when not to use it or suggest alternatives among sibling YouTube 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.
Successful searches use 20 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords or phrase. | |
| cursor | No | Pagination cursor from cursorNext. | |
| sort_by | No | Sort order. One of: Relevance, Upload date, View count, Rating. | |
| duration | No | Duration filter. One of: Under 4 minutes, 4 - 20 minutes, Over 20 minutes. | |
| features | No | Feature filters. Multiple allowed. Each value must be one of: Live, 4K, HD, Subtitles/CC, Creative Commons, 360°, VR180, 3D, HDR, Location, Purchased. | |
| language | No | Language code for localized results (for example en). | en |
| location | No | Country code for localized results (for example US). | US |
| upload_date | No | Upload date filter. One of: Last hour, Today, This week, This month, This year. | |
| content_type | No | Content type filter. One of: Video, Channel, Playlist, Movie. |
Output Schema
| Name | Required | Description |
|---|---|---|
| contents | No | Search result entries for the current page. Video entries include a type field and nested video object. |
| cursorNext | No | Cursor for the next results page, when available. |
| didYouMean | No | Suggested corrected query when the search may be misspelled. |
| estimatedResults | No | Approximate total number of matching results. |
| unappliedFilters | No | Requested filter labels that could not be applied. Present only when at least one filter was skipped. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses best-effort on unapplied filters, pagination constraint, token billing (20 tokens successful, not billed for failure). No annotations, but description covers essential behaviors. Could explicitly state read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with clear sections: purpose, return types, filter details, error behavior, pagination, misspelling hint, token cost. Every sentence is informative and no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters and output schema, the description covers all key behaviors: filters, pagination, error handling, token cost. Complete for an AI agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds significant value beyond 100% schema coverage: explains filter groups (one per group except features), case-insensitivity, unappliedFilters behavior, cursor pagination, and didYouMean.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches public YouTube content by keyword, listing return types. Differentiates from siblings like youtube.channel_search and youtube.search_autocomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides comprehensive guidance: filter groups, case-insensitivity, best-effort with unappliedFilters, pagination with cursor and incompatibility with filters, check for didYouMean, token billing.
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).
Successful lookups use 8 API tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Partial search keywords or phrase. | |
| language | No | Language code for localized suggestions (for example en). | en |
| location | No | Country code for localized suggestions (for example US). | US |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | Normalized query echoed from the provider. |
| results | No | Suggested search phrases for the query. |
Tool Definition Quality
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 the return format (normalized query, array of suggestions), optional parameters, defaults, and token cost (8 API tokens). This adds useful behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, each serving a clear purpose: stating the action, describing output and options, and noting token cost. No waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (not shown but context indicates true), the description adequately covers return values. It mentions the normalized query and array of suggested phrases, which is sufficient for a simple autocomplete tool. No notable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 restates defaults (en, US) that are already in the schema, but does add the context of localizing suggestions. It does not significantly deepen understanding of parameters beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get YouTube search autocomplete suggestions for a partial query', specifying verb, resource, and context. It distinguishes from related tools like youtube.search (which returns videos) and google-search.autocomplete (different platform).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates usage for partial queries and localizing suggestions, providing clear context. It does not explicitly exclude scenarios or compare to alternatives, but the narrow purpose makes it straightforward.
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.
Successful fetches use 15 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous response cursorNext field. | |
| sort_by | No | Comment sort order. One of: Top comments, Newest first. | |
| video_id | Yes | YouTube video id (11 characters, not a URL). |
Output Schema
| Name | Required | Description |
|---|---|---|
| comments | No | Top-level comments for the current page and sort order. Additional provider-specific fields may appear on each entry. |
| cursorNext | No | Cursor for the next comments page, when available. |
| totalCommentsCount | No | Total number of comments on the video. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden. It discloses token costs (15 API tokens), pagination behavior, and billing policy for failed requests. It does not mention rate limits or other constraints, but covers key behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence is purposeful. The description is front-loaded with the primary purpose, then lists return fields, sorting, pagination, and cost. No fluff, well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 key aspects: top-level comments, pagination, sorting, and token cost. It could mention error handling more explicitly, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 sort_by options explicitly, cursor usage for pagination, and clarifying that video_id is the 11-character ID (not a URL).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Fetch top-level comments for a public YouTube video by its 11-character video id,' clearly defining the verb, resource, and constraint. This distinguishes it well from sibling tools like youtube.video_details or tiktok.video_comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear guidance on sorting with sort_by options, pagination with cursor, and constraint that sort_by and cursor cannot be combined. While it doesn't explicitly list when not to use, the context is sufficient.
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.
Successful lookups use 10 API tokens. Failed or blocked requests are not billed.
| Name | Required | Description | Default |
|---|---|---|---|
| video_id | Yes | YouTube video id or URL (for example PuQFESk0BrA, https://youtu.be/PuQFESk0BrA, or https://www.youtube.com/watch?v=PuQFESk0BrA). |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | Video type (for example NORMAL). |
| title | No | Video title. |
| author | No | Channel display name. |
| category | No | Primary category label. |
| keywords | No | Video keyword tags. |
| video_id | No | Canonical YouTube video id. |
| channel_id | No | Uploader channel id. |
| thumbnails | No | Available thumbnail images at different sizes. |
| description | No | Plain-text video description. |
| video_length | No | Video duration in seconds as a string. |
| published_time | No | Publish date (ISO 8601). |
| is_live_content | No | Whether the video is live content (True or False as a string). |
| number_of_views | No | Total view count. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses token cost (10 for success, not billed on failure) and restricts to public videos. Missing details on rate limits or authentication, but sufficient for common usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three succinct sentences: purpose, input formats, output/token info. No redundant text, efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with output schema, description covers purpose, input, output fields, and billing. 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already describes video_id parameter well. Description adds value by listing multiple URL format examples, enhancing understanding beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool fetches metadata for a public YouTube video by id or URL, distinguishing from sibling tools like youtube.channel_details or youtube.search that operate on different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly describes accepted input formats (bare id, watch URLs, youtu.be, Shorts, embed URLs) and when to use. Lacks explicit 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.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!