Vee3
Server Details
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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
93 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.
Cost = 5 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?
Describes return format (JSON object with booleans) and cost (5 tokens). No annotations provided, so description carries full burden; it covers basic behavior but no mention of side effects or safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus cost note. Highly efficient, front-loaded with action and constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 1 parameter and output schema, description fully explains behavior and return value. No gaps relative to complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description. Description adds no additional meaning beyond 'up to ten domains', which is already in schema (maxItems). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Check domain name availability' and specifies batch size (up to ten). Distinct from sibling tools like domains.dns_records or domains.lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tells when to use (check availability) and implicitly different from other domain operations, but does not explicitly mention alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.dns_recordsAInspect
Fetch DNS records for a domain.
Returns an array of records. Each record includes name, ttl, type (for example A, AAAA, CNAME, MX, NS, SOA, TXT), and data (record value).
Optionally pass subdomain to include records for a host under the domain (for example blog for blog.example.com).
Cost = 2 tokens.
| 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?
With no annotations, the description carries the full burden. It discloses the cost (2 tokens), return type (array with fields), and optional subdomain behavior. It does not explicitly state that it is read-only or detail error conditions, but the 'Fetch' verb implies no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with the purpose. Each sentence adds value: purpose, return structure, optional parameter, cost. No redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description adequately covers purpose, return structure, optional parameter, and cost. It lacks guidance on error cases or prerequisites, but overall is sufficient for effective tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters already well-described. The description adds an illustrative example for the 'subdomain' parameter but does not fundamentally enhance understanding beyond the schema. Baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch DNS records for a domain', specifying the verb and resource. It distinguishes from sibling tools like domains.whois or domains.check_availability by focusing exclusively on DNS records. The return structure and optional subdomain parameter add further clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly indicates when to use this tool (when DNS records are needed), but does not explicitly mention alternatives or exclusion criteria. However, the context of sibling tool names provides implicit differentiation, making the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.list_tldsAInspect
List or search top-level domains (TLDs) with registry metadata.
Filter by substring search, availability phase, TLD category, and paginate with limit and page. limit defaults to 100 when omitted. Each result includes the TLD suffix, type, availability phase, WHOIS server, domain counts when known, registry organization details, and created/changed timestamps.
availability values: general-availability (open for normal registration) or sunrise (trademark sunrise period before general availability).
Cost = 2 tokens.
| 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?
No annotations provided, so description carries burden. Discloses pagination defaults (limit=100), cost, and availability values. Does not explicitly label as read-only, but context suggests it's safe. Good behavioral context beyond schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with primary action, then filtering details, then specific example of values. No wasted words. Each sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 optional parameters and output schema, description covers all parameters, default behavior, filtering options, and output contents. Cost and availability clarification further complete the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters (baseline 3). Description adds value by explaining availability values ('general-availability' vs 'sunrise') and listing output fields. Repetition of default limit is minor; overall adds meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+resource: 'List or search top-level domains (TLDs) with registry metadata.' Immediately distinguishes from siblings like domains.tld_details (single TLD) and domains.check_availability (availability check).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage via filtering and pagination, but no explicit when-to-use vs alternatives like tld_details for detailed info or check_availability for domain names. Lacks exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.lookupAInspect
Look up a domain and return normalized registration details.
Combines registry and registrar RDAP and WHOIS sources to return the most accurate normalized fields across TLDs: availability, domain status, created/updated/expiry dates, registrar data, contact records, and nameservers.
Use this when you need registrant-oriented summary data rather than raw WHOIS or RDAP payloads.
Cost = 5 tokens.
| 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?
No annotations exist, so the description carries full burden. It discloses that the tool combines multiple sources (registry/registrar RDAP and WHOIS) and normalizes results, and also notes the cost of 5 tokens. This adequately describes the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only 4 sentences, front-loaded with the main purpose, then details and usage hint. Every sentence adds value, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple one-parameter tool and that an output schema exists, the description fully covers what the tool does, its data sources, usage context, and cost. It is complete for an AI agent to correctly select and invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear parameter description ('Domain name to look up (for example example.com).'). The tool description does not add additional parameter-level meaning beyond what the schema provides, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Look up a domain and return normalized registration details' and elaborates on combining RDAP and WHOIS to output specific fields (availability, dates, registrar, etc.). This distinguishes it from sibling tools like domains.rdap or domains.whois which return raw data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises 'Use this when you need registrant-oriented summary data rather than raw WHOIS or RDAP payloads.' This provides clear when-to-use guidance and contrasts with raw data alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.metricsAInspect
Analyze a domain with comprehensive SEO metrics, backlink data, and social signals.
Returns authority metrics (Moz domain/page authority, Ahrefs domain rating, Majestic trust and citation flow), backlink profile counts (total backlinks, referring domains, EDU/GOV links), traffic and keyword estimates (organic traffic, traffic value, organic keywords, Ahrefs rank), social signals (Facebook shares/comments, Pinterest pins, StumbleUpon), and technical data (IP addresses, subnets, topical trust flow categories).
Cost = 40 tokens.
| 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 provided, so description carries full burden. It discloses return data comprehensively and mentions token cost (40 tokens), but does not explicitly state it's read-only or note any authentication requirements. This is adequate but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single paragraph that front-loads the purpose and then details metrics. It is reasonably concise but could benefit from bullet points or separation to improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and the description covers key return categories, it is fairly complete. It doesn't explain error conditions or token cost breakdown, but for a data retrieval tool, it provides sufficient context for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the domain parameter, with a clear description in the schema. The description adds context about analyzing comprehensive metrics but does not provide additional syntax or format details beyond what the schema offers. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool analyzes a domain with comprehensive SEO metrics, backlink data, and social signals, and explicitly lists the types of metrics returned. This distinguishes it from sibling tools like domains.whois or domains.dns_records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for deep domain analysis but lacks explicit guidance on when not to use it or mention of alternative tools like seo.basic_metrics. The comprehensive metric list suggests it's for full SEO analysis, but no direct comparison given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.rdapAInspect
Look up raw RDAP (Registration Data Access Protocol) data for a domain.
Returns registrar entities, domain status codes, registration and expiration events, nameservers, DNSSEC delegation data, RDAP conformance labels, and registry notices.
Cost = 3 tokens.
| 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 disclose behaviors. It mentions the data returned and cost (3 tokens), which is useful, but lacks info on authentication, rate limits, error handling, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences plus a cost line. It front-loads the main action and efficiently lists returns. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one parameter, an output schema exists (though not shown), and no annotations, the description covers the essential aspects: purpose, returns, cost. It lacks error conditions or prerequisites but is adequate for a simple lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter's description is clear. The tool description adds little beyond the schema, reiterating the domain name purpose. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it looks up raw RDAP data for a domain and lists the returned data types. It distinguishes from sibling tools like domains.whois by specifying 'RDAP' but does not explicitly contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not specify when to use this tool over alternatives like domains.whois or domains.lookup. Usage context is implied by the RDAP keyword but no explicit guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.tld_detailsAInspect
Look up detailed registry information for a single top-level domain (TLD).
Returns status, TLD type, availability phase, WHOIS and RDAP servers, registry URL, domain counts, delegation dates, registry organization, administrative/technical contacts, and remarks.
Pass the TLD suffix without a leading dot (for example io or com).
Cost = 1 token.
| 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 exist, so the description must disclose behavioral traits. It mentions cost but fails to address side effects, authentication, rate limits, or that the operation is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose, lists returns, gives a usage hint, and mentions cost. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter tool with an output schema, the description covers purpose, parameter format, return fields, and cost. It lacks guidance on sibling differentiation but is otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The parameter 'tld' is fully described in the schema with 100% coverage. The description adds an example (com) but largely restates the schema, offering minimal extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it looks up detailed registry information for a TLD, lists specific return fields, and distinguishes from sibling tools by focusing on TLD-level registry data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for TLD registry lookups but does not compare to sibling tools like domains.lookup or domains.whois, nor provide when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domains.whoisAInspect
Fetch WHOIS registration data for a domain.
Returns a JSON object keyed by WHOIS server host name. Each value contains parsed fields such as Domain Name, registrar details, dates, name servers, domain status, DNSSEC data, and raw text lines.
Set include_registrar to true to query registry and registrar servers (slower, more complete). Default false queries the registry server only.
Cost = 4 tokens.
| 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?
No annotations provided, so description carries full burden. It explains return format (JSON keyed by WHOIS server, parsed fields, raw text), parameter effect (include_registrar speed/complete trade-off), and cost. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: purpose, return structure, parameter guidance, plus cost. Front-loaded and each sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (not shown but hinted), description adequately covers return content (parsed fields, raw text). Complete for a lookup tool with two parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage, and the description adds meaning: explains include_registrar trade-off (slower but more complete) and mentions cost. Adds value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches WHOIS registration data for a domain, with a specific verb ('Fetch') and resource ('WHOIS registration data'). It distinguishes from siblings like domains.check_availability and domains.dns_records by focusing on registration data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains when to use include_registrar (true for complete data, slower; false by default) and notes cost. However, it doesn't compare explicitly with alternatives like domains.rdap or provide when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.languagesAInspect
List supported language codes for Google Maps place endpoints.
Returns languages as a map of language names to codes (for example English: en). Use these codes with the language parameter on place detail, review, and photo calls.
Cost = 1 token.
| 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?
With no annotations provided, the description carries the full burden. It discloses the output format as a map of language names to codes and notes the cost of 1 token. No side effects or restrictions are mentioned, but for a simple read-only listing, the description is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, usage, and cost. Every sentence adds value with no redundant or extraneous information. Front-loaded effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, output schema exists), the description is complete. It explains what it does, the output format, how to use the output with other tools, and the cost. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and 100% schema coverage, so the baseline is 4. The description does not need to add parameter info, and it does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List supported language codes for Google Maps place endpoints' with a specific verb and resource. It distinguishes itself from sibling tools like google-maps.nearby_search or google-maps.place_details by being a utility that provides language codes for use with those endpoints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains 'Use these codes with the language parameter on place detail, review, and photo calls,' providing clear context for when to use the tool. It does not explicitly state when not to use it or list alternatives, but the tool name and scope implicitly differentiate it from google-search.languages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.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.
Cost = 10 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?
With no annotations, the description provides behavioral insights such as pagination (cursor), cost (10 tokens), and that additional upstream fields may appear. However, it does not explicitly state that the tool is read-only, but it is implied. Rate limits are not mentioned, but overall the description covers many behavioral aspects beyond the minimal.
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 a single paragraph with clear bullet points. It front-loads the purpose, includes all essential information without redundancy, and earns each sentence's place. 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 complexity (11 parameters) and lack of annotations, the description covers all critical usage aspects: required vs optional, parameter interactions, pagination, cost, and output usage. Since output schema exists, return values need not be detailed further. The description is complete for correct invocation.
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 default radius in relation to sort_by, and specifying that when sort_by is Distance, radius should be omitted and keyword or place_type provided. It also explains cursor usage, which is not fully covered in 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 searches for places near a latitude and longitude. It uses a specific verb ('Search') and resource ('places near a location'), and distinguishes itself from sibling tools like google-maps.search and place details endpoints.
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 required and optional parameters, default radius behavior based on sort_by, and pagination using cursor. It also advises when to omit radius and provides guidance on using place_id with other endpoints. This helps the agent decide when to use this tool and how to use it correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.place_detailsAInspect
Get detailed information for a Google Maps place.
Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional region and language are supported.
Returns a flat place object with fields such as name, full_address, location, hours, status, rating, review_count, website, phone_number, and types when available. Additional upstream fields may appear.
Cost = 4 tokens.
| 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?
No annotations provided, so the description carries the full burden. It discloses that the return is a flat place object, lists common fields, notes that additional upstream fields may appear, and states the token cost (4 tokens). This is sufficient for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is five sentences, front-loaded with the core purpose. Every sentence adds useful information: purpose, input source, optional params, return details, and cost. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (context signals indicate true), the description does not need to fully detail return structure. It lists typical fields and warns of additional upstream fields. Cost is included. Could mention location format (lat/lng) but not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for all three parameters. The description adds minimal value beyond the schema: it reiterates that place_id comes from search results and mentions the alternative business identifier form. Since schema already does the heavy lifting, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the action ('Get detailed information') and the resource ('a Google Maps place'). It distinguishes from sibling tools like search or nearby_search which return lists, while this retrieves details for a specific place using a place_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description instructs to 'Provide place_id from search results', implying this tool is used after obtaining an identifier from a search. It does not explicitly state when not to use it versus other place-related siblings (place_photos, place_reviews), but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.place_photosAInspect
Get photos for a Google Maps place.
Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional cursor, region, and language are supported. Pass cursor from a previous cursor_next to fetch the next page.
Returns place metadata and a photos array. Each photo has photo_url and description when available. cursor_next appears only when a pagination cursor is available. Additional upstream fields may appear.
Cost = 3 tokens.
| 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 the full burden. It discloses the return format (photos array with photo_url and description), pagination via cursor_next, and cost of 3 tokens. No contradictory behavior noted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the purpose, then provides parameter guidance, return details, and cost in a clear, structured manner with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters and an output schema, the description covers input requirements, pagination, and return structure adequately. It is sufficient for an agent to understand and invoke the tool, though it lacks error handling details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. The description adds value by explaining the place_id can be in business identifier form, cursor usage from previous response, and region/language effects, going beyond the schema's minimal descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Get photos for a Google Maps place' with a specific verb and resource. It clearly distinguishes the tool from siblings like place_details and place_reviews by focusing on photos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on providing place_id from search results and pagination cursor usage, but does not explicitly state when to use this tool over alternatives like place_details or place_reviews.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.place_reviewsAInspect
Get reviews for a Google Maps place.
Provide place_id from search results. The identifier also accepts the business identifier form (0x...:0x...). Optional sort_by (Relevant, Lowest, Highest, Newest), cursor, region, and language are supported. Pass cursor from a previous cursor_next to fetch the next page.
Returns place metadata and a reviews array. Each review includes fields such as review_id, review_text, rating, and user_name. cursor_next appears only when a pagination cursor is available. Additional upstream fields may appear.
Cost = 3 tokens.
| 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?
With no annotations provided, the description carries the full burden. It discloses pagination via cursor_next, cost of 3 tokens, and the structure of returned data (place metadata, reviews array, fields). It also notes that additional upstream fields may appear. No contradictions or omissions are evident.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized into short paragraphs: purpose, required parameter, optional parameters with usage, output structure, and cost. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity and the presence of an output schema, the description adequately explains the return format and pagination. It could mention error handling or rate limits, but the core functionality is well covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all 5 parameters. The description adds minimal extra value by enumerating sort_by options and clarifying cursor usage for pagination. For high schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Get reviews for a Google Maps place', clearly stating the verb and resource. It distinguishes itself from sibling tools like place_details (general info) and review_details (single review) by focusing specifically on reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that place_id comes from search results and that the business identifier form is accepted. It lists optional parameters and pagination usage. However, it does not explicitly state when not to use this tool versus alternatives like review_details or place_details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.place_typesAInspect
List supported Google Maps place type values for search filters.
Returns place_types as a string array. Use a value with place_type on google-maps.search or google-maps.nearby_search.
Cost = 1 token.
| 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?
Discloses that the tool returns a string array and costs 1 token. No annotations are present, but the description is clear about the output and cost. No edge cases or limitations are mentioned, but the tool is simple and non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with three sentences: purpose, return/usage, and cost. No unnecessary words, front-loaded with the main action. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema, the description completes the picture by explaining the purpose, usage context (how to apply values), and cost. It is fully informative for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, so baseline score of 4 applies. The description does not need to add parameter-specific information as there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists supported Google Maps place type values for search filters. It specifies the return type (string array) and distinguishes it from other tools by indicating its use as a reference for place_type parameters in google-maps.search and google-maps.nearby_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to use the returned values with place_type on google-maps.search or google-maps.nearby_search. Also mentions cost. Does not include when-not-to-use, but that is not necessary for a simple reference tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.review_detailsAInspect
Get details for one Google Maps review.
Provide review_id from a place reviews response. Returns one review object at the top level with fields such as review_id, review_text, rating, and user_name when available. Additional upstream fields may appear.
Cost = 2 tokens.
| 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 provided, so the description carries the burden. It mentions the return structure and cost but doesn't discuss permissions, safety, or error behavior. It's adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences covering purpose, usage, and output. It is front-loaded with the main action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description adequately covers the tool's purpose, input sourcing, and typical output fields. It could mention error handling or prerequisites, but it's reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter review_id is described in the schema. The description adds value by specifying how to obtain its value (from a place reviews response), going beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets details for one Google Maps review, using a specific verb and resource. It distinguishes from siblings like place_reviews by specifying the source of the review_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates to provide review_id from a place reviews response, giving clear usage context. It doesn't explicitly exclude other scenarios, but the sibling place_reviews is implied for listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-maps.searchAInspect
Search Google Maps by text query.
Optional filters include location, radius (defaults to 1000 meters), open_now, min_price, max_price, place_type, language, and region. Pass cursor from a previous cursor_next to fetch the next page.
Returns matching places in places with names, full_address, place_id, ratings, and location. Use place_id with place detail, review, and photo endpoints.
cursor_next and cursor_previous appear only when pagination cursors are available. Additional upstream fields may appear.
Cost = 10 tokens.
| 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 carries full burden. It discloses the output fields, pagination behavior ('cursor_next and cursor_previous appear only when pagination cursors are available'), and cost (10 tokens). It also notes that 'additional upstream fields may appear,' which is transparent about potential extra data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the primary action. Every sentence adds value: optional filters, default radius, pagination, return fields, chaining, cursor behavior, and cost. No unnecessary repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 params, 1 required, has output schema), the description covers purpose, parameters with defaults, return structure, pagination, and cost. It also mentions that additional upstream fields may appear. This is sufficient for an agent to use the tool correctly without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds minor context like default radius (1000 meters) and cursor usage, but largely repeats schema descriptions (e.g., location override comment). No significant new parameter meaning beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search Google Maps by text query.' It distinguishes from sibling tools like place_details, place_photos, and nearby_search by specifying that it returns matching places with key fields (names, full_address, place_id, etc.) and that results can be used with other endpoints via place_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use this tool (text-based search) and how to handle pagination (using cursor). It also suggests chaining with place detail, review, and photo endpoints. However, it does not explicitly contrast with nearby_search or discuss when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-search.autocompleteAInspect
Get Google Search autocomplete suggestions for a partial query.
Returns the normalized query and an array of suggested search phrases.
Cost = 5 tokens.
| 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, so the description must carry the transparency burden. It mentions 'Cost = 5 tokens' and describes the return type, but does not explicitly state if the operation is read-only, idempotent, or any side effects. The cost disclosure is a positive but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the primary purpose. Every sentence adds necessary information: purpose, output, and cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required param, no nested objects) and the presence of an output schema that likely details the return structure, the description provides sufficient context. It covers the core functionality, input constraints, and cost.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, which already describes 'Partial search keywords or phrase.' The description adds value by explaining the return value (normalized query and suggestions) and cost, going beyond the schema. However, it does not add new parameter-level detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'Google Search autocomplete suggestions', and the input 'partial query'. It also mentions the output (normalized query and array of suggested phrases). This differentiates it from siblings like google-search.keyword_traffic_insights or google-search.languages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for partial queries ('autocomplete suggestions for a partial query') but does not explicitly state when to use or when not to use this tool versus alternatives. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-search.keyword_traffic_insightsAInspect
Get Google keyword traffic insights and related keyword suggestions for a seed keyword.
Returns an array of keyword suggestions. Each item includes text, monthly search volume, competition_level, competition_index, low_bid, high_bid, and trend.
Required: keyword and language (for example en). Optional: location (for example US) for country-specific data; omit location for global results (default). Optional: mode (exact or all, default all), min_search_volume (default 0), and intent (informational, navigational, commercial, or transactional).
Cost = 20 tokens.
| 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 the description carries the full burden. It discloses the output structure and cost (20 tokens), but does not explicitly state that the tool is read-only, safe, or if authentication is required. It partially covers behavioral traits but is not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two paragraphs) and front-loads the purpose and output structure. Every sentence adds value without redundancy. It could be slightly shorter but is well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description does not need to detail return values. It covers purpose, parameter list, cost, and output structure sufficiently for a keyword traffic insights tool. Slight gaps (error handling) are acceptable given the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds some value by summarizing parameters with examples (en, US) and clarifying default behavior (omit location for global), but much of this is already in the schema descriptions. It does not significantly extend beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and identifies the resource ('Google keyword traffic insights and related keyword suggestions'). It clearly distinguishes from sibling tools like google-search.autocomplete and google-search.url_traffic_insights by focusing on keyword traffic, not autocomplete or URL metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states required and optional parameters, defaults, and cost. It implies usage context (keyword research) but does not explicitly mention when not to use this tool (e.g., for URL traffic use url_traffic_insights). This is 'clear context, no exclusions' matching a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-search.languagesAInspect
List languages you can pass as language on google-search.keyword_traffic_insights and google-search.url_traffic_insights.
Returns an array of entries with language_name and language_code (for example en, de). Maps to upstream lang on the provider API. No request parameters.
Cost = 5 tokens.
| 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?
No annotations provided, but description covers output format, example values, and cost. Read-only nature is implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding value: purpose, output details, and cost. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Fully describes the tool's purpose, output, and usage context. No gaps given the simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds context about usage with other tools and output format, meeting baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool lists languages for use in google-search.keyword_traffic_insights and url_traffic_insights. Distinguishes from siblings by specifying its role as a supporting tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Describes when to use (to get language parameters for other tools) and mentions no request parameters. Lacks explicit exclusion of alternatives like google-search.locations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-search.locationsAInspect
List countries and region codes you can pass as location on google-search.keyword_traffic_insights and google-search.url_traffic_insights.
Returns an array of entries with country_name and country_code (for example US, GB). No request parameters.
Cost = 5 tokens.
| 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 provided, but description discloses it has no request parameters, returns an array with specific fields, and has a cost of 5 tokens. This fully covers the read-only, deterministic behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, output format, cost. No redundant phrases. Front-loaded with key action and target tools.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple with no parameters and output schema exists. Description explains output structure and purpose completely, leaving no gaps for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline 4 applies. Description adds no parameter info, but none needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists countries and region codes, with specific verb 'List'. It distinguishes from sibling tools like seo.country_codes by linking exclusively to google-search.keyword_traffic_insights and url_traffic_insights.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: before calling the two Google Search traffic insights tools. Lacks mention of alternatives like seo.country_codes but provides sufficient context for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-search.url_traffic_insightsAInspect
Get Google keyword traffic insights and related keyword suggestions for a URL.
Returns an array of keyword suggestions. Each item includes text, monthly search volume, competition_level, competition_index, low_bid, high_bid, and trend.
Required: url and language (for example en). Optional: location (for example US) for country-specific data; omit location for global results (default). Optional: min_search_volume (default 0) and intent (informational, navigational, commercial, or transactional).
Cost = 20 tokens.
| 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 fully bears the transparency burden. It discloses the cost (20 tokens), the return format (array of keyword suggestions with specific fields), and the behavior (no destructive actions). This is comprehensive for the tool's nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with 4 sentences, each serving a purpose: purpose, return data, parameter details, and cost. It is front-loaded with the main action and efficiently organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 5 parameters and being a complex SEO tool, the description is complete: it explains all parameters, return data, and cost. The output schema exists, so return values are covered. Sibling tools exist but this tool's unique focus on URL traffic insights is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 5 parameters, and the description adds meaningful context: it gives an example for language, explains that omitting location yields global results, specifies default min_search_volume as 0, and describes intent filter options. This adds value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets Google keyword traffic insights and related keyword suggestions for a URL. It distinguishes from sibling tools like google-search.keyword_traffic_insights by focusing on URL-based insights, providing a specific verb+resource combination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains required and optional parameters, including defaults and examples. It provides context for when to use the tool (for URL keyword insights) but does not explicitly state when not to use it or list alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-trends.categoriesAInspect
List all Google Trends category and subcategory labels you can pass to other Google Trends tools in the category field.
Returns cat (array of category names, including All categories) and msg. Use this before interest-over-time or interest-by-region calls when filtering by category.
Cost = 5 tokens.
| 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?
Given no annotations, the description fully discloses that it returns an array of category names and a message, and mentions the cost of 5 tokens. It accurately portrays a simple read-only list operation with no hidden behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose, includes return values, usage advice, and cost. Every sentence is valuable with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for a simple list tool: states purpose, return structure, and usage integration with siblings. The existence of an output schema mitigates the need for further detail on return format. Minor gap: does not mention if the category list is exhaustive or dynamic.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, the description doesn't need to add parameter detail. It adds value by explaining return values and usage context, earning a baseline score of 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all Google Trends category and subcategory labels, with a specific verb ('list') and resource ('categories'). It distinguishes from sibling tools by noting these labels are passed to other Google Trends tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises to use this before interest-over-time or interest-by-region calls when filtering by category, providing clear context and when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-trends.interest_by_regionAInspect
Fetch Google Trends interest-by-region breakdowns for one to five keywords.
Returns a JSON object whose top-level keys are your keywords. Each value maps location names (countries or subregions) to interest scores (0–100).
Requires start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). Optional end defaults to now. country defaults to global; region requires a valid country. category and gprop default to all when omitted or empty. resolution is COUNTRY (default) or REGION.
Cost = 40 tokens.
| 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?
Describes the return format (JSON object with keyword keys and location-score mappings) and cost (40 tokens). Without annotations, the description covers basic behavior but lacks details on error handling, rate limits, or permissions, which would enhance transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with three short sentences covering purpose, output, parameters, and cost. No redundant information; every sentence earns its place and is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 8 parameters and output schema, the description covers the essential behavior, output shape, and parameter defaults/constraints. Minor gaps: no mention of error handling or what happens with invalid inputs, but overall complete enough given the output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, baseline 3. The description adds value by clarifying defaults (end defaults to now, country defaults to global) and constraints (region requires country, category/gprop default to all) beyond the schema's property descriptions, providing an example for start.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Fetch Google Trends interest-by-region breakdowns for one to five keywords.' The verb 'Fetch' and specific resource 'interest-by-region breakdowns' with the keyword range distinguish it from sibling tools like interest_over_time or related_queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context on when to use (region breakdowns) and explains parameter usage with defaults and constraints (e.g., 'region requires a valid country', 'resolution is COUNTRY (default) or REGION'). However, it does not explicitly mention when not to use or list alternative trend tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-trends.interest_over_timeAInspect
Fetch Google Trends interest-over-time series for one to five keywords.
Returns a JSON object whose top-level keys are your keywords. Each value maps timestamps to interest scores (0–100). Granularity depends on the requested date range (from about one minute to monthly buckets).
Requires start in datetime-with-timezone form (for example 2020-05-01T00:43:37+0100). Optional end defaults to now. country defaults to global; region requires a valid country. category and gprop default to all when omitted or empty.
Cost = 40 tokens.
| 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?
Despite no annotations, the description discloses the return structure (JSON with keyword-to-timestamp mapping, scores 0–100) and granularity dependence on date range. It also mentions cost and required datetime format, providing good behavioral context beyond basic schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at about six sentences, with no redundant information. It front-loads the main purpose, then briefly explains return format and parameter specifics, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the seven parameters, full schema coverage, and the existence of an output schema, the description covers the essential aspects: purpose, return format, parameter constraints, and defaults. It is sufficiently complete for a fetch-like tool, though it could mention rate limits or specific error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline is 3. The description adds value by clarifying relationships (e.g., 'region requires a valid country') and defaults ('country defaults to global, category and gprop default to all'), which goes beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a clear verb and resource: 'Fetch Google Trends interest-over-time series for one to five keywords.' It specifies the exact resource (interest-over-time series) and the number of keywords, distinguishing it from sibling tools like interest_by_region or related_queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context on required and optional parameters, defaults, and constraints like 'region requires a valid country.' However, it does not explicitly state when to use this tool versus alternatives, nor does it provide guidance on when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-trends.regionsAInspect
List all countries and subregions you can pass to other Google Trends tools in the country and region fields.
Returns geo.countries: each country name maps to country (label) and regions (array of subregion names). Also returns msg.
Use this before interest-over-time or interest-by-region calls when filtering by geography. Pair with google-trends.categories when filtering by category.
Cost = 5 tokens.
| 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 provided, but the description discloses the output structure (geo.countries with label and regions) and the cost (5 tokens). It adds behavioral context beyond the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with three sentences and a cost note. It front-loads the purpose and avoids unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (0 parameters, no nested objects). The description sufficiently covers its behavior, output structure, and usage context. The output schema likely provides additional details, but the description is complete for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the description carries the full burden. It explains the purpose and output, adding meaning beyond the empty schema. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides a list of countries and subregions for use in other Google Trends tools. It uses specific verbs (list) and resources (countries and subregions), distinguishing itself from siblings like interest_over_time.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using this tool before interest-over-time or interest-by-region calls when filtering by geography, and pairs with categories for category filtering. This provides clear when-to-use guidance and alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google-trends.suggestionsAInspect
Get Google Trends suggestions for a single keyword.
Returns result: an array of suggested topics and entities, each with mid (topic id), title (display name), and type (for example Topic, Software, Book).
Use this to refine keywords before interest-over-time, interest-by-region, or related-queries calls.
Cost = 10 tokens.
| 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?
With no annotations, the description fully bears the burden of behavioral disclosure. It describes the output structure (array of suggested topics with mid, title, type) and states the token cost (10 tokens). This is sufficient for a read-only suggestion tool, though it lacks potential error cases or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences), front-loaded with the purpose, then output details, usage guidance, and cost. Every sentence adds value with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given only one parameter, no annotations, and an existing output schema, the description adequately covers input requirements, output structure, usage context, and cost. It is complete for the tool's complexity, though it could optionally mention result limits or edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the keyword parameter has a description). The tool description adds only that it's for a single keyword, which is already implied by the parameter name. Baseline 3 is appropriate since the schema already handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get Google Trends suggestions for a single keyword,' using a specific verb and resource. It also distinguishes from sibling tools by explaining its role in refining keywords before other Google Trends calls like interest-over-time, interest-by-region, or related-queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this to refine keywords before interest-over-time, interest-by-region, or related-queries calls,' providing clear context for when to use the tool. However, it does not mention when not to use it or list alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.describeAInspect
Describe a single Vee3 capability.
Pass the MCP tool name (for example website-screenshots.capture) or capability id (for example website-screenshot). Use this after meta-tools.list_group_tools when you need parameter names, defaults, response fields, examples, and token cost before calling a tool
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_name | Yes | MCP tool name (for example `x-twitter.create_post`) or capability id (for example `create-x-post`). |
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?
Discloses key behavioral traits: cost is 0 tokens, returns parameter names, defaults, response fields, examples, token cost. No annotations were provided, so description carries full burden; it does so comprehensively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then usage and cost. No wasted words; highly efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present, description covers all necessary information: purpose, input, usage context, output content, and cost. Fully complete for the tool's function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and schema already describes the parameter. Description adds examples (website-screenshots.capture) and context for use after list_group_tools, but does not add new semantic meaning beyond schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Explicitly states it describes a single Vee3 capability, with clear verb+resource. Distinguishes from sibling meta-tools by specifying it is for a single tool/capability, and references list_group_tools as a preceding step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly says 'Use this after meta-tools.list_group_tools when you need parameter names, defaults, response fields, examples, and token cost before calling a tool.' Provides explicit context and alternatives (list_group_tools). Also notes cost=0 tokens.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.list_allAInspect
List all live Vee3 agent tools.
Use this when you need to discover which tools exist and what they are called in MCP. Each entry includes mcp_tool_name, group_id, and summary. Use meta-tools.describe for full request/response schemas and token costs
Cost = 0 tokens.
| 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 are provided, so the description carries the burden. It discloses that the tool lists 'live' tools and that the cost is 0 tokens. It doesn't elaborate on what 'live' means or other behavioral aspects, but for a read-only listing, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core purpose, includes usage guidance, references a sibling tool, and notes token cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with no parameters and an existing output schema, the description covers purpose, entry contents, cost, and points to more detailed tool. It is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters and schema coverage is 100% trivially. The description adds no parameter-specific information because there are none, so baseline score 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all live Vee3 agent tools' and specifies that each entry includes mcp_tool_name, group_id, and summary. It distinguishes itself from sibling meta-tools.describe by directing users there for schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Use this when you need to discover which tools exist and what they are called in MCP' and points to meta-tools.describe for more detail. It could be more explicit about when not to use, but the guidance is clear for a listing tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.list_groupsAInspect
List all Vee3 capability groups.
Use this to see how tools are organized (for example website-screenshots or meta-tools) before listing tools in a specific group
Cost = 0 tokens.
| 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?
No annotations provided. The description only mentions 'Cost = 0 tokens', which is helpful but insufficient for full transparency. For a simple list tool with no parameters, the behavioral disclosure is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, with three short sentences that are all substantive and front-loaded. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists, the description covers purpose and usage adequately. It could mention authentication or limitations, but for a simple list tool it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and schema coverage is 100% (vacuously). Baseline score of 4 applies as description does not need to add parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all Vee3 capability groups', using a specific verb and resource. It distinguishes from sibling tools like list_all and list_group_tools by focusing on groups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: 'Use this to see how tools are organized... before listing tools in a specific group'. It implies when to use and hints at workflow, though lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.list_group_toolsAInspect
List live tools belonging to a single capability group.
Use group_id from meta-tools.list_groups (for example website-screenshots). Returns name and summary for each live tool in the group
Cost = 0 tokens.
| 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, but the description indicates a read-only operation ('List live tools') and mentions cost is 0 tokens. It does not disclose side effects or permissions, but for a listing tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with three short sentences. The first sentence front-loads the purpose, and every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking an output schema in the input, the description explains it returns name and summary for each tool. For a simple listing tool, it provides all necessary context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes group_id with an example. The description repeats the example but adds no new semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'live tools belonging to a single capability group'. It provides an example group_id and distinguishes from siblings like list_groups and list_all.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using group_id from meta-tools.list_groups, giving clear prerequisite. It does not explicitly state when not to use or alternatives, but the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.list_uploaded_filesAInspect
List files currently stored for the authenticated Vee3 account.
Returns file_name, content_type, size_bytes, uploaded_at. Use file_name to reference a file in other capabilities.
Files are stored for 14 days
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| files | No | Files currently stored for the authenticated account, newest first. |
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 file storage duration (14 days), cost (0 tokens), and return fields. However, it does not mention potential limits on file count or ensure completeness of listing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Remarkably concise with every sentence providing essential information: purpose, output, usage hint, retention policy, and cost. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists (listing return fields) and no parameters, the description is fully complete. Covers purpose, output, usage, and constraints adequately for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist (0 params, 100% schema coverage). Baseline score of 4 applies as description adds no parameter info but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'List' and resource 'files currently stored for the authenticated Vee3 account'. Distinguishes from sibling tools like 'upload_file' by focusing on listing existing files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains what it returns and how to use the output (file_name for referencing in other capabilities). Mentions storage duration and cost. Does not explicitly state when not to use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.report_bugAInspect
Report a bug, error, or anything that did not work as expected while using Vee3.
Use this when a capability fails unexpectedly, returns wrong data, or behaves inconsistently. Include what you tried, what happened, and any error output
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| summary | Yes | Short title describing the issue. | |
| description | Yes | Detailed explanation of what went wrong, what was expected, and steps to reproduce if known. | |
| error_details | No | Raw error message, stack trace, or API response that shows the failure. | |
| related_capability_id | No | MCP tool name or capability id involved in the issue, if applicable. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | No | Submission status. Always "received" on success. |
| report_id | No | Unique identifier for the submitted bug report. |
| created_at | No | ISO 8601 timestamp when the report was recorded. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions cost is 0 tokens, but does not detail side effects (e.g., data storage, response behavior). Adequate but could be more transparent about what happens after submission.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very concise: three short sentences plus 'Cost = 0 tokens.' Front-loaded with purpose. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given full schema coverage and existence of output schema, description covers purpose, usage guidance, and key parameters. Does not discuss output format, but that is likely covered by output schema. Complete for a bug report tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds minimal value beyond schema: 'Include what you tried, what happened, and any error output' aligns with 'description' parameter but does not elaborate on other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Report a bug, error, or anything that did not work as expected while using Vee3.' It distinguishes from sibling tool 'request_feature' by focusing on failures and inconsistencies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this when a capability fails unexpectedly, returns wrong data, or behaves inconsistently.' Also advises to include what was tried and error output. Does not explicitly mention when not to use, but context with sibling request_feature provides implicit alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.request_featureAInspect
Request a new capability or feature that Vee3 does not offer yet.
Use this when you need something that is not available in the catalog — a missing integration, data source, workflow, or enhancement to an existing capability. Describe what you need, why you cannot accomplish it today, and how you would use it
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| summary | Yes | Short title describing the requested capability or feature. | |
| use_case | No | Example workflow or scenario where this feature would be used. | |
| description | Yes | Detailed explanation of what is needed, why it cannot be done with existing tools, and how it would help. | |
| related_capability_id | No | Capability id this request extends or relates to, if applicable. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | No | Submission status. Always "received" on success. |
| created_at | No | ISO 8601 timestamp when the request was recorded. |
| request_id | No | Unique identifier for the submitted feature request. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. It mentions 'Cost = 0 tokens' but does not disclose other behavioral traits like async processing, ticket creation, or expected response time.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a cost note. Front-loaded with purpose. Every sentence adds value, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple (request a feature). Output schema exists, so return values are covered. Description includes what to provide and why. Could mention limitations like rate limits, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with descriptions for all 4 parameters. Description adds minimal extra meaning beyond schema (e.g., reinforces that description should explain why not possible). Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'Request' and resource 'a new capability or feature that Vee3 does not offer yet'. Distinguishes from sibling meta-tools like list_all, report_bug, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this when you need something that is not available in the catalog' and provides examples (missing integration, data source, workflow, enhancement). Does not explicitly state when not to use, but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.searchAInspect
Search live Vee3 agent tools by keyword or short task description.
Call this first when you are unsure which tool to use. Returns ranked matches with tool_name, summary, and cost for each hit. Use meta-tools.describe on the best match for full request and response schemas.
Optional group_id narrows results to one capability group. limit defaults to 8 (maximum 20).
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results to return (1–20). | |
| query | Yes | Keywords or short task description (for example `tiktok video comments` or `domain availability`). | |
| group_id | No | Optional group id to narrow results (for example `x-twitter`). |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | Normalized search query that was executed. |
| results | No | Ranked capability matches visible to the caller. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully covers behavioral traits: it's a search (read-only), returns ranked matches with tool_name, summary, and cost, and notes 'Cost = 0 tokens.' No misleading or omitted side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded first sentence. Every sentence adds value: purpose, when to use, output, follow-up, optional parameters, cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a search tool with output schema. Covers usage, parameters, output structure, and next steps. No missing information given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds context: explains group_id narrows to capability group, limit defaults to 8 (max 20), and query is keywords or task description. Adds value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Search live Vee3 agent tools by keyword or short task description.' It distinguishes from siblings like meta-tools.describe by advising to call this first when unsure and to use describe on the best match.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear when-to-use guidance: 'Call this first when you are unsure which tool to use.' Also suggests follow-up with meta-tools.describe. Could explicitly mention when not to use it, but still strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.token_balanceAInspect
Get the current API token balance for the authenticated account.
Returns tokens used, tokens remaining, monthly allowance, billing plan, and when the allowance resets (billing_period_end). Use this before expensive calls or when you receive a 402 insufficient_tokens response
Cost = 0 tokens.
| 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?
No annotations provided, so description carries full burden. It discloses it's a read operation ('get'), cost=0 tokens, and what data is returned. Could mention authentication requirements but it's implicitly assumed for an API token balance endpoint. Still highly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, return fields, usage guidance, cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and an existing output schema, description fully covers the tool's functionality and context. Complete for a simple zero-parameter read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters (empty schema, 100% coverage). Baseline 4 as description adds no param info but none needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get the current API token balance' with a specific verb and resource. It distinguishes from sibling tools as no other tool provides token balance. It also lists exact return fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance: 'Use this before expensive calls or when you receive a 402 insufficient_tokens response' – tells the agent exactly when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meta-tools.upload_fileAInspect
Reserve a direct upload slot for a local file.
Pass the desired file_name only. The name may omit an extension. Vee3 returns an upload_code.
Install the uploader once with npm install -g @vee3/upload (requires Node 18+), then run vee3-upload {upload_code} {file_path} in the terminal. The CLI resolves the code to a signed upload URL, streams the local file to Vee3 storage, and prints the stored file_name after the upload finishes. Use that file_name in meta-tools.list_uploaded_files and other capabilities. The CLI does not need an API key.
If installation fails with a TLS or certificate error (common on networks that inspect HTTPS traffic), use Node 22.15 or newer and run with NODE_OPTIONS=--use-system-ca, or configure npm to trust your network's root certificate.
Files can be up to 2 GB and are stored for 14 days. After the upload is detected, Vee3 bills 1 token per 20 MiB, rounded up with a minimum of 1 token. Upload codes can be resolved within 60 minutes of reserve.
Use meta-tools.list_uploaded_files to list stored uploads for follow-up work.
Cost = 0 tokens to reserve. After upload completes, billing is 1 token per 20 MiB, rounded up (minimum 1 token).
| Name | Required | Description | Default |
|---|---|---|---|
| file_name | Yes | Desired file name for the uploaded file. Extension is optional and is replaced based on detected file type. |
Output Schema
| Name | Required | Description |
|---|---|---|
| command | No | Suggested terminal command for uploading the local file. |
| max_bytes | No | Maximum allowed file size in bytes. |
| upload_id | No | Stable identifier for the reserved upload. |
| expires_at | No | ISO 8601 timestamp when the upload code can no longer be resolved (60 minutes after reserve). |
| upload_code | No | Short code to pass to the @vee3/upload CLI. |
| install_command | No | One-time command to install the uploader CLI (`npm install -g @vee3/upload`). On networks that inspect HTTPS, install may require Node 22.15+ with NODE_OPTIONS=--use-system-ca. |
| troubleshooting | No | What to do if installation or uploading fails: re-read this tool's description via meta-tools.describe for setup and troubleshooting steps. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description fully carries the burden. It discloses that the tool only reserves a slot (not uploads), returns an upload_code, the CLI handles actual upload, files stored for 14 days, billing details, and resolution timeout. No behavioral surprises.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy but front-loaded with the core purpose. Each sentence adds necessary information (billing, CLI, storage limits). Minor redundancy could be trimmed, but overall well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the multi-step nature (reservation, CLI upload, billing, error handling), the description covers all necessary aspects for successful use. It explains the flow, prerequisites, constraints, and follow-up actions, making it fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, baseline is 3. The description adds value by explaining that the name may omit an extension and that extension is replaced based on detected type, which is not fully clear from the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Reserve a direct upload slot for a local file,' which clearly states the tool's primary verb and resource. It distinguishes itself from the sibling tool 'meta-tools.list_uploaded_files' by mentioning it for follow-up work.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit step-by-step instructions on how to use the tool: pass file_name, install CLI, run vee3-upload command, use resulting file_name. It also includes troubleshooting for TLS errors and references when to use list_uploaded_files, giving clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.celebrity_detailsAInspect
Look up a celebrity on Rotten Tomatoes by slug (for example morgan-freeman).
Returns name, bio, birth date and place, profile image, and filmography lists for movies and TV with scores and years.
Cost = 5 tokens.
| 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?
With no annotations, the description carries full burden. It discloses read-only behavior and lists returned fields (name, bio, birth date/place, profile image, filmography). Cost is mentioned. No contradictions or hidden side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: purpose, return fields, cost. Every sentence adds value, no fluff. Front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with one parameter and an output schema, the description provides all necessary context: input, output summary, and cost. No gaps for typical usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter with 100% description coverage. The description re-iterates the slug format example but adds little beyond schema; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool looks up a celebrity by slug on Rotten Tomatoes, specifying the resource (celebrity), action (look up), and identifier (slug). It distinguishes from sibling tools like movie_details or search by focusing on celebrity details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for looking up celebrity details by slug but does not explicitly mention when not to use it or compare with alternatives like rotten-tomatoes.search or other celebrity-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.movie_cast_and_crewAInspect
List cast and crew credits for a movie by slug (for example shawshank-redemption).
Returns cast and crew members with names, roles, character names, and profile links where available.
Cost = 5 tokens.
| 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 must carry the burden. It discloses the output fields (names, roles, character names, profile links) and cost, but does not mention side effects, authentication, rate limits, or other behavioral traits. For a read-only list tool, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: purpose, output, cost. Every sentence is necessary, front-loaded with key action, and no fluff. Ideal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, output schema exists), the description sufficiently covers input and output. Context signals confirm high schema coverage, so no gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the parameter already well-described. The description repeats the slug example but adds no new meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'cast and crew credits for a movie'. It specifies the required input (slug) with a concrete example, distinguishing it from sibling tools like 'movie_details' and 'tv_show_cast_and_crew'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly guides usage by stating it is for movie cast/crew, and siblings include TV show equivalent. However, it lacks explicit when-to-use or when-not-to-use instructions, though the context is clear from the name and examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.movie_detailsAInspect
Look up a movie on Rotten Tomatoes by slug (for example shawshank-redemption).
Returns title, year, rating, runtime, genres, description, poster and hero images, Tomatometer and Popcornmeter scores, cast highlights, and where to watch links.
Cost = 5 tokens.
| 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?
No annotations provided, so description bears full burden. States cost (5 tokens) and output fields, but lacks behavioral details like read-only, auth requirements, or rate limits. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, return values, cost. Front-loaded with key information, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-param tool with output schema, description covers input, output outline, cost, and purpose sufficiently. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameter with description. Description adds example value but does not provide additional meaning beyond schema. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action (look up), resource (movie on Rotten Tomatoes), and identifier (slug). Lists return fields, differentiating from siblings like cast/crew or reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Mentions input format (slug) with example but does not explicitly guide when to use this vs. search or other movie tools. Implicit from context but no direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.movie_reviewsAInspect
Load reviews for a movie by slug (for example shawshank-redemption).
Returns review quotes, sentiment, publication, critic details, and pageInfo for pagination. Use cursor from pageInfo.endCursor for the next page. Optionally set type to critic for critic reviews only.
Cost = 5 tokens.
| 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 provided, but description discloses pagination mechanism (use cursor from pageInfo.endCursor) and cost (5 tokens). Could mention rate limits or error handling, but for a read tool this is fairly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four efficient sentences, front-loaded with purpose and example, followed by return details, pagination, and optional filter. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description adequately covers return fields (review quotes, sentiment, etc.) and pagination. Provides enough context for successful invocation without missing critical details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-documented. Description adds value with example slug, explicit instruction on cursor usage, and optional type for critic reviews. Reinforces and clarifies schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it loads reviews for a movie by slug, gives an example, and lists return content (review quotes, sentiment, publication, critic details, pageInfo). Distinguishes from sibling tools like movie_details and movie_cast_and_crew.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides instructions on using movie_slug, optional limit, cursor for pagination, and review_type for critic reviews. Does not explicitly state when not to use or compare with alternatives, but usage is clear and straightforward.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.searchAInspect
Search Rotten Tomatoes by title or name.
Returns matching movies, TV series, and celebrities with slugs, scores, poster URLs, release years, and top-billed cast where available.
Cost = 10 tokens.
| 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 must disclose behaviors. It states the cost (10 tokens) and lists return fields, but does not address rate limits, authentication, or side effects. This is adequate but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: purpose, return fields, cost. It is concise, front-loaded, and contains no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and simple parameters, the description provides sufficient context about returned fields. However, it omits details like default sorting or result type filtering, which could be useful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds minor context ('by title or name') but does not enrich parameter meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches Rotten Tomatoes by title or name and returns movies, TV series, and celebrities. This distinguishes it from sibling detail tools, which focus on specific entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus its siblings (e.g., movie_details, celebrity_details). The description does not mention that this tool fetches slugs for subsequent detail lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.tv_show_cast_and_crewAInspect
List cast and crew credits for a TV series by slug (for example breaking-bad).
Returns cast and crew members with names, roles, character names, and profile links where available.
Cost = 5 tokens.
| 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 are provided, so the description carries full burden. It mentions cost tokens and lists returned fields, but does not disclose any side effects, permissions, or rate limits beyond cost. It is adequate for a read-only operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with two sentences and a cost note. No extraneous information; essential details are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (one parameter, output schema exists), the description covers purpose, input example, and return fields. It lacks information on pagination or sorting, but is mostly complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter described. The description adds no substantial meaning beyond the schema, only reinforcing the example. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'cast and crew credits for a TV series by slug', and distinguishes from the sibling tool 'movie_cast_and_crew' by specifying TV series.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for TV series but does not explicitly state when to use this tool versus alternatives like movie_cast_and_crew. No exclusion criteria or guidance on alternatives is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.tv_show_detailsAInspect
Look up a TV series on Rotten Tomatoes by slug (for example breaking-bad).
Returns title, years on air, TV rating, season count, genres, description, poster and hero images, Tomatometer and Popcornmeter scores, and creator/cast highlights.
Cost = 5 tokens.
| 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?
The description mentions cost (5 tokens) and lists return fields. Since there are no annotations, the description carries the full burden. It is transparent for a read-only lookup, though it does not mention error handling or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: two sentences plus cost. No wasted words, purpose front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with output schema, the description is complete enough. It covers what the tool does and what it returns. Lacks mention of errors or edge cases, but acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description repeats the slug example provided in the schema. No additional semantic value beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: 'Look up a TV series on Rotten Tomatoes by slug'. It also lists the return fields, distinguishing it from sibling tools like tv_show_cast_and_crew, tv_show_episode, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for basic TV show details but does not explicitly state when to use this tool versus alternatives like tv_show_cast_and_crew or tv_show_season. No explicit when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.tv_show_episodeAInspect
Load a single episode by TV series slug (for example breaking-bad), season number, and episode number.
Returns episode title, air date, description, and episode Tomatometer score when available.
Cost = 5 tokens.
| 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 description carries full burden. It lists return fields and token cost but does not disclose error handling, authorization, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise three sentences: purpose, return fields, cost. No wasted words, front-loaded with key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with output schema, the description covers purpose, parameters, and returns. Could mention error behavior but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; description largely repeats schema descriptions with minimal added value (e.g., examples already in schema). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads a single episode given a TV series slug, season number, and episode number. It differentiates from sibling tools like rotten-tomatoes.tv_show_season which loads all episodes of a season.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for single episode lookup but does not explicitly state when not to use or provide alternative tools. Sibling tools like tv_show_season are evident but not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.tv_show_seasonAInspect
Load season-level details for a TV series by slug (for example breaking-bad) and season number.
Returns season title, episode list summaries, and season Tomatometer scores when available.
Cost = 5 tokens.
| 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. The description adds cost (5 tokens) and notes Tomatometer scores are returned 'when available', but does not disclose other behavioral traits like auth needs, rate limits, or error conditions. For a read operation, this is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: purpose, outputs, cost. It is front-loaded, concise, and every sentence provides value with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description appropriately focuses on high-level outputs (season title, episode summaries, Tomatometer scores). It misses handling of pagination or errors, but the tool is simple and the context signals support completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with clear descriptions, including examples. The description repeats these examples without adding significant new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads season-level details for a TV series by slug and season number, and lists specific outputs (title, episode summaries, Tomatometer scores). It distinguishes from siblings like tv_show_episode and tv_show_season_reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (for season details) but does not explicitly mention when not to use or provide alternatives. Sibling tools exist for other granularities, but no direct guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotten-tomatoes.tv_show_season_reviewsAInspect
Load reviews for a TV season by series slug (for example breaking-bad) and season number.
Returns review quotes, sentiment, publication, critic details, and pageInfo for pagination. Use cursor from pageInfo.endCursor for the next page. Optionally set type to critic for critic reviews only.
Cost = 5 tokens.
| 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 provided, so description carries full burden. It discloses return fields (quotes, sentiment, publication, critic details, pageInfo), pagination behavior, cost, and optional filter. Lacks mention of rate limits or authentication, but core behavioral traits are well covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise sentences, no fluff. Critical info (purpose, pagination, optional filter, cost) is front-loaded and every sentence is meaningful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 5 params, required 2, and an output schema. Description covers all key aspects: how to identify the season, pagination, optional filter, and cost. Output schema handles return details, so no missing context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are documented. The description adds value by explaining how to use cursor for pagination and the effect of review_type. This exceeds schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Load reviews) and the specific resource (TV season reviews by series slug and season number). It distinguishes from siblings like movie_reviews or tv_show_episode by targeting season-level reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains pagination and optional review_type filter, but does not explicitly guide when to use this tool over alternatives like tv_show_episode for episode reviews or movie_reviews for movies. Context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.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.
Cost = 10 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?
No annotation provided, so description carries burden. It discloses the cost (10 tokens) and output structure (overview + list), but no info on side effects, auth, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short paragraphs, front-loaded with the main verb, but the list format could be cleaner.
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 2 params and an output schema, the description sufficiently covers what the tool returns and its 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?
Schema coverage is 100% and schema descriptions are clear. Tool description adds no additional meaning beyond stating the parameters exist.
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 finds backlinks for a URL, which distinguishes it from sibling SEO tools that handle metrics, keywords, etc.
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 any guidance on when to use this tool versus alternatives like seo.basic_metrics or seo.url_metrics.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.basic_metricsAInspect
Get Ahrefs domain authority signals for a website URL.
Returns domainRating (0–100 Ahrefs authority score) and ahRank (global Ahrefs website rank). Useful for comparing site strength and prioritizing outreach or competitive research.
Cost = 10 tokens.
| 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 provided, so description carries full burden. It discloses cost (10 tokens) and return format, but does not mention side effects, rate limits, or limitations beyond what is implied by the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a cost line, all front-loaded with the main action. No extraneous information; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required param, no annotations, output schema exists), the description specifies return values and intended use adequately, though a note on what it does not cover would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description does not add meaning beyond what the parameter already conveys. Baseline score of 3 applies as no additional semantic value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Ahrefs domain authority signals, specifically domainRating and ahRank, distinguishing it from sibling SEO tools like backlinks or keyword metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains it is useful for comparing site strength and prioritizing outreach or competitive research, providing clear context for when to use it, though it does not explicitly exclude alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.country_codesAInspect
List country codes you can pass as country on seo.keyword_metrics.
Returns an array of 2-letter ISO country codes (for example us, gb, de).
Cost = 0 tokens.
| 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?
Discloses return format (array of ISO codes) and cost (0 tokens). No annotations provided, but the description is transparent about behavior, which is straightforward read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences front-loaded with purpose. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool, the description covers purpose, output format, and cost. Output schema exists, so return details are adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. The description adds meaning by explaining the purpose of the output, which is more than baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists country codes for use with seo.keyword_metrics, specifying output as 2-letter ISO codes with examples. It distinguishes itself from siblings by being a helper tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says the codes are to be passed as 'country' on seo.keyword_metrics, providing clear usage context. No alternatives or exclusions needed for such a simple tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.keyword_metricsAInspect
Get SEO metrics for a search keyword in a specific country market.
Returns keyword, searchVolume, clicks, cpc, difficulty, globalSearchVolume, and trafficPotential.
Cost = 10 tokens.
| 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?
No annotations are provided, so the description must bear the full burden of behavioral disclosure. It states cost (10 tokens) and return fields, but does not disclose whether the operation is read-only, has rate limits, or requires authentication. This is insufficient for a tool with no annotation safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences. The first sentence front-loads the core purpose, the second lists returns, and the third states cost. Every sentence is essential and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (2 params, simple data retrieval) and the presence of an output schema, the description is nearly complete. It covers purpose, returns, and cost. It could mention the default country or potential errors, but is adequate for the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds minimal meaning beyond the schema: 'search keyword' and 'specific country market' are already implied. It does not provide additional format or usage details for the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get SEO metrics for a search keyword in a specific country market.' It specifies the verb and resource, and lists the returned fields, distinguishing it from sibling tools like seo.url_metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need SEO keyword metrics for a country, but does not explicitly mention when not to use it or provide alternatives (e.g., google-search.keyword_traffic_insights). Context is clear but lacks exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo.url_metricsAInspect
Get detailed Ahrefs SEO metrics for a specific URL.
Returns two sections:
page: backlinks, referring domains, estimated traffic, traffic value, organic keywords, URL rating, and word count on the page
domain: domain rating, rank, backlinks, referring domains, traffic, traffic value, and organic keywords
Cost = 10 tokens.
| 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?
With no annotations, the description carries the full burden. It discloses the output structure and cost but lacks details about read-only nature, authentication requirements, rate limits, or data freshness. The behavior is implied but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a clear summary sentence followed by a bullet list of returned metrics and a note on cost. No extraneous information, and the format aids quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter and the presence of an output schema (not shown), the description explains the two-section return structure and lists all major metrics. It is sufficient for an agent to understand what the tool does and what it returns, though it could define terms like 'URL rating'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'url' is described in the schema as 'Public page URL to analyze.' The description adds no further semantic meaning beyond the schema. With 100% schema coverage, baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets 'detailed Ahrefs SEO metrics for a specific URL' and distinguishes between page-level and domain-level metrics. This differentiates it from sibling tools like seo.basic_metrics and seo.backlinks, which focus on simpler or specific metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like seo.basic_metrics or seo.backlinks. It only mentions a cost of 10 tokens, which is a constraint but not a usage hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.comment_repliesAInspect
List replies to a TikTok comment. Requires video_id and comment_id. Pass cursor from a previous response to fetch the next page.
Cost = 2 tokens.
| 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?
No annotations provided, but the description covers core behavior (listing, pagination) and adds cost (2 tokens). Does not contradict any annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences front-load purpose and required inputs, followed by pagination and cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple paginated list endpoint with full schema and output schema provided, the description covers purpose, required params, pagination, and cost. Could mention rate limits but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 4 params with descriptions (100% coverage). Description adds minimal value beyond 'cursor from previous response' context; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'replies to a TikTok comment', specifying required IDs. It distinguishes from siblings like tiktok.video_comments (lists top-level comments).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Describes required parameters (video_id, comment_id) and pagination via cursor. Implicitly suggests it's for replies after video_comments, but does not explicitly state when not to use or list alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.download_musicAInspect
Download a TikTok music track. Provide either music_id or music_url, not both. Returns a signed download URL. Prefer return_mode 'url'.
Cost = 10 tokens.
| 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?
No annotations are provided, so the description carries the burden. It mentions that the tool returns a signed download URL and describes return modes. However, it does not disclose behavior when both music_id and music_url are provided (e.g., error), rate limits, authentication needs, or file size limits beyond the return mode description. These are gaps, but the core behavior is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: four sentences covering purpose, parameter constraint, return behavior, preference, and cost. No redundant words. Every sentence adds essential information. It is front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the presence of an output schema, the description covers the key aspects: purpose, parameter constraint, return type, and cost. However, it could mention error handling for invalid inputs or simultaneous parameters. Still, it is mostly complete for a straightforward download tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents each parameter. The description adds value beyond the schema by stating the mutual exclusivity of music_id and music_url and recommending return_mode 'url'. This provides meaningful guidance for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Download a TikTok music track') and the resource. It distinguishes from the sibling 'tiktok.download_music_from_video' by specifying music track directly. The verb 'Download' and resource 'music track' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Provide either music_id or music_url, not both' and 'Prefer return_mode url'. It implies when to use this tool (when you have a music ID or URL) versus the sibling for music from video. Cost mention (10 tokens) also helps. No explicit exclusion of alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.download_music_from_videoAInspect
Download music from a TikTok video. Provide either video_id or video_url, not both. Returns a signed download URL. Prefer return_mode 'url'.
Cost = 10 tokens.
| 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?
Without annotations, the description discloses return type (signed download URL) and cost. It does not mention error handling, prerequisites, rate limits, or behavior when wrong input is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short, front-loaded sentences with no redundancy. Includes cost note efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers core functionality, it lacks details on prerequisites (e.g., authentication), error scenarios, and what the output schema contains. Adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by explaining the mutual exclusivity of video_id and video_url, and recommending return_mode 'url', which is not in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool downloads music from a TikTok video, using either video_id or video_url. It distinguishes itself from siblings like tiktok.download_video and tiktok.download_music by specifying the output is music.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear input selection guidance: provide either video_id or video_url, not both. Also recommends return_mode 'url'. However, it does not compare to related tools like tiktok.download_music or explain when to use each.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.download_videoAInspect
Download a TikTok video. Provide either video_id or video_url, not both. Returns a signed download URL for the standard-quality play file. Set include_hdplay to true only when high definition is required. Prefer return_mode 'url'.
Cost = 10 tokens.
| 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?
No annotations provided, so description carries full burden. Discloses that it returns a signed download URL for standard quality, and that include_hdplay adds HD. Notes cost. Lacks details on error behavior or rate limits, but for a download tool, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise sentences, each delivering essential info. Front-loaded with main purpose, then constraints, then return format, then cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description suffices. It covers all parameters, return behavior, and cost. Context signals show no required parameters and complete schema coverage, so description is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; descriptions already define each parameter. The description adds value by constraining usage (mutual exclusivity of video_id and video_url), recommending return_mode, and clarifying include_hdplay usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Download a TikTok video'), the required identifier options (video_id or video_url), the output (signed download URL), and key options (include_hdplay, return_mode). It effectively distinguishes from sibling tools like tiktok.download_music and tiktok.download_music_from_video.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage instructions: provide either video_id or video_url (not both), prefer return_mode 'url', only set include_hdplay for HD. Mentions cost=10 tokens. However, lacks explicit comparison to sibling download tools, though the name and context sufficiently differentiate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.for_you_feedBInspect
Fetch for-you feed videos for a region. Requires region.
Cost = 4 tokens.
| 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, and the description only adds 'Cost = 4 tokens' as behavioral info. It does not disclose other traits like data volume, response format, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (two sentences plus a cost note), front-loading the core purpose. Every sentence is relevant, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, output schema exists) and no annotations, the description is minimally adequate. It covers the basic action and requirement but lacks details on output or use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no further parameter detail beyond the schema. The 'Requires region' note aligns with the required parameter but provides no extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch for-you feed videos for a region' with a specific verb and resource. It distinguishes from sibling tools like tiktok.search_videos or tiktok.user_videos by focusing on the for-you feed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Requires region' as a prerequisite but lacks explicit guidance on when to use this tool versus alternatives. No exclusions or context for when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.music_detailsAInspect
Look up metadata for a TikTok music track. Provide either music_id or music_url, not both.
Cost = 2 tokens.
| 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, so description carries burden. Discloses cost (2 tokens) and mutual exclusivity of parameters. Does not mention auth or rate limits, but it's a read operation with output schema covering return data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus cost note. Purpose is first, then constraint. No wasted words. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple lookup tool with output schema covering return values. All necessary information is provided: purpose, parameter rules, cost. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage but the description adds the crucial mutual exclusivity rule not in the schema. This is significant additional semantics for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it looks up metadata for a TikTok music track. Distinct from sibling tools tiktok.music_videos and tiktok.download_music. The 'either music_id or music_url, not both' adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context ('look up metadata') and a critical parameter constraint ('provide either...not both'). Lacks explicit comparison to alternatives, but sibling differentiation is implied by name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.music_videosAInspect
List videos that use a TikTok music track. Requires music_id. Pass cursor from a previous response to fetch the next page.
Cost = 3 tokens.
| 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?
No annotations are provided, so the description carries the full burden. It discloses pagination behavior and cost (3 tokens), but does not mention authentication requirements, error states, or side effects. The read-only nature is implied but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core purpose, and each sentence adds essential information. No redundant or unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 parameters, output schema exists), the description covers the main aspects: purpose, required input, pagination, and cost. It could mention authentication or error handling, but it is sufficient for a basic list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all three parameters with 100% coverage. The description adds extra context by reiterating the requirement for music_id and explaining cursor usage for pagination, but this adds only marginal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List videos that use a TikTok music track'. It specifies the primary input (music_id) and distinguishes it from other TikTok tools like search_videos or user_videos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states that music_id is required and explains pagination via cursor. It provides clear directions for fetching paginated results, though it does not mention when not to use this tool or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.search_photosAInspect
Search TikTok photo posts by keyword. Requires query. Pass cursor from a previous response to fetch the next page.
Cost = 5 tokens.
| 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?
No annotations provided. Description mentions cost (5 tokens) and pagination behavior. However, it does not disclose if the tool is read-only or any side effects. Basic transparency but lacking safety cues.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences with no fluff. The first sentence states purpose, the second clarifies requirement and pagination, the third notes cost. Efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and parameter schema is fully described, the description covers core functionality, requirement, pagination, and cost. Missing mention of region or optional parameters, but those are self-explanatory. Adequate for a straightforward search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 4 parameters. The description adds minor context (query required, cursor for pagination) but doesn't significantly enhance understanding beyond the schema. Baseline 3 given high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for TikTok photo posts by keyword. It uses the specific verb 'search' and resource 'TikTok photo posts', distinguishing it from sibling tools like tiktok.search_videos and tiktok.search_users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States query is required and explains pagination via cursor. While it doesn't explicitly say when to use versus alternatives, the specific focus on photos provides clear context. Missing explicit when-not-to-use guidance, but adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.search_usersAInspect
Search TikTok users by keyword. Requires query. Pass cursor from a previous response to fetch the next page.
Cost = 5 tokens.
| 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 provided, so description must carry burden. It discloses cost (5 tokens) and pagination via cursor, but does not mention auth, rate limits, or result behavior. Lacks depth for a full transparency assessment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise, front-loaded sentences with no wasted words. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained. Description covers key usage and pagination. Could mention filters or sorting, but overall adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds meaning to cursor pagination, but does not explain count or follower_count beyond schema, providing marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search TikTok users by keyword', which is a specific verb+resource. It distinguishes from sibling tools like tiktok.user_info or tiktok.search_videos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions required query and pagination cursor, but does not explicitly state when to use this tool vs alternatives like user_info or search_videos, lacking when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.search_videosAInspect
Search TikTok videos by keyword. Requires query. Pass cursor from a previous response to fetch the next page.
Cost = 5 tokens.
| 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 provided; description only mentions pagination and cost. It fails to disclose side effects, authentication requirements, or rate limits. The mutation potential is unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no wasted words. Front-loaded with the purpose, then adds pagination and cost information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema (100% coverage) and presence of output schema, the description is adequate. It could mention region or sort_by, but the schema handles those. Overall complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by highlighting that 'query' is required and explaining cursor usage for pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search TikTok videos by keyword' with a specific verb and resource, and distinguishes from sibling tools like tiktok.search_photos and tiktok.search_users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description includes 'Requires query' and explains pagination via cursor. However, it does not explicitly mention when to use this tool over alternatives or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_followersAInspect
List followers for a TikTok user. Requires user_id. Pass cursor from a previous response to fetch the next page.
Cost = 2 tokens.
| 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?
No annotations provided, but description adds behavioral context: pagination via cursor and token cost (2 tokens). It does not mention destructive actions, which is appropriate for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main purpose, no unnecessary words. Every sentence provides essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, description does not need to explain return values. It covers core usage: list followers, require user_id, pagination. Lacks details on error handling or rate limits, but is sufficient for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-described. Description adds value by reinforcing that 'user_id' is required and explaining how to use 'cursor' for pagination, which aids in correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('List followers'), the resource ('TikTok user'), and the required input ('user_id'). It also distinguishes from sibling tools like user_following by focusing on followers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explains the requirement for 'user_id' and provides pagination guidance with 'cursor'. It does not explicitly mention when not to use or alternatives, but the context is clear for a list followers tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_followingAInspect
List accounts a TikTok user follows. Requires user_id. Pass cursor from a previous response to fetch the next page.
Cost = 2 tokens.
| 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 pagination mechanism (cursor) and cost (2 tokens). It does not mention error handling or rate limits, but provides adequate behavioral context for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences with no filler. First sentence states purpose immediately, followed by essential usage notes and cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, description covers purpose, required parameter, pagination, and cost. Lacks error scenarios but is complete for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline is 3. Description adds value by explaining cursor usage for pagination, which goes beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'List accounts a TikTok user follows.' This is a specific verb+resource statement that distinguishes from sibling tools like tiktok.user_followers (list followers) and tiktok.user_videos (list user videos).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description specifies requirement of user_id and explains pagination using cursor from previous response. However, it does not explicitly state when to use this vs alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_infoAInspect
Look up a TikTok user profile. Provide either user_id or unique_id, not both.
Cost = 2 tokens.
| 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 present, so the description must convey behavioral traits. It discloses a cost of 2 tokens, implying resource usage. However, it does not address error behavior (e.g., if user not found or both parameters provided) or authentication requirements, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences with no extraneous information. It is front-loaded with the action and immediately provides the key constraint and cost, making it efficient for agents to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description does not need to detail return values. It covers the essential purpose, parameter constraint, and cost. However, it could be more complete by noting prerequisites (e.g., no auth required) or default behavior when both parameters are provided, but for a simple tool it is largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes each parameter (user_id as numeric id, unique_id as username) with 100% coverage. The description adds valuable meaning by specifying the mutual exclusivity rule, which is not present in the schema. This goes beyond the schema's documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource combination: 'Look up a TikTok user profile.' This clearly distinguishes it from sibling tools like tiktok.search_users (which searches for users) and other user-specific tools (followers, videos, etc.). The mutual exclusivity constraint ('Provide either user_id or unique_id, not both') further clarifies the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for looking up a single profile by providing a user ID or username, but it does not explicitly compare with alternatives like search_users or state when not to use this tool. The constraint 'not both' is helpful but lacks comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_repostsAInspect
List reposts for a TikTok user. Provide either user_id or unique_id, not both. Pass cursor from a previous response to fetch the next page.
Cost = 3 tokens.
| 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?
With no annotations, the description should disclose behavioral aspects. It mentions pagination and cost (3 tokens), but lacks info on side effects, auth requirements, or error handling for non-existent users. Minimal transparency beyond basic usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loaded with the verb and resource, and contains no fluff. Every sentence contributes to understanding the tool's operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return value explanation is unnecessary. The description covers pagination and parameter constraints adequately for a simple list tool. Lacks details on result contents but not critical given schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds value by clarifying the mutual exclusivity of user_id and unique_id, and explaining cursor usage. This supplemental constraint enhances understanding beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List reposts' and the resource 'TikTok user', with specific guidance on user identification via user_id or unique_id. It distinguishes from sibling tools like user_videos or user_followers by its focus on reposts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes explicit constraints ('Provide either user_id or unique_id, not both') and pagination guidance. However, it does not provide when-to-use vs alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.user_videosAInspect
List videos posted by a TikTok user. Provide either user_id or unique_id, not both. Set latest to true for newest posts or false for top posts. Pass cursor from a previous response to fetch the next page.
Cost = 3 tokens.
| 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?
Discloses cost (3 tokens) and pagination behavior, but no annotations exist. Does not explicitly state read-only nature or potential side effects. Adequate but not comprehensive for a tool without annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with no fluff, front-loaded with purpose. Cost line is additional but relevant. Well-structured and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers user identification, filtering, pagination. With output schema present, return values need not be described. Could mention authentication or potential errors, but sufficient for a listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds value beyond the 100% schema coverage by clarifying mutual exclusivity of user_id and unique_id, the effect of latest, and pagination flow. Schema already describes each parameter, but description enhances practical usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists videos posted by a TikTok user, which is a specific verb+resource. It distinguishes from sibling tools like tiktok.user_info or tiktok.search_videos by focusing on user videos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit instructions on using user_id or unique_id exclusively, setting latest for newest/top posts, and using cursor for pagination. However, it does not compare alternatives or mention when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.video_commentsAInspect
List comments on a TikTok video. Provide either video_id or video_url, not both. Pass cursor from a previous response to fetch the next page.
Cost = 2 tokens.
| 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?
No annotations; description adds cost=2 tokens and pagination cursor behavior. However, lacks details on rate limits or safety. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very concise (3 sentences) with purpose first, then constraints, then cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 params fully described in schema and an output schema available, the description covers essentials (exclusivity, pagination, cost). Could mention response format but output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by stating exclusivity constraint (either video_id or video_url) and explaining cursor usage beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists comments on a TikTok video, with specific parameters (video_id or video_url). It distinguishes from siblings like comment_replies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says to provide either video_id or video_url (not both) and explains cursor pagination. No explicit when-not, but enough for a list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok.video_detailsAInspect
Look up metadata for a TikTok video. Provide either video_id or video_url, not both.
Cost = 1 token.
| 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 exist, so description carries full burden. It mentions 'Cost = 1 token' which is transparent about pricing. But it does not disclose whether the operation is read-only, any authorization needs, or rate limits. 'Look up metadata' implies read-only, but more detail would be better.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with purpose. No wasted words. Cost note is appended succinctly. Excellent structure for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists (not shown but indicated), so description need not detail return values. The description covers input constraints and cost. For a simple metadata lookup, it is sufficiently complete, though it could mention read-only nature explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already describes parameters with descriptions ('TikTok video id.' and 'TikTok video URL.'), covering 100% of schema. The description adds value by imposing an exclusivity constraint ('Provide either video_id or video_url, not both') beyond the schema's property definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Look up metadata for a TikTok video', specifying the verb 'look up' and resource 'metadata for a TikTok video'. It distinguishes from sibling tools like tiktok.video_comments or tiktok.user_info by focusing on metadata retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to provide either video_id or video_url, not both. This gives clear parameter usage guidance. However, it does not explicitly state when to use this tool versus other TikTok tools (e.g., for you feed, search videos), though the use case is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
website-screenshots.captureAInspect
Capture a screenshot of a public website so you can inspect its layout, content, and UI.
Use this when you need to see what a page looks like rather than guessing from HTML or text. Prefer return_mode 'both' or 'image' so you receive a viewable image; use 'url' only when you need a shareable link or want to avoid large inline payloads. Use format 'jpeg' with an optional quality setting (0-100) for smaller file sizes. Set dark_mode to true to capture sites that support prefers-color-scheme: dark. Set block_cookie_banners to true to dismiss common consent overlays (best-effort).
Cost = 20 tokens.
| 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 discloses important behaviors: only public URLs, fallback for large images, best-effort cookie banner blocking, and cost. Could mention rate limits or error handling but is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph well-structured: purpose first, then usage guidance, then parameter specifics. No filler sentences, but could be slightly more scannable with line breaks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists (not shown), description covers main use cases thoroughly for 11-parameter tool. Minor gap: no mention of error handling or timeout behavior beyond parameter description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds value by explaining use cases for return_mode, format, quality, dark_mode, and block_cookie_banners beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Capture a screenshot of a public website' with a specific verb and resource, and distinguishes the tool's purpose from siblings by emphasizing visual inspection over HTML/text guessing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use (need to see layout), preferences for return_mode, format, dark_mode, and block_cookie_banners. Lacks explicit 'when not to use' but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.connected_accountsAInspect
List X (Twitter) accounts connected to the authenticated Vee3 account for write capabilities.
Returns user_id, user_name, display name, avatar URL, and whether each account is the default. Use user_id or user_name on future write calls, or omit both to use the default account.
If accounts is empty, the user must connect an X account at https://vee3.io/dashboard/connections before write capabilities work. Agents cannot complete OAuth; ask the user to connect, then call this tool again.
Cost = 0 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| accounts | No | Active connected X accounts for the authenticated Vee3 account. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavior: it lists connected accounts, returns specific fields (user_id, user_name, display name, avatar URL, default status), and notes zero token cost. It also clarifies that agents cannot complete OAuth, setting user expectations correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose, and each sentence adds distinct value: purpose, return fields, usage hint, and contingency plan. No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and an existing output schema, the description covers all needed context: what the tool does, what it returns, how to use the results, and what to do if no accounts. Cost is also stated. It is fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description adds no parameter details. A score of 4 is appropriate as there is nothing more to explain beyond what the schema already shows (empty properties).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List X (Twitter) accounts connected to the authenticated Vee3 account for write capabilities.' It specifies the verb 'list', the resource 'connected accounts', and the purpose for write capabilities. This distinguishes it from sibling tools that perform write actions like posting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'Use user_id or user_name on future write calls, or omit both to use the default account.' It also instructs what to do when accounts are empty: 'ask the user to connect, then call this tool again.' This clearly covers when and how to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.create_bookmarkAInspect
Bookmark a post for a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Cost = 30 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | Numeric id of the post to bookmark. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| user_id | No | Numeric X user id of the connected account. |
| user_name | No | X handle of the connected account. |
| bookmarked | No | Whether the post is bookmarked after this request. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry burden. States cost (30 tokens) and that it bookmarks, but does not disclose permissions, reversal, or failure conditions (e.g., duplicate bookmark). Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with action, then prerequisite and cost. No fluff, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required param, output schema exists), description adequately covers prerequisite, targeting, and cost. Missing minor behavioral details but sufficient for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. Description adds minimal extra meaning beyond schema; it reiterates the option to omit both for default account, which is already in properties.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Bookmark a post for a connected X account' with a specific verb and resource. It distinguishes from sibling tools like delete_bookmark and get_bookmarks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear prerequisite (call x-twitter.connected_accounts first) and options for targeting accounts, including default. Lacks explicit mention of when not to use or alternatives, but context is sufficient for most cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.create_postAInspect
Publish a post to a connected X account via the official X API (POST /2/tweets).
Call x-twitter.connected_accounts first. If accounts is empty, the user must connect an X account at https://vee3.io/dashboard/connections before posting. Agents cannot complete OAuth; ask the user to connect, then call x-twitter.connected_accounts again.
Pass user_id or user_name to target a specific account, not both. Omit both to use the default connected account.
At least one of text, poll, media, or card_uri is required.
Supports text, polls, media attachments, reply settings, paid partnership disclosure, AI-generated labels, super-follower exclusivity, nullcast posts, cards, communities, and direct-message deep links.
To attach media, upload files with meta-tools.upload_file and the @vee3/upload CLI, then pass file_name values returned by meta-tools.list_uploaded_files in the media array (up to 4 files). Only files listed by list_uploaded_files can be attached. poll, media, and card_uri are mutually exclusive in the X API.
Token pricing: 60 tokens base for text posts. Posts whose text includes a URL are billed 1000 tokens base instead. Attaching only media (an image or video) without a URL in the text does not trigger the URL rate. Each attached image adds 50 tokens. Each attached video adds 150 tokens plus 50 tokens per 5 MB of video size.
X rate limit: 100 POST /2/tweets requests per connected user per 15 minutes. Wait and retry if posting is temporarily blocked.
If X authorization fails, reconnect the account in the Vee3 dashboard. Read the error message when X rejects a post and adjust the request.
| Name | Required | Description | Default |
|---|---|---|---|
| poll | No | Poll object with options (2-4 strings) and duration_minutes (5-10080). | |
| text | No | Post text content. At least one of text, poll, media, or card_uri is required. | |
| media | No | File names from meta-tools.list_uploaded_files to attach (up to 4). Upload with meta-tools.upload_file and @vee3/upload first, then list_uploaded_files to get the stored file_name values. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| card_uri | No | Card URI for the post. Mutually exclusive with poll and media. | |
| nullcast | No | Whether the post is promoted-only and hidden from the public timeline. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| community_id | No | Community id when posting to an X community. | |
| made_with_ai | No | Whether the post contains AI-generated media. | |
| reply_settings | No | Who can reply to the post. | |
| paid_partnership | No | Whether the post is a paid partnership. | |
| share_with_followers | No | Whether to share a community post with followers too. | |
| direct_message_deep_link | No | Deep link that moves the conversation into Direct Messages. | |
| for_super_followers_only | No | Whether the post is exclusive to super followers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | Post text returned by the X API. |
| user_id | No | Numeric X user id of the connected account that published the post. |
| tweet_id | No | Numeric id of the created or edited post. |
| user_name | No | X handle of the connected account that published the post. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description fully discloses the tool's behavior beyond what annotations would provide (none present). It explains the media attachment process, mutual exclusivity of poll, media, and card_uri, token pricing based on content type, rate limits (100 requests per 15 minutes), and error recovery steps (reconnect account, read error messages). This is comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but well-structured, starting with the core action, then prerequisites, usage rules, detailed features, and finally billing/rate limits/errors. It is front-loaded with the most important information. Every section adds value, though it could be slightly more concise. Still, it earns a 4 for effective organization.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (14 parameters, no required ones, output schema present), the description is remarkably complete. It covers prerequisites, account targeting, content requirements, media upload workflow, token pricing, rate limits, error handling, and mentions additional features like reply settings, paid partnership, AI labels, etc. No gaps are apparent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds significant value by explaining the relationships between parameters (e.g., mutual exclusivity of poll, media, card_uri; requirement of at least one of text/poll/media/card_uri; the account targeting logic for user_id/user_name; the media upload prerequisite). It also clarifies token pricing implications tied to parameters like text containing URLs and media attachments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool publishes a post to a connected X account via the official X API. It uses a specific verb ('Publish') and resource ('post to a connected X account'), and distinguishes itself from sibling tools like x-twitter.delete_post, x-twitter.search, etc. by focusing on creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to call x-twitter.connected_accounts first, handles the case of empty accounts, and explains how to target a specific account or use the default. It details the required content (text, poll, media, card_uri) and the mutual exclusivity rules. It provides clear guidance on media upload workflow, token pricing, rate limits, and error handling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.delete_bookmarkAInspect
Remove a bookmarked post for a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Cost = 30 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | Numeric id of the bookmarked post to remove. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| user_id | No | Numeric X user id of the connected account. |
| user_name | No | X handle of the connected account. |
| bookmarked | No | Whether the post is bookmarked after this request. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses removal action and cost (30 tokens), but does not mention potential failures (e.g., if post is not bookmarked) or side effects. With no annotations, somewhat minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the action. No extraneous information; every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main action, prerequisite, account targeting, and cost. Lacks output description, but given simplicity and no nested objects, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by summarizing account targeting logic ('pass user_id or user_name... or omit both'), which reinforces schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Remove a bookmarked post') and the target resource ('for a connected X account'). This distinguishes it from sibling tools like create_bookmark and get_bookmarks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly mentions prerequisite ('Call x-twitter.connected_accounts first') and explains account targeting options (user_id, user_name, or default). Does not provide when-not-to-use or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.delete_postAInspect
Delete a post published by a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Cost = 25 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | Numeric id of the post to delete. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| deleted | No | Whether the post was deleted. |
| user_id | No | Numeric X user id of the connected account. |
| user_name | No | X handle of the connected account. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions cost but does not disclose that deletion is permanent or irreversible. It also lacks info on error handling or rate limits. Without annotations, more transparency is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, makes efficient use of text. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, coverage is good. Includes prerequisite and cost. Could mention permanence of deletion, but overall complete enough for a simple delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all parameters (100% coverage). Description adds clarity on mutual exclusivity of user_id and user_name and default behavior, which goes beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool deletes a post on X (Twitter). It distinguishes from other X tools like create_post or edit_post by specifying 'delete'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to call x-twitter.connected_accounts first, and explains how to target a specific account or use default. No confusion about when to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.edit_postAInspect
Edit a recent post from a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Requires post_id and at least one of text, media, paid_partnership, or made_with_ai.
Edits must be within X's one-hour window after posting. The authenticated X account may need X Premium for API edits. Posts with polls and some other types cannot be edited. Each edit returns a new post_id.
To attach media, upload files with meta-tools.upload_file and pass file_name values from meta-tools.list_uploaded_files.
Token pricing matches x-twitter.create_post: 60 tokens base, 1000 with URL, plus media surcharges.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Updated post text. | |
| media | No | File names from meta-tools.list_uploaded_files to attach (up to 4). Upload with meta-tools.upload_file first. | |
| post_id | Yes | Numeric id of the post to edit. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| made_with_ai | No | Whether the post contains AI-generated media. | |
| paid_partnership | No | Whether the post is a paid partnership. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | Post text returned by the X API. |
| post_id | No | Numeric id of the edited post returned by the X API. |
| user_id | No | Numeric X user id of the connected account. |
| user_name | No | X handle of the connected account. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description discloses important behaviors: edit time window, premium requirement, unsupported post types, token pricing. Does not discuss rate limits or authentication details, but overall informs well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with purpose, each sentence adds value. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers prerequisites, constraints, pixel limitations, token pricing, and media attachment. Output schema exists, so return values are covered. Complete for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage, and description adds value by explaining requirement for at least one of text, media, etc., and media upload process. Adds meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Explicitly states 'Edit a recent post from a connected X account.' Uses specific verb and resource, clearly distinguishing from sibling tools like create_post, delete_post, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear sequence (call connected_accounts first), account targeting options, required fields, and constraints (one-hour window, X Premium, cannot edit polls). Mentions alternatives for media upload. Could be more explicit about when not to use, but covers key guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.get_bookmarksAInspect
Fetch bookmarked posts for a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Returns raw X API data with tweet objects, expanded authors, media, polls, and places. Use next_cursor to fetch the next page.
Cost = 25 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of bookmarks to return (default 20, max 100). | |
| cursor | No | Pagination cursor from a previous response next_cursor field. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Bookmarked posts returned by the X API. |
| includes | No | Expanded users, media, polls, places, and referenced posts. |
| next_cursor | No | Cursor for the next page of bookmarks, when available. |
| result_count | No | Number of bookmarks in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes output: 'raw X API data with tweet objects, expanded authors, media, polls, and places.' Also notes cost of 25 tokens and pagination. No annotations provided, so description carries full burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded first sentence. Each sentence serves a purpose: purpose, prerequisite, targeting, output, pagination, cost. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a 4-param tool with 0 required. Covers prerequisites, account targeting, output content, pagination, cost. Output schema exists, so return values need not be detailed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds context about user_id/user_name targeting, default account behavior, and limit default (20). Adds value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Fetch bookmarked posts for a connected X account.' Distinguishes from sibling tools like create_bookmark and delete_bookmark.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to call x-twitter.connected_accounts first, and explains how to target a specific account or use default. Mentions pagination with next_cursor. No explicit when-not-to-use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.reply_to_postAInspect
Reply to a post from a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Requires reply_to_post_id. Supports the same content options as x-twitter.create_post: text, polls, media, reply settings, paid partnership disclosure, AI-generated labels, super-follower exclusivity, nullcast posts, cards, communities, and direct-message deep links.
At least one of text, poll, media, or card_uri is required, same as x-twitter.create_post.
Token pricing matches x-twitter.create_post.
| Name | Required | Description | Default |
|---|---|---|---|
| poll | No | Poll object with options (2-4 strings) and duration_minutes (5-10080). | |
| text | No | Reply text content. At least one of text, poll, media, or card_uri is required. | |
| media | No | File names from meta-tools.list_uploaded_files to attach (up to 4). | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| card_uri | No | Card URI for the post. Mutually exclusive with poll and media. | |
| nullcast | No | Whether the post is promoted-only and hidden from the public timeline. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| community_id | No | Community id when posting to an X community. | |
| made_with_ai | No | Whether the post contains AI-generated media. | |
| reply_settings | No | Who can reply to the post. | |
| paid_partnership | No | Whether the post is a paid partnership. | |
| reply_to_post_id | Yes | Numeric id of the post to reply to. | |
| share_with_followers | No | Whether to share a community post with followers too. | |
| exclude_reply_user_ids | No | User ids to exclude from the reply mention list. | |
| direct_message_deep_link | No | Deep link that moves the conversation into Direct Messages. | |
| for_super_followers_only | No | Whether the post is exclusive to super followers. | |
| auto_populate_reply_metadata | No | Whether to automatically populate reply metadata. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | Reply text returned by the X API. |
| post_id | No | Numeric id of the reply post. |
| user_id | No | Numeric X user id of the connected account. |
| user_name | No | X handle of the connected account. |
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 mentions token pricing and content options, but does not disclose potential side effects, permission requirements, rate limits, or error handling. The behavior is straightforward, but more detail would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (8 sentences) with clear structure: main action, prerequisite, account selection, content options, required parameters, token pricing. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (not shown), description need not explain return values. It covers purpose, prerequisites, parameter constraints, and references sibling for details. Could mention error conditions but overall adequate for a reply tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter descriptions. The description adds value by summarizing content options, stating required combinations, and explaining user_id/user_name usage. It goes beyond repeating schema info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The name and description clearly state 'Reply to a post from a connected X account', specifying the action (reply) and resource (post). It distinguishes from siblings like x-twitter.create_post (creates new post) and x-twitter.repost_post (repost).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to call x-twitter.connected_accounts first, explains account selection, and requires reply_to_post_id. It references x-twitter.create_post for content options and states required combination of parameters. However, it does not explicitly state when not to use this tool (e.g., alternatives like tweet_replies).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.repost_postAInspect
Repost a post for a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Returns the reposted post_id and retweeted status.
Cost = 75 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | Numeric id of the post to repost. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| post_id | No | Numeric id of the reposted post. |
| user_id | No | Numeric X user id of the connected account. |
| retweeted | No | Whether the post was reposted. |
| user_name | No | X handle of the connected account. |
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 cost (75 tokens), return value (reposted post_id and retweeted status), but does not mention auth needs beyond 'connected account' or potential rate limits. Still good for a simple action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the main purpose. Every sentence adds value: purpose, prerequisite usage, return info, cost. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and presence of output schema, the description sufficiently covers what the tool does, prerequisites, parameter handling, return value, and cost. No information gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no additional parameter info beyond the schema, which already describes each parameter well. No extra meaning provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Repost a post for a connected X account.' The verb 'repost' and resource 'post' are specific. Distinguishes from sibling 'x-twitter.unrepost_post' which is the inverse.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to call x-twitter.connected_accounts first, and explains how to target accounts via user_id/user_name with exclusion rules. Lacks explicit 'when not to use' but the sibling indicates alternative actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.searchAInspect
Search public X (Twitter) posts matching a keyword or phrase.
Returns a timeline of matching posts with tweet text, engagement counts, author info, media, and quoted tweets. Use cursor from next_cursor to fetch the next page. search_type controls ranking: Top (default), Latest, Media, People, or Lists.
Cost = 10 tokens.
| 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 are provided, so the description must carry the full burden. It mentions pagination via cursor, ranking modes, and token cost, which is helpful. However, it does not discuss rate limits, authentication requirements, or whether the operation is read-only (though likely safe).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: four sentences total, each serving a clear purpose (purpose, return info, pagination and ranking, cost). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately lists return fields (tweet text, engagement, author info, media, quoted tweets). It covers pagination mechanics and ranking options. Missing some details like error handling or empty result behavior, but sufficient for a simple search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining search_type behavior ('controls ranking: Top (default), Latest, Media, People, or Lists') and cursor usage for pagination, going beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'search' and the resource 'public X (Twitter) posts matching a keyword or phrase.' It is specific and distinct from sibling tools, as no other x-twitter tool serves the same function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives (e.g., x-twitter.user_timeline). It implies usage for keyword searches but lacks when-not advice or comparison to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.tweet_infoAInspect
Fetch metadata for a single public X (Twitter) post by its numeric tweet id.
Returns tweet text, engagement counts (likes, retweets, replies, quotes, bookmarks), language, conversation id, author profile summary, and attached media when present.
Cost = 5 tokens.
| 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?
The description details the return fields (text, engagement counts, language, etc.) and cost, but does not mention limitations like public-only posts or rate limits. No annotations provided, so description carries full burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences covering purpose, return details, and cost, with no wasted words. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, the description adequately summarizes returns. However, it could mention that the tweet must be public and perhaps note error conditions for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description 'Numeric tweet id.' The description reinforces this but adds no new semantic information beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fetch' and resource 'metadata for a single public X post', distinguishing it from siblings like tweet_replies and user_timeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context (fetch by numeric tweet id) but does not explicitly mention when to use alternatives or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.tweet_repliesAInspect
Fetch the latest replies for a single X (Twitter) post by its numeric tweet id.
Returns a timeline of reply tweets with text, engagement counts, author info, media, and in-reply-to metadata. Use cursor from next_cursor to fetch the next page.
Cost = 10 tokens.
| 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?
With no annotations, the description must convey behavioral traits. It indicates a read operation (fetch), describes the return contents (text, engagement, author info, media, metadata), and mentions pagination. It could be improved by explicitly stating it's non-destructive and does not require authentication beyond what is already assumed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences: action, return description, and pagination/cost. It is front-loaded and every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and full parameter schema, the description covers the essential: what it does, what it returns, pagination, and cost. It lacks details like maximum page size or ordering, but these are likely in the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description for 'id' repeats the schema's 'Numeric tweet id' and for 'cursor' repeats 'Pagination cursor from a previous response next_cursor field'. No additional meaning is added beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch the latest replies for a single X (Twitter) post by its numeric tweet id', specifying the verb (fetch), resource (replies of a post), and unique identifier (tweet id). It distinguishes from sibling tools like tweet_info (which gets tweet details) and user_timeline (which gets user's tweets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as tweet_info or search. It only mentions pagination but does not compare with other tools or state prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.unrepost_postAInspect
Remove a repost for a connected X account.
Call x-twitter.connected_accounts first. Pass user_id or user_name to target a specific account, or omit both to use the default account.
Cost = 50 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | Numeric id of the original post to unrepost. | |
| user_id | No | Numeric X user id from x-twitter.connected_accounts. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. | |
| user_name | No | X handle from x-twitter.connected_accounts, with or without a leading @. Pass user_id or user_name to target a specific account, not both. Omit both to use the default account. |
Output Schema
| Name | Required | Description |
|---|---|---|
| user_id | No | Numeric X user id of the connected account. |
| retweeted | No | Whether the post is still reposted after this request. |
| user_name | No | X handle of the connected account. |
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 includes the cost (50 tokens) and hints at idempotency by implying the action removes a repost. However, it does not mention required permissions, side effects (e.g., whether the original post is affected), error conditions, or rate limits. The information is useful but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four succinct sentences: action, prerequisite, parameter usage, and cost. It front-loads the essential purpose and avoids any superfluous text. Every sentence contributes value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core action, authentication prerequisite, and parameter usage. An output schema exists so return values need not be explained. It is adequate for a straightforward mutation tool, though it could mention error handling or confirmation. Overall, it provides sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 3 parameters with full descriptions. The description adds no new semantic information beyond restating the account targeting logic already present in the schema. Therefore, it meets the baseline for high schema coverage without further clarification.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Remove a repost' for a connected X account. It explicitly names the resource (repost) and the verb (remove), distinguishing it from sibling tools like 'repost_post' (create repost) and 'delete_post' (delete original post).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite: 'Call x-twitter.connected_accounts first.' It also explains how to target a specific account or use the default. However, it does not explicitly state when not to use this tool or mention alternatives (e.g., if the user wants to delete the original post instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.user_infoAInspect
Fetch public profile metadata for an X (Twitter) user.
Provide user_name (handle without @) or rest_id (numeric user id). At least one is required. When rest_id is set, it takes precedence over user_name. Returns display name, bio, follower counts, verification flags, avatar URLs, and related profile fields.
Cost = 5 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| rest_id | No | Numeric X user id (rest_id). When provided, user_name is ignored. | |
| user_name | 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 empty array from the provider when not applicable). |
| 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?
No annotations provided, so description carries full burden. It implies a read-only operation ('Fetch'), mentions cost, but does not explicitly state non-destructive nature, authentication needs, or behavior on errors. Adequate but could be more explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise with 4 sentences covering purpose, parameters, return fields, and cost. Front-loaded with purpose. Could be slightly more structured but remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema, so return info not required, but description still lists key fields. Covers parameter behavior. Lacks error handling or rate limit info but sufficient for a simple read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds value by clarifying that at least one parameter is required (despite schema marking optional), the precedence of rest_id over user_name, and the format of user_name (without @).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (Fetch) and resource (public profile metadata for an X user), distinguishing it from sibling tools like tweet_info or search which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context on when to use (when needing user profile metadata) and detailed parameter guidance (both parameters, precedence, requirement). Lacks explicit exclusions or alternative suggestions but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x-twitter.user_timelineAInspect
Fetch a user's recent X (Twitter) posts, pinned tweet, and profile summary.
Provide user_name (handle without @) or rest_id (numeric user id). At least one is required. When rest_id is set, it takes precedence over user_name. Returns timeline entries with tweet text, engagement counts, media, quoted tweets, and author info. Use cursor from next_cursor to fetch the next page.
Cost = 10 tokens.
| 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, user_name is ignored. | |
| user_name | 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?
No annotations are provided, so the description bears full responsibility. It discloses the tool is read-only, returns timeline data, and costs 10 tokens. It mentions pagination. However, it lacks details on authentication requirements, rate limits, or whether it works for protected accounts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with four sentences. The main purpose is front-loaded. No redundant information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main functionality, parameter usage, pagination, and output summary. It mentions pinned tweet, which is a distinguishing feature. Given that an output schema exists, the description is sufficiently complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all parameters with descriptions. The description adds value by clarifying that at least one of user_name or rest_id is required, rest_id takes precedence, and how to use cursor for pagination. This goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a user's recent X posts, pinned tweet, and profile summary. The verb 'Fetch' is specific and the resource is precisely identified. It distinguishes from siblings like user_info (profile info) and search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use (fetch user timeline), how to identify the user (user_name or rest_id), and precedence (rest_id over user_name). It also provides pagination instructions. However, it does not explicitly exclude use cases or compare with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.channel_detailsAInspect
Fetch metadata for a public YouTube channel by channel id or URL.
Accepts a channel id (for example UCJ5v_MCY6GNUBTO8-D3XoAg) or common YouTube channel URLs (for example https://www.youtube.com/@WWE). Returns title, username, description, subscriber and view counts, join date, verification flags, avatar and banner images, keywords, and external links.
Cost = 10 tokens.
| 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 provided, so description carries full burden. It lists return fields and mentions it works for public channels, and includes a cost. However, it does not disclose behavior on missing channels or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each with a clear purpose: purpose, input/output details, cost. Front-loaded and no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, description's listing of return fields is extra. It covers input and output clearly. Minor gap: no mention of authentication or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage, and description adds examples but largely repeats schema. Baseline 3 is appropriate as description reinforces without adding significant new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches metadata for a public YouTube channel, specifying the input types (channel id or URL). It distinguishes from sibling tools like youtube.channel_search and youtube.channel_videos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying the resource and input format, but lacks explicit when-to-use vs alternatives or exclusion criteria. Context is clear enough for most cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.channel_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.
Cost = 10 tokens.
| 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?
Despite no annotations, the description discloses key behaviors: it returns video entries and a cursorNext for pagination, and states a cost of 10 tokens. There is no contradiction with missing annotations, and it adds value beyond what annotations would provide.
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 with no wasted words. The main action is front-loaded, and each sentence serves a purpose—purpose, input format, 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?
Given the presence of an output schema, the description adequately covers essential aspects: input format, pagination mechanism, and cost. It is sufficient for an AI agent to use the tool correctly without needing additional explanation.
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 description adds meaning beyond the schema by specifying that channel_id must be a bare ID (not a URL) and that cursor uses cursorNext from prior responses. Since schema coverage is 100%, this additional context elevates the score above baseline.
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 function: search public videos on a YouTube channel by keyword or phrase. It distinguishes itself from general YouTube search and channel video listing by specifying 'on a YouTube channel' and referencing a channel ID, making 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 provides specific usage guidance: accepts a bare channel ID (not a URL), and explains pagination with cursorNext. While it doesn't explicitly contrast with sibling tools like youtube.search or youtube.channel_videos, the context is implicit and clear enough for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.channel_videosAInspect
Fetch a paginated list of videos from a public YouTube channel by its channel id.
Accepts a channel id (for example UCg6gPGh8HU2U01vaFCAsvmQ) or common YouTube channel URLs (for example https://www.youtube.com/@ChrisTitusTech). Use cursor from a prior response for the next page.
Cost = 10 tokens.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous response cursor field. | |
| channel_id | Yes | YouTube channel id or URL (for example UCg6gPGh8HU2U01vaFCAsvmQ or https://www.youtube.com/@ChrisTitusTech). |
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?
With no annotations, the description carries the full burden. It mentions pagination, cost (10 tokens), and that the channel must be public. However, it does not disclose potential errors, rate limits, or authentication requirements, which would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no wasted words. It front-loads the main purpose, then provides key details (input examples, pagination, cost). Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 2 parameters and an output schema (not shown). The description covers input format, pagination behavior, cost, and public channel constraint. It is nearly complete; only minor aspects like response order are omitted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description restates the examples already present in the schema for channel_id and cursor. It adds no new semantic value beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and resource 'paginated list of videos from a public YouTube channel by its channel id'. It distinguishes this tool from sibling tools like youtube.channel_details and youtube.search by specifying channel-based video listing and pagination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like youtube.search or youtube.channel_search. The description only implies its use for fetching videos from a specific channel but does not provide context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.playlist_detailsAInspect
Fetch metadata for a public YouTube playlist by playlist id.
Returns title, description, creator summary, video and view counts, thumbnails, badges, and last updated timestamps.
Cost = 10 tokens.
| 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?
With no annotations, the description carries full burden. It lists return fields and cost (10 tokens), implying a read-only operation. However, no mention of authentication or rate limits, but sufficient for a simple fetch.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: action, return list, cost. Front-loaded and efficient with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with an output schema, the description covers input, output summary, and cost. No missing critical information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so description adds minimal value beyond the schema. The schema already describes playlist_id; description only reiterates 'by playlist id'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Fetch metadata for a public YouTube playlist by playlist id', specifying the verb, resource, and identifier method. Distinguishes from sibling tools like youtube.channel_details and youtube.video_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly indicates usage for public playlists only, but does not explicitly state when not to use or mention alternatives. The context is clear given sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.searchAInspect
Search public YouTube content by keyword or phrase.
Returns matching result cards, estimated result count, and spelling suggestions.
Use filter parameters to apply multiple YouTube search filters:
upload_date: Last hour, Today, This week, This month, This year
content_type: Video, Channel, Playlist, Movie
duration: Under 4 minutes, 4 - 20 minutes, Over 20 minutes
features: Live, 4K, HD, Subtitles/CC, Creative Commons, 360°, VR180, 3D, HDR, Location, Purchased (multiple allowed)
sort_by: Relevance, Upload date, View count, Rating
Filter values are matched case-insensitively. Only one option per group applies except features, which accepts multiple labels.
When a requested filter cannot be applied, the API returns the best-effort results available so far and includes unappliedFilters with the labels that were skipped.
Use cursor with the same query to paginate: pass cursorNext from a prior response. Filter parameters and cursor cannot be combined.
Check didYouMean when the query may be misspelled.
Cost = 20 tokens.
| 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?
No annotations exist, so the description fully covers behavior: case-insensitive filters, best-effort with unappliedFilters, cursor pagination restriction, cost in tokens, and didYouMean. This is comprehensive for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear opening, bullet-like filter list, and concise statements on pagination and fallbacks. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description doesn't need to detail return formats. It covers search scope, filters, pagination, cost, and error handling (unappliedFilters). Complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant value: explains filter groups, multiple features, case-insensitivity, and cursor constraints. It enriches understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches public YouTube content by keyword/phrase and lists return types. It does not explicitly differentiate from sibling tools like youtube.channel_search, but the purpose is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides detailed guidance on filter usage, pagination with cursor, and handling of unapplied filters. Lacks explicit comparison to alternatives, but the context is sufficient for correct invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.search_autocompleteAInspect
Get YouTube search autocomplete suggestions for a partial query.
Returns the normalized query and an array of suggested search phrases. Optional language and location codes localize suggestions (defaults: en, US).
Cost = 8 tokens.
| 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 provided, so description carries full burden. It discloses the return format (normalized query + array of suggested phrases), optional parameters (language, location) with defaults, and token cost (8 tokens). This is comprehensive for a simple read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loading the main purpose. No extraneous information, and every sentence adds value. It is perfectly concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity, presence of output schema, and complete parameter documentation, the description adequately covers the tool's behavior. It explains return values, parameter effects, and cost, leaving no significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by stating the effect of language and location parameters: 'localize suggestions (defaults: en, US)'. This goes beyond the schema's parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets YouTube search autocomplete suggestions for a partial query. The verb 'Get' and resource 'YouTube search autocomplete suggestions' are specific, and the tool name includes 'youtube' to distinguish it from sibling 'google-search.autocomplete'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for YouTube autocomplete queries but does not explicitly state when to use this tool versus alternatives like google-search.autocomplete. However, the context of YouTube vs Google search is clear enough for an agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.video_commentsAInspect
Fetch top-level comments for a public YouTube video by its 11-character video id.
Returns comment text, author summary, vote and reply counts, pinned status, total comment count, and cursorNext for the next page.
Use sort_by to choose comment order:
sort_by: Top comments, Newest first
Sort values are matched case-insensitively.
Use cursor with the same video_id to paginate: pass cursorNext from a prior response. sort_by and cursor cannot be combined.
Cost = 15 tokens.
| 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?
Discloses that it fetches top-level comments (not replies), requires public video, and explains pagination via cursorNext. Mentions sort values are case-insensitive. Lacks mention of rate limits or error handling, but good overall.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise paragraphs, front-loaded with purpose and return fields, followed by parameter usage and cost. No superfluous text, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters and output schema, the description covers return fields, pagination, sorting, and cost. It is sufficient for the agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining cursor usage from previous response, sort value case-insensitivity, and that video_id is not a URL. Enhances clarity beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches top-level comments for a public YouTube video by its 11-character video ID. It specifies the return content and distinguishes from sibling tools like youtube.video_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use sort_by and cursor, including their incompatibility. It also gives cost. No explicit when-not-to-use or alternatives, but context clear given no other comment tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube.video_detailsAInspect
Fetch metadata for a public YouTube video by video id or URL.
Accepts a bare 11-character video id (for example PuQFESk0BrA) or common YouTube watch, youtu.be, Shorts, and embed URLs. Returns title, description, view count, duration, publish date, channel id, category, keywords, and thumbnails.
Cost = 10 tokens.
| 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?
With no annotations, the description bears full responsibility. It notes the tool works on 'public' videos and mentions cost (10 tokens). However, it does not disclose rate limits, authorization requirements, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no waste. First states purpose, second details input formats, third lists outputs and cost. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no nested objects) and the presence of an output schema, the description adequately covers input, output, and cost. It is complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'video_id' already has a good schema description. The description adds value by enumerating accepted formats (bare id, youtu.be, watch, Shorts, embed URLs), which goes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it 'Fetch metadata for a public YouTube video by video id or URL.' It specifies the verb (fetch) and resource (metadata for a video), distinguishing it from sibling tools like channel_details or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear input format guidance (bare 11-character id or common URL forms). It does not explicitly state when not to use it, but the context of sibling tools makes its specific purpose clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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!