Wavix
Server Details
Hosted MCP server for the Wavix telecom platform: SMS, voice, 2FA, SIP, numbers, 10DLC, CDRs.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- Wavix/wavix-mcp-server
- GitHub Stars
- 0
- Server Listing
- Wavix
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 3.3/5 across 122 of 122 tools scored. Lowest: 2.3/5.
Tools are organized by resource with clear prefixes (e.g., api_keys_, call_control_, sms_and_mms_), making their purposes distinct. However, with 122 tools, some agents might struggle to differentiate between similar list/export operations (e.g., cdrs_list vs cdrs_list_all) without careful reading of descriptions.
All tool names follow a consistent pattern of resource_action (e.g., api_keys_create, call_control_answer), using snake_case. This makes the tool set predictable and easy to navigate.
With 122 tools, the server exposes a very large number of operations. While the domain (telecom platform) is broad, this count exceeds the 25-tool threshold for 'too many,' potentially overwhelming agents and slowing tool selection.
The tool set covers a wide range of telecom operations: number management, calls, SMS, billing, 10DLC, 2FA, etc. Minor gaps exist (e.g., no tool to update call recordings), but core workflows are well-supported.
Available Tools
122 toolsapi_keys_activateAInspect
Activates an API key. Once activated, the API key can be used for authentication again.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | API key ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses basic behavior (activation enables authentication) but lacks information on prerequisites, side effects, or error conditions. It doesn't reveal that the key must be in a deactivated state.
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 short, focused sentences that front-load the action and provide essential context without any 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 tool with one parameter and an output schema, the description covers the core function. However, it could be improved by mentioning prerequisites (e.g., key must exist and be deactivated) or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter `id` is described as 'API key ID' in both the schema and the description, with no additional semantic information provided. Schema coverage is 100%, 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 uses the specific verb 'Activates' and resource 'API key', clearly distinguishing this from sibling tools like `api_keys_deactivate` and `api_keys_create`. It states the outcome: the key can be used for authentication again.
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?
Usage is implied (reactivate a deactivated key) but no explicit when-to-use or when-not-to-use guidance is provided. No alternatives are mentioned, though siblings are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
api_keys_createBInspect
Creates an API key. Optional IP restrictions can be configured to limit access.
| Name | Required | Description | Default |
|---|---|---|---|
| calls | No | Access call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests. | |
| label | No | API key label. | |
| trunks | No | View, create, update, and delete SIP trunks and their settings. | |
| two_fa | No | View 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes. | |
| account | No | View and update account profile information and timezone. | |
| billing | No | Access invoices, balance, payment methods, usage reports, and billing settings, including payment method updates. | |
| numbers | No | View, buy, release, and configure phone numbers, browse inventory, and manage the cart. | |
| messages | No | Access message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs. | |
| webhooks | No | List, create, and delete webhooks. | |
| campaigns | No | View campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links. | |
| is_active | No | Indicates whether the API key should be activated upon creation. | |
| validator | No | View number validation results and trigger single or bulk validation or HLR lookup requests. | |
| embeddable | No | Manage widget tokens, including listing, viewing, creating, updating, and deleting them. | |
| recordings | No | List, download, and delete call recordings. | |
| subaccounts | No | Manage subaccounts: list and view them, create, update, and suspend them. | |
| permitted_ips | No | List of permitted IP addresses for this API key. Each must be a valid IPv4 address. Required when `is_restriction` is true. | |
| is_restriction | No | Indicates whether to restrict API key access by IP address. When enabled, only requests from IP addresses listed in `permitted_ips` are allowed. | |
| is_scopes_enabled | No | When `true`, scope fields below are enforced. When `false` (default), the key has full access. Omitted scope fields default to `{ allow: none }`, so with `is_scopes_enabled: true` and no scopes set the key has no access. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | API key ID. |
| calls | Yes | Access call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests. |
| label | Yes | API key label. |
| value | Yes | API key value. |
| trunks | Yes | View, create, update, and delete SIP trunks and their settings. |
| two_fa | Yes | View 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes. |
| account | Yes | View and update account profile information and timezone. |
| billing | Yes | Access invoices, balance, payment methods, usage reports, and billing settings, including payment method updates. |
| numbers | Yes | View, buy, release, and configure phone numbers, browse inventory, and manage the cart. |
| messages | Yes | Access message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs. |
| webhooks | Yes | List, create, and delete webhooks. |
| campaigns | Yes | View campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links. |
| is_active | Yes | Indicates whether the API key is active. |
| validator | Yes | View number validation results and trigger single or bulk validation or HLR lookup requests. |
| created_at | Yes | Creation date and time in ISO 8601 format. |
| embeddable | Yes | Manage widget tokens, including listing, viewing, creating, updating, and deleting them. |
| recordings | Yes | List, download, and delete call recordings. |
| subaccounts | Yes | Manage subaccounts: list and view them, create, update, and suspend them. |
| last_used_at | Yes | Timestamp of the most recent authenticated request made with this key. |
| permitted_ips | Yes | List of permitted IP addresses. If `is_restriction` is false, an empty list means no IP restrictions. If `is_restriction` is true, an empty list prevents all requests. |
| is_restriction | Yes | Indicates whether IP restrictions are enabled. When enabled, the API key works only from IP addresses in `permitted_ips`. |
| is_scopes_enabled | Yes | When `true`, the key is restricted to the permissions defined in the scope fields below. When `false`, the key has full access. |
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 of behavioral disclosure. It only states creation and optional IP restrictions, omitting details on response, idempotency, 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 a single sentence that is concise and front-loaded with the core action. However, it could be slightly expanded for completeness 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 18 optional parameters, the description is too sparse. It fails to provide a high-level overview of the tool's capabilities, such as scoping or activation, which are covered in the schema but not summarized.
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 3. The description adds minimal value beyond the schema, only mentioning optional IP restrictions, which the schema already documents thoroughly.
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 'Creates' and the resource 'API key', and mentions optional IP restrictions for additional context. It distinguishes itself from sibling tools like api_keys_list or api_keys_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?
The description provides no guidance on when to use this tool versus alternatives like api_keys_activate or api_keys_deactivate. It lacks any context about prerequisites or use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
api_keys_deactivateAInspect
Deactivates an API key. Once deactivated, the API key cannot be used for authentication.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | API key ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It discloses authentication impact but does not mention reversibility via 'api_keys_activate' or other 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?
Two short sentences with no extraneous information. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with output schema, the description covers the core behavior. Could mention it is reversible via the sibling activate tool, but still adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the only parameter 'id', which has a description. The description adds no further 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 action (deactivates an API key) and the consequence (cannot be used for authentication). It distinguishes from siblings like 'api_keys_activate' and 'api_keys_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?
No explicit guidance on when to use this tool vs alternatives like 'api_keys_delete' or 'api_keys_activate'. The description implies temporary deactivation but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
api_keys_deleteAInspect
Deletes an API key. This action is permanent.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | API key ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Highlights 'This action is permanent', disclosing irreversibility. No annotations exist, so description adequately conveys destructive nature for a simple deletion.
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 fluff; front-loaded purpose and key behavioral info.
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 one param and output schema present; description covers core action and permanence, sufficient for agent 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 covers the single parameter with description 'API key ID'; description adds no extra meaning beyond schema (100% coverage). Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Deletes an API key' matching the tool name, and the sibling tools include create, activate, deactivate, list, so the action is distinct.
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 on when to use this tool versus alternatives like deactivate; the description only states what it does without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
api_keys_listBInspect
Returns a list of API keys.
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Label to filter API keys. Partial match supported. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the basic function ('Returns a list of API keys') and does not mention read-only nature, authentication requirements, rate limits, or any side effects. This lack of detail leaves the agent uninformed about critical behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at one sentence, with no wasted words. However, it might be too brief to fully inform. Nonetheless, for a simple tool, this level of conciseness is appropriate and earns a high score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description does not need to explain return values, but it omits important context such as default behavior (returns all keys if no filter), pagination, or ordering. For a simple tool, this is a notable gap in 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 schema_description_coverage is 100% (the sole parameter 'label' is described in the schema). The description adds no additional meaning beyond the schema, so the baseline score of 3 applies. The description does not compensate with extra context or examples.
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 returns a list of API keys. It uses a specific verb ('Returns') and resource ('list of API keys'), and it is easily distinguishable from sibling tools (e.g., api_keys_create, api_keys_delete) that perform different actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. However, the purpose is straightforward (listing API keys), and the sibling tools have clearly different actions, so usage is implied. No exclusions or alternative scenarios are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
billing_invoices_downloadAInspect
Get a download URL for a billing invoice PDF.
Returns {download_url, content_type, status_code, note} instead of the
binary PDF stream. Fetch download_url to obtain the file.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses that the tool returns a structured response (download_url, content_type, etc.) instead of the binary PDF, and instructs to fetch the URL separately. This adds behavioral context beyond the schema, though it omits auth or rate limit details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that front-load the main purpose and add essential behavioral details. No redundant words or phrases.
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 one parameter, no annotations, and an output schema exists (covering return format), the description provides sufficient context: it explains the return structure and the need to fetch the URL. It does not cover error cases or edge scenarios, but overall it's 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?
The input schema has one required integer 'id' with no description and schema coverage 0%. The description does not explicitly explain the 'id' parameter, though the tool name and context imply it is an invoice ID. The description adds minimal value beyond the schema, missing a chance to clarify the identifier's source or format.
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 'Get a download URL for a billing invoice PDF', which precisely identifies the action and resource. It distinguishes from sibling billing_invoices_list by emphasizing the download URL retrieval rather than list functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the workflow: use this tool to get a URL, then fetch that URL to obtain the PDF. It provides clear context but does not explicitly mention when to use alternatives or prerequisites like obtaining the invoice ID from billing_invoices_list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
billing_invoices_listBInspect
Returns a paginated list of financial statements.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number to retrieve. | |
| per_page | No | Number of records per page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only mentions pagination but omits details on sorting, filtering, side effects, or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with no waste, but could be more informative without adding length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema so return values are not required, but missing defaults, max per_page, ordering, and filtering 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 description coverage is 100%, so baseline is 3; description adds no extra meaning beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool returns a paginated list of financial statements, distinct from sibling tools like download or transactions.
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 on when to use this tool vs alternatives such as billing_invoices_download or billing_transactions_list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
billing_transactions_listBInspect
Returns a paginated list of financial transactions.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number to retrieve. | |
| type | No | Filter by transaction type. | |
| to_date | Yes | End date in `YYYY-MM-DD` format. | |
| payments | No | Indicates whether to include account top-ups only. | |
| per_page | No | Number of records per page. | |
| from_date | Yes | Start date in `YYYY-MM-DD` format. | |
| details_contains | No | Transaction details for filtering. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states 'returns a paginated list' with no mention of side effects, authentication needs, rate limits, or data freshness. This is insufficient for a data retrieval 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 a single concise sentence with no waste. It could be slightly improved by front-loading the resource type, but it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description doesn't need to explain return values. However, it lacks details on pagination behavior or how parameters like type affect results. The description is adequate but minimal.
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% description coverage, so the schema already defines all 7 parameters. The description adds no extra meaning beyond 'paginated list,' earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it 'Returns a paginated list of financial transactions,' specifying the verb and resource. It distinguishes from siblings like billing_invoices_list and sub_accounts_transactions_list by focusing on generic financial transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., billing_invoices_list). The description lacks context on prerequisites, filters, or scenarios that make this tool the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_cities_listAInspect
Returns a list of cities for countries where
has_provinces_or_states is false.
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | Country ID. | |
| text_enabled_only | No | Indicates whether to return only cities with text-enabled numbers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only mentions the filtering condition, omitting details like pagination, rate limits, required permissions, or whether the output is sorted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no unnecessary words. Every part is relevant and 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 low complexity (2 parameters, output schema exists), the description covers the essential filtering condition. It could mention that the required country parameter further limits results, but overall is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters described in the schema. The description adds no extra meaning beyond the schema, meeting the baseline for 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 it returns a list of cities for countries without provinces/states, using a specific condition. It distinguishes itself from siblings like buy_regions_list and buy_region_cities_list, which handle countries with provinces/states or specific region cities.
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 only for countries where has_provinces_or_states is false, but does not explicitly state when to use this tool versus alternatives like buy_region_cities_list. No exclusion criteria or context about prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_countries_listBInspect
Returns a list of countries where phone numbers are available.
| Name | Required | Description | Default |
|---|---|---|---|
| text_enabled_only | No | Indicates whether to return only countries with text-enabled phone numbers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden of behavioral disclosure. It only states the basic operation, with no information on side effects, authentication needs, rate limits, pagination, or whether the tool is read-only. This is inadequate for safe agentic use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is appropriately sized for a simple tool and front-loaded with the key action and resource.
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 (1 optional parameter, no required parameters) and the existence of an output schema, a minimal description might suffice. However, it lacks context about sorting, formatting of country identifiers, or any special behavior. The completeness is adequate but leaves 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 schema has 100% description coverage for its single parameter, so the baseline is 3. The description adds no additional meaning beyond what the schema provides. The parameter purpose is clear from the schema, so the tool description does not need to elaborate.
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 'returns' and the resource 'list of countries where phone numbers are available'. It distinguishes the tool from sibling tools like buy_cities_list and buy_regions_list by specifying the resource (countries) and context (phone number availability).
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. It does not mention any prerequisites, exclusions, or when not to use it. The agent must infer usage from context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_numbers_listBInspect
Returns a paginated list of phone numbers available for purchase.
| Name | Required | Description | Default |
|---|---|---|---|
| city | Yes | City ID. | |
| page | No | Page number to retrieve. | |
| country | Yes | Country ID. | |
| per_page | No | Number of records per page. | |
| text_enabled_only | No | Indicates whether to return only text-enabled phone numbers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure. It only mentions pagination, but does not reveal safety (read-only), rate limits, authentication needs, or how 'available' is determined. This is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the action and result. Every word is necessary and it conveys the core purpose 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?
Given the tool has 5 parameters and an output schema, the description adequately states the basic purpose but lacks context about parameter interplay (e.g., country and city required) and pagination behavior. It meets minimal completeness but could be improved.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have descriptions in the schema (coverage 100%), so the baseline is 3. The description does not add extra meaning beyond what the schema already provides, such as the effect of text_enabled_only or the requirement for country and city.
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 returns a paginated list of phone numbers available for purchase. It distinguishes from sibling tools like buy_cities_list and my_numbers_list by specifying 'available for purchase'.
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 usage context is provided. The description does not indicate when to use this tool versus alternatives, nor does it specify prerequisites or filtering conditions beyond what is in the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_region_cities_listAInspect
Returns a list of cities in the specified region for countries where has_provinces_or_states is true.
| Name | Required | Description | Default |
|---|---|---|---|
| region | Yes | Region ID. | |
| country | Yes | Country ID. | |
| text_enabled_only | No | Indicates whether to return only cities with text-enabled numbers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 of transparency. It discloses a behavioral constraint (only works for countries with provinces/states), but does not elaborate on side effects, permissions, or response behavior beyond what is implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that conveys all necessary information without extraneous words. It is 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 the tool's complexity (3 parameters, output schema present), the description is sufficient. It does not need to explain return values since 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?
Input schema has 100% description coverage, so the baseline is 3. The description adds no additional meaning beyond the schema parameters, but the schema itself is well-documented.
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 returns a list of cities in a specified region, with a condition that applies only to countries where 'has_provinces_or_states' is true. This is specific and distinguishes it from siblings like buy_cities_list which likely returns all cities without region filtering.
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 (to get cities in a region for countries with provinces/states), but does not explicitly state when not to use or name alternative tools. The context is clear enough for an agent to deduce its purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_regions_listAInspect
Returns a list of regions (states or provinces) for countries where has_provinces_or_states is true.
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | Country ID. | |
| text_enabled_only | No | Indicates whether to return only regions with text-enabled numbers. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description is minimal and does not disclose behavioral traits such as authentication requirements, rate limits, or behavior when country has no provinces. Only states 'returns a list'.
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 sentence, front-loaded with action and resource, no extraneous information. 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?
Tool has output schema, so description need not detail return values. For a simple listing tool, the description is sufficient but could mention behavior with invalid country IDs or empty results.
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 documented in the input schema. Description adds no additional meaning beyond what is already in the schema, so 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 returns a list of regions filtered by a condition (has_provinces_or_states is true). The verb 'returns' and resource 'list of regions' are specific. It distinguishes from sibling tools like buy_countries_list and buy_cities_list.
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 when needing regions for countries with provinces/states but does not explicitly state when not to use or provide alternatives. The condition helps but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_answerBInspect
Answers an inbound call. Optionally initiate media streaming upon answering.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| stream_url | No | WebSocket URL to stream the call. | |
| stream_type | No | ||
| call_recording | No | Indicates whether the call should be recorded. | |
| stream_channel | No | ||
| call_transcription | No | Indicates whether the call should be transcribed after it ends. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It mentions answering and optional streaming but omits critical details like required call state, side effects, return values, or error conditions. The description is insufficient for a safe understanding of 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 consists of two short sentences, each serving a distinct purpose: stating the primary action and noting an optional feature. It is front-loaded and efficient, with no extraneous 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?
Despite having an output schema and six parameters, the description lacks context about error handling, call state requirements, streaming behavior, and what happens after answering. It is too brief given the tool's complexity and the presence of sibling tools.
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 67% schema description coverage, the schema already describes most parameters. The description adds no new meaning beyond hinting at streaming via 'optionally initiate media streaming', but does not elaborate on parameter usage or relationships. It provides marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool answers an inbound call and optionally initiates media streaming. It distinguishes itself from sibling tools like call_control_create (which creates calls) and call_control_streams_create (which manages streams).
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?
While the description implies usage for inbound calls, it does not explicitly state when to use this tool versus alternatives, nor does it provide conditions or prerequisites for answering. The context of 'inbound call' gives some guidance but lacks depth.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_audio_playCInspect
Plays audio in an active call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| audio_file | Yes | URL of the audio file to play |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose side effects, permissions, or behavior when call is not active, leaving significant gaps.
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 sentence with no waste, perfectly concise 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?
Despite output schema presence, the description lacks necessary context about return values, side effects, and call state requirements for a call control tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions; description adds no extra meaning beyond schema, 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 'Plays audio in an active call' with specific verb and resource, but does not differentiate from sibling 'call_control_audio_stop'.
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 on when to use this tool vs alternatives like call_control_audio_stop; missing context about prerequisites or call state.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_audio_stopBInspect
Stops audio playback in an active call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fails to disclose behavioral details such as prerequisites (call must be active), side effects (what happens to audio state), or error conditions (no audio playing). The minimal text adds no depth beyond the 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?
The description is a single, concise sentence that clearly communicates the tool's purpose. It is front-loaded with the verb and resource, and no unnecessary words are present.
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 low complexity (one parameter, output schema present), the description is adequate but could be improved by mentioning the relationship to 'call_control_audio_play' or documenting the response. It covers the essential action but leaves room for better 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% for the single parameter, which already describes 'uuid' as 'Call ID.' The description adds no additional meaning, so it meets the baseline expectation without improvement.
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 'stops' and resource 'audio playback in an active call,' making the action unmistakable. It distinguishes from the sibling tool 'call_control_audio_play' by implication of stopping vs. playing.
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 (e.g., call_control_update or call_control_delete). It implies usage only when audio playback is active, but lacks explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_collectCInspect
Collects DTMF input in an active call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| prompt | No | Prompt to play before collecting digits. Play a prerecorded audio file or use Wavix Text-To-Speech. | |
| timeout | No | Timeout for digit collection in seconds. | |
| max_digits | No | Maximum number of digits to collect. | |
| max_attempts | No | Maximum number of attempts. | |
| termination_character | No | DTMF character that ends input collection. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden of behavioral disclosure. It does not mention whether the tool blocks execution, how it returns collected digits, or any side effects. The output schema exists but is not referenced, leaving behavior opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. Every word earns its place; it is the epitome of 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 complexity of the tool (nested prompt object, timeout, max_digits, etc.), the description is too minimal. It fails to explain the overall process (play prompt, collect digits, return) or mention the output, leaving the agent underinformed.
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 all parameters already have clear descriptions. The tool description adds no additional meaning beyond the schema; it only restates the overall purpose. 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's purpose: 'Collects DTMF input in an active call.' It uses a specific verb ('collects') and resource ('DTMF input'), distinguishing it from siblings like 'call_control_answer' or 'call_control_audio_play', though it does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites (e.g., call must be active and answered) or when not to use it. The description lacks context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_createCInspect
Starts an outbound call.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Destination number in E.164 format | |
| tag | No | Call metadata | |
| from | Yes | Caller ID. Must be an active or verified phone number in your account. | |
| timeout | No | The ring timeout, in seconds, before the call is considered unanswered. | |
| recording | No | Specifies whether to record the call | |
| callback_url | Yes | The callback URL where Wavix sends the call status updates | |
| voicemail_detection | No | Specifies whether the AMD is turned on for the call |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | No | Destination number |
| tag | No | Call metadata |
| from | No | Caller ID |
| uuid | No | Call ID |
| direction | No | Call direction - inbound or outbound |
| event_time | No | Date and time of the latest event |
| event_type | No | The latest call event |
| call_started | No | Date and time when the call started |
| call_answered | No | Date and time when the call was answered |
| event_payload | No | Event-specific data |
| call_completed | No | Date and time when the call ended |
| machine_detected | No | Indicates whether the call was answered by an answering machine |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only says 'Starts an outbound call.' It does not disclose required parameters (e.g., callback_url), side effects, or initiation 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 a single sentence with no wasted words, but it is likely too brief to be considered well-structured for a tool with 7 parameters.
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 an output schema, the description omits key context such as required fields and call flow, making it insufficient for a complex tool with 7 parameters and no annotations.
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 meaning beyond what the input schema already provides for 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?
Description concisely states 'Starts an outbound call,' which clearly identifies the tool's action and resource. However, it does not distinguish this from sibling tools like call_control_answer or call_control_update.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description implies usage for starting calls but offers no exclusions or context about prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_deleteBInspect
Ends an active call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states the basic action. No details on side effects, irreversible changes, required permissions, error states, or potential outcomes beyond ending the call. With no annotations, the burden is higher and unmet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no wasted words. However, it could be improved by including more context without becoming verbose.
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, return values are covered, but the description lacks crucial context about preconditions (e.g., call must be active), side effects, and error handling. It is too minimal for a tool that mutates state.
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 one parameter well-documented in the schema. The description adds no extra meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Ends') and object ('active call'). It effectively distinguishes this tool from siblings like call_control_answer or call_control_update by specifying deletion of an active call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like call_control_update or call_control_create. There are no preconditions or contextual hints about when ending a call is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_getCInspect
Returns a call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| call | Yes | |
| success | Yes | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description carries the full burden. It states 'Returns a call.' but does not disclose any behavioral traits (e.g., side effects, permissions, rate limits). 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?
Extremely concise at three words, front-loading the core function. No wasted words, though slightly under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (1 param, output schema exists), the description is adequate but lacks usage context relative to sibling tools. No example or response details are needed due to 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?
Input schema has 100% coverage with one parameter (uuid) described as 'Call ID.' The description adds no further meaning, meeting the baseline expectation.
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 'Returns a call.' with a specific verb and resource. However, it does not differentiate from sibling tools like call_control_list, but the purpose is 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?
No guidance on when to use this tool vs alternatives like call_control_list or call_control_get. Lacks explicit context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_listCInspect
Returns a list of active calls.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| calls | Yes | List of calls |
| success | Yes | Indicates whether the request was successful. |
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 does not disclose traits like what constitutes 'active', authentication needs, rate limits, or pagination behavior. 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?
The description is a single sentence, efficient and front-loaded. It conveys the core purpose without waste, though it could be slightly more informative.
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 zero parameters and existence of an output schema, the description is minimally adequate. However, it lacks details on output format, filtering, or sorting, making it only partially complete for a 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?
Input schema has no parameters, so schema description coverage is 100% trivially. Baseline score of 3 applies; description adds nothing about parameters since none 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 returns a list of active calls, using a specific verb and resource. However, it does not differentiate from sibling listing tools like call_recording_list or cdrs_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as call_control_get (single call) or call_control_create. The description lacks context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_streams_createCInspect
Starts call media streaming.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| stream_url | Yes | WebSocket URL for call streaming | |
| stream_type | Yes | ||
| stream_channel | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates that the request was successful |
| stream_id | No | Stream ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations available; the description does not disclose any behavioral traits like required call state (must be active), stream lifecycle, error handling, or side effects. It simply says 'starts' without details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded. However, given the tool's significance with 4 parameters, it could benefit from a brief extension 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?
Despite having an output schema, the description lacks contextual information such as prerequisites (e.g., call must exist), behavior on failure, or what the return value represents. The tool's purpose is clear but incomplete for an agent to use safely.
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 50% per context, meaning some parameters lack adequate explanation. The tool description adds no extra meaning beyond the field names listed in the schema, and does not clarify the roles of parameters like stream_type or stream_channel beyond their enum values.
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 'Starts call media streaming' gives a verb and resource but is vague. It doesn't differentiate from siblings like call_control_audio_play or call_control_collect, which might also involve media. A more specific description would clarify it initiates a WebSocket stream.
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 on when to use this tool vs alternatives such as call_control_audio_play for playing audio or call_control_collect for collecting input. No prerequisites or contextual hints provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_streams_deleteBInspect
Stops call media streaming.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| stream_uuid | Yes | Stream ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It mentions 'stops' but omits any side effects, requirements (e.g., active stream), or error conditions, which is insufficient for a destructive 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 extremely concise (3 words) and front-loaded. While it lacks detail, it wins on brevity with no filler. A slight deduction for being too sparse.
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 value description is unnecessary. The tool is simple, but the description lacks context such as stream state requirements or potential errors, making it minimally 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 description coverage is 100%, and the parameter descriptions ('Call ID.' and 'Stream ID.') are clear. The description adds no extra meaning beyond the schema, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'stops' and the resource 'call media streaming'. It distinguishes itself from the sibling 'call_control_streams_create' which starts streaming, 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 no information on when to use this tool versus alternatives, such as stopping a stream versus other call control actions. No prerequisites or context are given, leaving the agent without guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_control_updateAInspect
Updates an active call. Only the tag field can be modified.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | Call metadata. | |
| uuid | Yes | Call ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | Yes | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that only the tag field is updatable, but does not mention any side effects, authorization requirements, or whether the update is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It efficiently conveys the tool's purpose and constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description does not need to explain return values. It adequately covers the key behavioral constraint but lacks error conditions or preconditions for a 'call active' state.
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 that the 'tag' is the only modifiable field and that 'uuid' identifies the call, which is not explicitly stated in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates an active call and specifies that only the 'tag' field is modifiable, distinguishing it from other call control actions like create, delete, or get.
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 by stating only the tag field can be modified, guiding agents not to attempt other fields. However, it lacks explicit when-to-use or when-not-to-use guidance, such as the call must be active.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_recording_deleteBInspect
Deletes a call recording.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Recording ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request succeeded. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only says 'Deletes,' which implies destruction, but fails to mention irreversibility, required permissions, or impacts on associated 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 a single sentence with no redundancy. However, it is perhaps too terse, lacking information that could be added without significant length.
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 delete tool with one parameter and an output schema, the description is minimally adequate. However, it omits important context such as idempotency, error handling, or success/failure behavior.
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 'id' with description 'Recording ID.' The description adds no additional meaning beyond the schema, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Deletes a call recording,' which clearly identifies the action (deletes) and the resource (call recording). It distinguishes itself from sibling tools like 'call_recording_get' and 'call_recording_list' by specifying a destructive action.
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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives, nor does it mention any prerequisites or cautionary notes (e.g., irreversible action).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_recording_getAInspect
Get a download URL for a call recording audio file.
Returns {download_url, content_type, status_code, note} instead of the
binary audio stream. Fetch download_url to obtain the MP3.
| Name | Required | Description | Default |
|---|---|---|---|
| call_uuid | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although no annotations are provided, the description discloses that the tool returns metadata instead of a binary stream and that a separate fetch 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?
Two concise sentences front-loaded with the purpose and key behavior, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema listing return fields, the description covers the essential behavior and next steps for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the single parameter 'call_uuid' is self-explanatory. The description does not add extra detail about the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it gets a download URL for a call recording audio file, distinguishing it from siblings like call_recording_delete or call_recording_list.
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 the return value and instructs to fetch the download_url separately, but does not explicitly state when to use this tool vs alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_recording_listBInspect
Returns a paginated list of call recordings.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Destination phone number for filtering. Full or partial input accepted. | |
| from | No | Originating phone number for filtering. Full or partial input accepted. | |
| page | No | Page number to retrieve. | |
| to_date | No | End date in `YYYY-MM-DD` format. | |
| per_page | No | Number of records per page. | |
| call_uuid | No | Call ID for filtering. | |
| from_date | No | Start date in `YYYY-MM-DD` format. | |
| sip_trunks | No | List of SIP trunk logins to filter outbound calls. |
Output Schema
| Name | Required | Description |
|---|---|---|
| invalid | No | An invalid recording filter response |
| pagination | No | |
| recordings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral info. It only mentions 'paginated', which is minimal. No disclosure of ordering, rate limits, or response structure.
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?
A single sentence is concise and front-loaded, but it lacks structure and could include additional context. Still, 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 8 optional parameters and no output schema details in description, the description is adequate but does not fully compensate for the lack of annotation context. Sibling list tools might need more differentiation.
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 extra meaning beyond what the schema already provides for each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns a paginated list of call recordings, with a specific verb and resource. It distinguishes itself from siblings like call_recording_get (single) and call_recording_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?
No guidance on when to use this vs alternatives. The description does not mention filtering or pagination context beyond the schema, nor does it exclude any scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_webhooks_createAInspect
Creates a call webhook. Wavix sends POST callbacks for on-call and post-call events.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Webhook URL to send call events to. | |
| event_type | Yes | Allowed values: `on-call`, `post-call`. - `on-call`: Sends real-time status updates when a call starts, is answered, and ends. - `post-call`: Sends a callback after the call ends with disposition, duration, and cost. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | Webhook URL |
| success | Yes | |
| event_type | Yes | Type of call events |
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 that Wavix sends POST callbacks for specific events, which is useful but does not address side effects, idempotency, authentication needs, or error handling. Adequate for a straightforward creation tool 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 very concise with two sentences that convey essential information. Every word serves a purpose, with no redundancy or 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?
Given the presence of an output schema (though not shown), the description is reasonably complete for a simple creation tool. It covers the core functionality and event types. It could mention what the response contains or error scenarios, but the output schema likely covers return values.
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 value by explaining the callback behavior for event types. It clarifies that 'on-call' and 'post-call' trigger POST callbacks, which ties the parameters to the tool's purpose. This goes beyond the schema's technical 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 'Creates a call webhook' with a specific verb and resource, and further explains that Wavix sends POST callbacks for 'on-call' and 'post-call' events. This directly distinguishes it from sibling tools like call_webhooks_delete or call_webhooks_list.
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, nor does it mention prerequisites or conditions. However, the context of sibling tools and the simple CRUD nature implies usage for creating new webhooks. Lacks explicit when-not-to-use or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_webhooks_deleteBInspect
Deletes a call webhook.
| Name | Required | Description | Default |
|---|---|---|---|
| event_type | Yes | Use `post-call` to stop receiving post-call callbacks. Use `on-call` to stop receiving real-time call status updates. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description only states the obvious deletion action, with no disclosure of side effects, irreversibility, or authorization needs. Annotations are absent, so description fails to add behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and to the point, though it could include additional context without becoming verbose.
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 delete with one parameter and an output schema, the description is minimally adequate but lacks context on success/error handling or expected behavior.
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 meaning, so description adds no extra value 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?
Description clearly states the action (deletes) and the resource (call webhook), distinguishing it from siblings like call_webhooks_create and call_webhooks_list.
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 on when to use this tool vs alternatives, no prerequisites or exclusions provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
call_webhooks_listAInspect
Returns a list of configured call webhooks. Wavix sends POST callbacks for on-call and post-call events.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | List of call webhooks configured for the phone number. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It mentions the events and that it returns a list, but does not clarify if the operation is read-only, permission requirements, or any rate limits. The output schema fills some gaps, but the description is brief.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose and relevant event details, front-loading the key information without any 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 (no parameters, output schema exists), the description is complete enough. It states what the tool returns and the events involved, which fully informs an 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?
The input schema has zero parameters with 100% coverage, so the baseline is 4. The description adds no parameter-level detail, but that is acceptable given no 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 that the tool returns a list of configured call webhooks and specifies the events ('on-call' and 'post-call'), distinguishing it from sibling tools like call_webhooks_create and call_webhooks_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?
The description implies that the tool is used to retrieve a list of webhooks, but it does not explicitly state when to use it versus alternatives or provide exclusions, though the purpose is clear given the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cart_addBInspect
Adds phone numbers to the cart.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | List of phone numbers to add to the cart. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must disclose behavioral traits. It only states 'adds', missing details on side effects, limits, or return behavior. The output schema exists but is not referenced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. It is front-loaded and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description is adequate but lacks behavioral context such as duplicate handling or limits. It does not explain the output.
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 description is minimal. The description adds no additional meaning beyond the schema, meeting the baseline for 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 action ('adds'), the resource ('phone numbers'), and the target ('to the cart'). It effectively distinguishes from sibling tools like cart_remove or cart_checkout.
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 on when to use this tool vs alternatives. There is no mention of prerequisites (e.g., whether a cart must already exist) or exclusions (e.g., duplicate handling).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cart_checkoutAInspect
Checks out the cart. Activation and monthly fees are deducted from the account balance.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | List of phone numbers to check out from the cart. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description mentions fee deduction but lacks details on idempotency, destructive nature, or failure modes. Output schema may provide return info but not described.
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?
One sentence with no wasted words; front-loaded with core action. Highly 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?
Lacks explanation of prerequisites (e.g., required balance, items in cart) and side effects beyond fees. Output schema exists but description does not provide additional 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 covers 100% of parameters with description; description does not add meaning beyond schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action ('Checks out the cart') and resource, and distinguishes from sibling tools like cart_add, cart_get, cart_remove.
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?
Implies usage (checkout with fee deduction) but does not explicitly state when to use vs alternatives or prerequisites like sufficient balance or cart items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cart_getBInspect
Returns the cart.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states 'Returns the cart,' omitting behavioral traits like authentication requirements, read-only nature, or idempotency. This is minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single two-word sentence with no waste. Every word serves a purpose, and it is appropriately sized for a simple retrieval 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?
Given no parameters, an output schema exists, and it is a simple retrieval, the description is nearly complete. It lacks explicit scope (e.g., 'current user's cart'), but overall it suffices.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters with 100% coverage, so no additional parameter information is needed. The description adds nothing beyond the schema, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Returns the cart' is a clear verb+resource statement. It effectively distinguishes from sibling tools like cart_add, cart_remove, and cart_checkout by specifying the retrieval 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?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, context, or when not to use it, leaving the agent with no strategic direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cart_removeBInspect
Removes phone numbers from the cart.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | List of phone numbers to remove. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states the basic mutation (removal) without detailing effects like error handling, idempotency, or authorization needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is front-loaded and efficient, though extremely brief.
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 operation and existence of output schema, the description is minimally adequate but lacks context about error conditions or behavior when items are not in cart.
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 the single parameter 'ids' with a clear description. The tool description adds no additional meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool removes phone numbers from the cart, distinguishing it from siblings like cart_add and cart_get. It uses a specific verb ('removes') and resource ('phone numbers from the cart').
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 vs alternatives (e.g., cart_get or cart_checkout), nor does it mention any prerequisites or edge cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_getCInspect
Returns call details.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| show_transcription | No | Indicates whether to include transcription. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose any behavioral traits such as read-only nature, side effects, or rate limits. The description adds no value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (3 words) but lacks necessary detail. It could be improved by including the purpose of the UUID and the optional transcription parameter without adding significant length.
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. However, it fails to mention that the tool requires a UUID and that transcription can be optionally included. Completeness is adequate but minimal.
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% description coverage, with both parameters clearly described (uuid as 'Call ID' and show_transcription as 'Indicates whether to include transcription'). The description adds no further parameter context, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Returns call details' clearly states the verb and resource. It implies retrieval of a single call's information, distinguishing it from sibling tools like cdrs_list (list) or cdrs_search (search). However, it does not explicitly differentiate itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description lacks context on prerequisites (e.g., needing a UUID) or scenarios where other tools might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_listCInspect
Returns a paginated list of CDRs.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End date in `YYYY-MM-DD` format. | |
| from | Yes | Start date in `YYYY-MM-DD` format. | |
| page | No | Page number to retrieve. | |
| type | Yes | Call direction to filter results. Allowed values: `placed`, `received`. | |
| uuid | No | Call ID to filter results. | |
| per_page | No | Number of records per page. | |
| sip_trunk | No | SIP trunk login to filter outbound calls. Ignored for inbound calls. | |
| to_search | No | Destination phone number for filtering. Full or partial input accepted. | |
| disposition | No | Call disposition to filter results. Allowed values: `answered`, `busy`, `rejected`, `failed`, `all`. | |
| from_search | No | Originating phone number for filtering. Full or partial input accepted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description must carry the full burden. It only mentions pagination and does not disclose any behavioral traits such as authentication requirements, rate limits, or data mutation (none as it's 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?
Description is very concise, with one sentence. However, it could be slightly expanded to include key filtering capabilities without sacrificing clarity.
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 large number of parameters (10) and the presence of sibling tools with overlapping functionality, the description is too sparse. It does not explain the scope of the list (e.g., all CDRs or filtered by user) or how pagination works.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters clearly. The description adds no additional meaning beyond 'paginated list', meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool returns a paginated list of CDRs, which distinguishes it from other CDR-related tools like cdrs_get (single record) and cdrs_search (search). However, it does not differentiate from cdrs_list_all, which likely also lists all CDRs.
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 on when to use this tool versus siblings like cdrs_list_all or cdrs_search. No context about prerequisites or ideal use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_list_allBInspect
Returns CDRs in NDJSON format for bulk export.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End date in `YYYY-MM-DD` format. | |
| from | Yes | Start date in `YYYY-MM-DD` format. | |
| page | No | Page number to retrieve. | |
| type | Yes | Call direction to filter results. Allowed values: `placed`, `received`. | |
| uuid | No | Call ID to filter results. | |
| per_page | No | Number of records per page. | |
| sip_trunk | No | SIP trunk login to filter outbound calls. Ignored for inbound calls. | |
| to_search | No | Destination phone number for filtering. Full or partial input accepted. | |
| disposition | No | Call disposition to filter results. Allowed values: `answered`, `busy`, `rejected`, `failed`, `all`. | |
| from_search | No | Originating phone number for filtering. Full or partial input accepted. |
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 NDJSON format and bulk export but does not disclose pagination behavior, rate limits, or non-destructive nature. The schema implies pagination via page and per_page parameters, but the description adds insufficient behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words, but 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 10 parameters and no output schema, the description is too sparse. It fails to explain the NDJSON format structure or pagination details, which are critical for a bulk export 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 does not add any parameter-specific additional 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 returns CDRs in NDJSON format for bulk export, specifying the resource (CDRs), action (returns), format (NDJSON), and use case (bulk export). It distinguishes from sibling tools like cdrs_list (likely JSON) and cdrs_get (single CDR).
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 it's for bulk export but does not explicitly state when to use this tool vs alternatives like cdrs_list or cdrs_search. No exclusions or alternative guidance are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_retranscribeCInspect
Transcribes a recorded call.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. | |
| language | No | Language. | |
| webhook_url | No | Webhook URL to receive status updates. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | Yes | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states 'Transcribes a recorded call' without mentioning that this is a mutation (write operation), likely asynchronous, or what permissions are needed. The presence of a webhook_url parameter hints at async behavior, but this is not clarified. Important behavioral aspects are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, but it is under-specified. Important details about the tool's behavior and usage are missing, making it less useful. A concise description should be information-dense; here, brevity sacrifices completeness.
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 (3 parameters, output schema present, likely async mutation), the description does not provide sufficient context. It fails to explain the workflow (e.g., that transcription may be triggered and results sent via webhook) or how it interacts with related tools. The agent is left without enough information to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already provides adequate descriptions for each parameter (e.g., uuid 'Call ID.', language 'Language.', webhook_url 'Webhook URL to receive status updates.'). The tool description adds no additional semantic value beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Transcribes a recorded call' uses a verb and resource, but is vague. It does not indicate that this is a retranscription (as suggested by the name) or distinguish it from sibling tools like speech_analytics_retranscribe. The purpose is clear but lacks 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?
No guidance is provided on when to use this tool versus alternatives such as speech_analytics_retranscribe or cdrs_transcription_get. The description does not mention prerequisites or typical scenarios, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_searchCInspect
Searches call transcriptions for specific keywords or phrases.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End date for call search in `YYYY-MM-DD` format. | |
| from | Yes | Start date for call search in `YYYY-MM-DD` format. | |
| page | Yes | Page number to retrieve. | |
| type | Yes | Search transcriptions by call type. | |
| uuid | No | Call ID. | |
| per_page | Yes | Number of records per page. | |
| sip_trunk | No | SIP trunk login to filter outbound calls. Ignored for inbound calls. | |
| to_search | No | Destination phone number to filter results. Accepts full or partial number. | |
| disposition | No | ||
| from_search | No | Originating phone number to filter results. Accepts full or partial number. | |
| min_duration | No | Minimum call duration in seconds. | |
| transcription | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden. It only states it searches transcriptions, but doesn't disclose required parameters, pagination behavior, or nested filter structure. Agent would not know about mandatory date range or that transcription filter is optional.
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 but underspecified for a tool with 12 parameters and nested objects. One sentence fails to convey key constraints (required fields, filter options). Conciseness is not helpful at the expense of clarity.
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 (12 params, nested transcription filter, output schema), the description is inadequate. It omits context about required vs optional filters, pagination, and the rich filtering capabilities.
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 83%, so many parameters have descriptions. The description adds no additional semantic value beyond what's in the schema. Baseline 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it searches call transcriptions for keywords/phrases, distinguishing it from other CDR tools like cdrs_list or cdrs_get. However, it doesn't specify that it also filters by date range and call type, which are key aspects of the 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?
No guidance on when to use this tool vs. alternatives like cdrs_list, cdrs_get, or cdrs_transcription_get. Does not mention that date range and call type are required, or that transcription filter is optional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdrs_transcription_getBInspect
Returns a recorded call transcription.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Call ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only states the basic function without disclosing behavioral traits like read-only nature, error conditions (e.g., missing transcription), or performance implications.
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 sentence, front-loaded with key information. 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?
The tool is simple with one parameter and an output schema, so the description is functionally adequate but lacks any extra context about the output format or typical 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?
The input schema covers 100% of parameters with clear description ('Call ID'). The tool description adds no additional value beyond the schema, meeting the baseline for 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 action ('Returns') and the resource ('a recorded call transcription'), which is specific and distinct from sibling tools like cdrs_get or cdrs_retranscribe.
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 on when to use this tool over alternatives (e.g., cdrs_get for call details, cdrs_search for searching). The description lacks context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_shortener_createCInspect
Creates a short link.
| Name | Required | Description | Default |
|---|---|---|---|
| link | Yes | Target URL to shorten. | |
| phone | No | Phone number for the short link. | |
| fallback_url | No | Fallback URL for expired or invalid links. | |
| utm_campaign | No | UTM campaign name for tracking insights. | |
| expiration_time | No | Expiration date and time in ISO 8601 format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits, but it only states the basic action. It does not mention side effects, authentication needs, rate limits, or idempotency, leaving agents blind to important operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (one sentence), but this brevity sacrifices necessary detail. For a creation tool with 5 parameters, more information is warranted.
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 could be shorter, but it is still too sparse. It does not explain the purpose or use cases of the short link, leaving agents underinformed.
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 well-described parameters. The tool description adds no additional meaning beyond the schema, resulting in baseline performance.
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 'Creates a short link' clearly states the verb and resource, and it is distinct from sibling tools like link_shortener_metrics_list. However, it does not elaborate on the specific type of short link or context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, or any prerequisites. The description lacks context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_shortener_metrics_listCInspect
Returns short link metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End date in `YYYY-MM-DD` format. | |
| from | Yes | Start date in `YYYY-MM-DD` format. | |
| page | No | Page number to retrieve. | |
| phone | No | Phone number for filtering. | |
| per_page | No | Number of records per page. | |
| utm_campaign | No | UTM campaign name for filtering. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description solely bears the burden of behavioral transparency. It only says 'returns', which implies read-only, but lacks specifics on side effects, auth needs, pagination, 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 a single sentence, which is concise, but it is too minimal and could be expanded with useful context without being verbose. It earns its place but lacks substance.
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 an output schema and fully described parameters, the description does not explain the overall behavior (e.g., that it returns a list, supports date filtering, etc.). For a tool with 6 parameters, it is incomplete.
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% parameter description coverage, so the schema already documents parameters. The description adds no extra meaning beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it returns short link metrics, which is a specific resource, but it does not differentiate from sibling tools like link_shortener_create or other metrics tools. The purpose is clear but lacks sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites or context such as requiring a link shortener account.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_deleteCInspect
Releases phone numbers back to stock.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | List of phone number IDs to release. | |
| dids | No | List of phone numbers to release. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Minimal disclosure; does not mention that this is irreversible or that it removes numbers from active use. No behavioral traits beyond the 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?
Single sentence with zero waste. 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?
For a delete tool, lacks critical context about irreversibility, effects on associated services, and when to use. Despite output schema existing, description is too sparse.
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 covers both parameters with descriptions; the description adds no additional meaning. 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 tool releases phone numbers back to stock, but it could be more explicit about being a delete operation.
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 on when to use this tool versus alternatives like my_numbers_update or my_numbers_list. Missing prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_destinations_updateCInspect
Updates inbound call routing for phone numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | List of phone number IDs to update. | |
| destinations | Yes | Inbound call destinations to apply. | |
| sms_relay_url | Yes | Callback URL for inbound SMS and MMS messages. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 of disclosing behavioral traits. It merely states 'updates' without revealing side effects, authorization needs, rate limits, or whether the update is additive or replacement. This is insufficient for a mutation 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 a single sentence with no wasted words. It is appropriately concise for its scope.
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 an output schema (according to context signals), the description is too brief for the tool's complexity. It omits important context such as whether the update overwrites existing destinations, how the sms_relay_url interacts with routing, or any constraints. An agent may not have enough information to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the schema already documents all parameters. The description adds no extra meaning beyond the schema, meeting the baseline expectation but not exceeding it.
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 'Updates' and the resource 'inbound call routing for phone numbers', making the tool's purpose specific. However, it does not explicitly differentiate from sibling tools like my_numbers_update or my_numbers_sms_update, which may also modify number settings.
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 lacks any guidance on when to use this tool versus alternatives (e.g., my_numbers_update, my_numbers_sms_update) or conditions for use. No prerequisites, exclusions, or context are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_getCInspect
Returns a phone number.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Phone number ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Phone number ID. |
| city | Yes | City or rate center where the phone number originates. |
| cnam | Yes | Indicates whether CNAM is enabled. |
| added | Yes | Date and time the phone number was purchased in ISO 8601 format. |
| label | Yes | Label assigned to the phone number. |
| state | No | State where the phone number originates. For non-US numbers, this field may be null. |
| number | Yes | Phone number. |
| status | Yes | Phone number status. `active` means the number can receive and place calls; `inactive` means it cannot. |
| country | Yes | Country where the phone number originates. |
| per_min | Yes | Price per inbound minute in USD. |
| seconds | Yes | Total inbound call duration in seconds for current month. |
| channels | Yes | Maximum number of concurrent inbound calls. |
| free_min | No | Number of free inbound minutes. |
| documents | Yes | Uploaded documents for the phone number. |
| unlimited | No | Indicates whether usage is unlimited. |
| paid_until | Yes | Date until which the number is paid. |
| destination | Yes | Inbound call destinations set for the phone number. |
| monthly_fee | Yes | Monthly fee in USD. |
| sms_enabled | Yes | Indicates whether SMS is enabled. |
| domestic_cli | Yes | Indicates whether the number can be used as the Caller ID for local calls. |
| require_docs | Yes | Documents required to activate the phone number. |
| sms_relay_url | Yes | Callback URL for inbound SMS and MMS messages. |
| activation_fee | Yes | One-time activation fee in USD. |
| call_status_url | No | Callback URL for call status updates. |
| country_short_name | Yes | Two-letter ISO country code. |
| transcription_enabled | Yes | Indicates whether transcription is enabled. |
| call_recording_enabled | Yes | Indicates whether call recording is enabled. |
| transcription_threshold | Yes | Minimum call duration in seconds to trigger transcription. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description is too brief to disclose behavioral traits like read-only nature, error handling, or rate limits. The full burden is on the description but it adds minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but under-specified. It is front-loaded but lacks sufficient detail to be truly helpful.
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 low complexity and an output schema, the description omits what 'phone number' refers to in domain context. Incomplete for an agent selecting this 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 with a basic description for 'id'. The tool description adds no extra parameter meaning, meeting baseline but not exceeding.
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 states verb 'Returns' and resource 'phone number', but does not explicitly indicate it returns a specific phone number by ID. It fails to differentiate from sibling tools like my_numbers_list.
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 on when to use this tool versus alternatives such as my_numbers_list or my_numbers_update. Missing context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_listAInspect
Returns a paginated list of phone numbers on the account. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number to retrieve. | |
| label | No | Label for filtering. | |
| search | No | Phone number or partial number for filtering. | |
| city_id | No | City or rate center for filtering. | |
| per_page | No | Number of records per page. | |
| label_present | No | Indicates whether to return only numbers with or without labels. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | List of phone numbers on the account. |
| doc_types | Yes | Documents required to activate phone numbers. |
| pagination | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It discloses pagination behavior, default page size, and navigation parameters. However, it omits details like read-only nature, rate limits, or response structure, which are not critical for a simple list but could 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 two sentences, highly concise, and front-loaded with the core purpose. Every word adds value, with no wasted space.
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 tool is a straightforward list operation, the description sufficiently covers pagination and filtering hints. It is complete for an agent to understand the tool's basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining pagination defaults and navigation, but does not elaborate on other parameters (label, search, city_id, label_present) which are already documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Returns a paginated list' and the resource 'phone numbers on the account', effectively distinguishing it from siblings like 'buy_numbers_list' (for purchasing numbers) and 'my_numbers_get' (single number 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?
The description implies usage for listing existing account numbers and explains pagination defaults. However, it does not explicitly specify when not to use or mention alternatives like 'buy_numbers_list' for browsing available numbers, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_papers_uploadAInspect
Uploads a document for one or more phone numbers. Uploaded files must meet the following requirements:
Allowed formats: PNG, JPG, JPEG, TIFF, BMP, or PDF
Maximum file size: 10 MB
Files can't be password protected
PDF files must not contain digital signatures
| Name | Required | Description | Default |
|---|---|---|---|
| doc_id | No | Specifies the type of document required to activate the phone number. Possible values are: `1` - Proof of identity, `2` - Proof of address, `3` - Proof of business registration. | |
| did_ids | No | List of phone number IDs. | |
| doc_attachment | No | Document file to upload. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses important file constraints (allowed formats, size limit, password and signature restrictions) but does not cover other behaviors like error handling, rate limits, or authorization needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences: the first states the purpose, and the second lists requirements in a bulleted format. No extraneous words, and critical info 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?
Given the tool's complexity (3 parameters, no required fields, output schema exists), the description adequately covers file constraints but does not explain response behavior or how the uploaded document relates to phone numbers. Completeness is moderate.
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 beyond the schema by detailing file requirements not present in parameter descriptions. This compensates for the high coverage baseline, providing extra guidance for the doc_attachment parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Uploads a document for one or more phone numbers,' providing a specific verb and resource. Among siblings like ten_dlc_brand_evidence_upload, this tool is distinct in targeting phone numbers, so differentiation is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists file requirements (formats, size, no password/digital signatures) but does not explicitly guide when to use this tool vs alternatives or mention any prerequisites. Usage context is implied but not fully articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_sms_updateBInspect
Enables or disables inbound SMS support for a phone number.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Phone number ID. | |
| sms_enabled | No | Indicates whether inbound SMS is enabled. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request succeeded. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the basic behavior (enable/disable SMS) but lacks details on side effects (e.g., cost implications, immediate effect) or idempotency. The description is adequate but could provide more behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that efficiently conveys the core purpose. While brevity sacrifices some guidance, every word earns its place. Could be improved with a sentence on usage context, but it remains non-wasteful.
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 optional parameters) and presence of an output schema, the description is minimally adequate. It leaves out context such as prerequisites (e.g., number must have SMS capability) or return value details, but the output schema compensates partially.
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 both parameters have clear descriptions (phone number ID and boolean flag). The description adds no additional meaning beyond the schema, simply restating the tool's purpose. Baseline score of 3 is appropriate as the schema does the heavy lifting.
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 enables or disables inbound SMS support for a phone number, using a specific verb and resource. It distinguishes itself from sibling tools like my_numbers_update (which updates other number properties) and sms_and_mms_messages_send (which sends messages).
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. There are many sibling tools (e.g., my_numbers_update, sms_and_mms_messages_send), but no when-to-use or when-not-to-use context is given. No prerequisites or limitations are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_numbers_updateCInspect
Updates a phone number.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Phone number ID. | |
| sms_relay_url | No | Callback URL for inbound messages. Set to `null` to remove routing. | |
| call_status_url | No | Callback URL for call status updates. | |
| transcription_enabled | No | Indicates whether transcription is enabled. | |
| call_recording_enabled | No | Indicates whether call recording is enabled. | |
| transcription_threshold | No | Transcription threshold in seconds. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Phone number ID. |
| city | Yes | City or rate center where the phone number originates. |
| cnam | Yes | Indicates whether CNAM is enabled. |
| added | Yes | Date and time the phone number was purchased in ISO 8601 format. |
| label | Yes | Label assigned to the phone number. |
| state | No | State where the phone number originates. For non-US numbers, this field may be null. |
| number | Yes | Phone number. |
| status | Yes | Phone number status. `active` means the number can receive and place calls; `inactive` means it cannot. |
| country | Yes | Country where the phone number originates. |
| per_min | Yes | Price per inbound minute in USD. |
| seconds | Yes | Total inbound call duration in seconds for current month. |
| channels | Yes | Maximum number of concurrent inbound calls. |
| free_min | No | Number of free inbound minutes. |
| documents | Yes | Uploaded documents for the phone number. |
| unlimited | No | Indicates whether usage is unlimited. |
| paid_until | Yes | Date until which the number is paid. |
| destination | Yes | Inbound call destinations set for the phone number. |
| monthly_fee | Yes | Monthly fee in USD. |
| sms_enabled | Yes | Indicates whether SMS is enabled. |
| domestic_cli | Yes | Indicates whether the number can be used as the Caller ID for local calls. |
| require_docs | Yes | Documents required to activate the phone number. |
| sms_relay_url | Yes | Callback URL for inbound SMS and MMS messages. |
| activation_fee | Yes | One-time activation fee in USD. |
| call_status_url | No | Callback URL for call status updates. |
| country_short_name | Yes | Two-letter ISO country code. |
| transcription_enabled | Yes | Indicates whether transcription is enabled. |
| call_recording_enabled | Yes | Indicates whether call recording is enabled. |
| transcription_threshold | Yes | Minimum call duration in seconds to trigger transcription. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No behavioral traits disclosed beyond the basic update action. No mention of idempotency, side effects, or required permissions. Annotations are absent, so the description should compensate but does not.
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 (one sentence) but lacks structure or front-loading of key information. It is adequate but not optimally 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 an output schema and multiple parameters, the description is too sparse. It does not summarize the parameters or provide enough context for an agent to understand the tool's full capability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema fully documents parameters. The description adds no additional semantics beyond the schema, meeting baseline expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it updates a phone number, which is specific but vague. It doesn't differentiate from sibling tools like my_numbers_sms_update, which may have overlapping functionality.
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 on when to use this tool versus alternatives. The description does not mention prerequisites, typical use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
number_validator_create_bulkBInspect
Returns details for multiple phone numbers. If async is true, returns a token to poll for results.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | ||
| async | Yes | Indicates whether the request should be executed asynchronously. If `true`, the response will include a `request_uuid` that can be used to poll for results. If `false`, the response will include validation results directly. | |
| force | Yes | Force | |
| phone_numbers | Yes | List of phone numbers to get detailed information about. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions async token handling but fails to explain the effect of 'force', the meaning of the three 'type' values, or whether the tool creates a record (contradicting the 'create' in the name). Output details are absent despite an output 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 extremely concise with two sentences, containing only essential information with 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 the complexity (4 parameters, async behavior, output schema), the description is incomplete. It does not explain the 'force' parameter, the 'type' enum values, rate limits, or prerequisites. The output schema exists but is not referenced.
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 for the 'async' parameter (token for polling). The other parameters ('type', 'force', 'phone_numbers') have descriptions in the schema, though 'force' is minimally described as 'Force'. Overall, the description adds moderate 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 returns details for multiple phone numbers and explains the async behavior. However, it does not explicitly differentiate from sibling tools like number_validator_get (single number) or number_validator_results_get (polling).
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 bulk validation and asynchronous polling but lacks explicit instructions on when to use this tool versus alternatives, such as number_validator_get for single numbers or number_validator_results_get for polling results.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
number_validator_getCInspect
Returns details for a phone number.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | Validation type. | |
| phone_number | Yes | Phone number in E.164 format or without "+". |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states it returns details. It does not disclose whether it is read-only, idempotent, or has side effects. The output schema exists but is not described in the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the core purpose. It wastes no words, though it could benefit from slight expansion for context. The structure is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the presence of an output schema, the description covers the basic functionality but lacks contextual guidance on usage, differentiation from siblings, and behavioral traits. It is incomplete for helping an agent decide when to invoke this 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 clear descriptions for both parameters. The tool description adds no further meaning, so a baseline of 3 is appropriate. The enum values are defined in the schema, so no additional context 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?
The description 'Returns details for a phone number' identifies the verb and resource but does not distinguish this tool from siblings like number_validator_create_bulk or number_validator_results_get. The input schema's enum parameter implies it provides different detail types, but the description itself lacks 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?
No guidance is provided on when to use this tool versus alternatives. For example, when to use number_validator_get vs number_validator_results_get is unclear. The description does not outline use cases or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
number_validator_results_getBInspect
Returns asynchronous validation results.
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | Request ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states the basic function. It fails to disclose behavioral traits such as idempotency, polling semantics, or error states.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no waste, but it could be more informative without sacrificing brevity.
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 an output schema, the description is too minimal for a tool that returns async results; it lacks context on when and how to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter, so the description adds no additional 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 'Returns asynchronous validation results,' which is specific and distinguishes it from sibling tools like number_validator_get (synchronous) and number_validator_create_bulk (creates async validation).
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, nor does it mention prerequisites like obtaining a request_id from a create_bulk call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profile_config_getBInspect
Returns the account balance and configuration details.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. Only states it returns data, but no disclosure of side effects, auth requirements, rate limits, or safety. Minimal beyond the verb 'Returns'.
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 sentence, no wasted words. Front-loaded with core purpose. Ideal length for a simple read tool.
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 details are covered. Description provides the key information (balance + config). Could be slightly vague on 'configuration details' but sufficient for a parameterless getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds meaning by specifying what is returned (account balance and configuration), which is valuable context beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Returns' with specific resources 'account balance and configuration details'. However, among siblings like profile_get, the description does not explicitly differentiate, though it implies additional 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?
No guidance on when to use this tool vs alternatives like profile_get. No context on prerequisites 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.
profile_getAInspect
Returns the account profile and billing details.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It states it's a read operation but lacks details on authorization, rate limits, or potential errors. Adequate for a simple get 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?
The description is a single sentence, front-loaded with purpose, and contains no superfluous 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 does not need to explain return values. It mentions 'account profile and billing details,' which is sufficient for a get 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?
The input schema has no parameters, so no additional parameter info is needed. The description does not provide any, but it's not required. Baseline 4 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?
The description clearly states 'Returns the account profile and billing details,' specifying the verb and resource. It distinguishes from sibling tools like profile_config_get and profile_update by focusing on billing 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?
No guidance on when to use this tool versus alternatives like profile_config_get or profile_update. Missing context on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profile_updateCInspect
Updates the account profile and billing details.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | No | Account owner's phone number | |
| contacts | No | Email associated with the account. | |
| job_title | No | Account owner's job title. | |
| last_name | No | Account owner's last name. | |
| time_zone | No | Timezone configured on the account. | |
| first_name | No | Account owner's first name. | |
| company_info | No | ||
| dlr_relay_url | No | Callback URL to forward message delivery reports (DLRs) to. | |
| sms_relay_url | No | Callback URL to forward inbound SMS to. | |
| additional_info | No | Additional information associated with the account. | |
| default_short_link_endpoint | No | Default short link endpoint. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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, yet it only says 'Updates' without disclosing safety, permissions, or idempotency. It does not clarify that all parameters are optional or that it performs a partial update.
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 a single sentence that directly states the tool's purpose. It avoids unnecessary words, though it could be slightly more informative without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown), the description need not explain return values. However, given the tool's complexity (11 optional fields, nested object), it lacks details on update semantics (e.g., partial update behavior). Overall adequate but with 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 91%, so the schema already provides detailed parameter descriptions. The tool description adds no further meaning beyond mentioning 'billing details', which maps to some schema fields. 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 updates account profile and billing details, which distinguishes it from sibling get tools like profile_get. However, it is somewhat generic and could be more specific about the scope of changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like my_numbers_update or sub_accounts_update. The description does not mention any prerequisites or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sip_trunks_createCInspect
Creates a SIP trunk.
| Name | Required | Description | Default |
|---|---|---|---|
| label | Yes | User-defined name of the SIP trunk | |
| callerid | Yes | Caller ID associated with the SIP trunk. Must be an active or verified number on your account. | |
| password | Yes | Password set for the SIP trunk. Use a strong password to help keep your SIP trunk secure. | |
| call_limit | No | A maximum call duration for the SIP trunk, in seconds. Must not exceed the maximum duration set for your account. Ignored when call_restrict is `false`. | |
| cost_limit | Yes | Indicates if the max cost limit for an outbound call limit is activated for the SIP trunk. | |
| allowed_ips | No | A list of public static IP addresses allowed to register with the SIP trunk | |
| ip_restrict | Yes | Indicates whether SIP trunk registration is allowed from only specific public static IP addresses. When set to `true`, the `allowed_ips` parameter must be provided. | |
| host_request | No | For SIP trunks with IP authentication, includes the SIP endpoint public static IP address and the status of the authentication request. Wavix authenticates all SIP traffic originating from this IP address. | |
| max_channels | No | Maximum number of concurrent outbound calls for the SIP trunk. Must not exceed the outbound channel capacity set for your account. Ignored when channels_restrict is `false`. | |
| rewrite_cond | No | Number of leading digits to automatically remove from each dialed phone number | |
| call_restrict | Yes | Indicates whether a maximum call duration limit is enforced for the SIP trunk | |
| max_call_cost | No | Maximum cost for an outbound call, in USD | |
| rewrite_prefix | No | Digits to automatically prepend to each dialed phone number | |
| didinfo_enabled | Yes | Indicates whether inbound calls include dialed number information in the `To` header of SIP INVITE requests | |
| encrypted_media | No | ||
| rewrite_enabled | Yes | Indicates whether a custom dial plan is activated for the SIP trunk | |
| multiple_numbers | No | Indicates whether any active or verified phone number in your account can be used as the Caller ID for the SIP trunk | |
| channels_restrict | Yes | Indicates whether a limit on the number of concurrent outbound calls is enforced for the SIP trunk | |
| transcription_enabled | Yes | Indicates whether automatic call transcription is enabled for the SIP trunk. Available for `Flex Pro` customers only. | |
| call_recording_enabled | No | Indicates whether outbound call recording is enabled for the SIP trunk | |
| transcription_threshold | Yes | Transcriptions will be generated for calls that meet or exceed the specified minimal call duration threshold, in seconds. Available for `Flex Pro` customers only. | |
| machine_detection_enabled | No | Indicates whether automatic voicemail detection is enabled for the SIP trunk. Available for `Flex Pro` customers only. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears full responsibility. It only states 'Creates a SIP trunk' with no disclosure of side effects, authentication needs, rate limits, or limits on creation. Behavioral aspects are completely absent.
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 (5 words) but lacks sufficient detail for a complex tool with 22 parameters. While brevity is valued, the one-sentence description does not earn its place by providing adequate context.
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 (22 parameters, 11 required, no annotations, and an output schema not mentioned), the description is severely incomplete. It fails to provide an overview, prerequisites, or any context about SIP trunks or creation constraints.
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 95% schema description coverage, the baseline is 3. The description adds no additional meaning beyond what the schema already provides for parameters. It neither repeats nor enhances parameter understanding.
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 'Creates a SIP trunk.' clearly states the action (create) and resource (SIP trunk), which distinguishes it from sibling tools like sip_trunks_get, sip_trunks_list, sip_trunks_update, and sip_trunks_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?
No guidance is provided on when to use this tool, prerequisites, or alternatives. The description lacks context such as what account configurations are needed or ordering relative to other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sip_trunks_deleteBInspect
Deletes a SIP trunk.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | SIP trunk ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description lacks behavioral details such as whether deletion is irreversible, requires confirmation, or affects related 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?
Extremely concise single sentence, but acceptable for a simple delete operation. Could include more detail without being verbose.
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 an output schema, the description provides no information about return values or side effects. For a delete operation, more context on success/error responses is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with clear description for the single parameter. The tool description adds no extra 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 action ('Deletes') and the resource ('SIP trunk'), distinguishing it from sibling tools like create, get, list, update.
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 on when to use this tool versus alternatives, no mention of prerequisites, irreversible effects, or context for deletion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sip_trunks_getBInspect
Returns a SIP trunk configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | SIP trunk ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden. It only states the basic action without disclosing any behavioral traits such as read-only nature, error handling, or required permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words, making it highly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool simplicity and presence of an output schema, the description is minimally complete. However, it lacks context about error scenarios or specific usage details that could aid the 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 coverage is 100% with a clear parameter description. The tool description adds no further meaning, so it meets but does not exceed the baseline for 100% 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 'Returns a SIP trunk configuration' clearly states the action on a specific resource, and the sibling tools (create, delete, list, update) confirm it is a retrieval operation, making it distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like sip_trunks_list. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sip_trunks_listAInspect
Returns a paginated list of SIP trunks. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number to retrieve. | |
| per_page | No | Number of records per page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 defaults (25 records per page) and the use of page/per_page parameters, but does not mention ordering, rate limits, or whether the operation is read-only. This is 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 two sentences, front-loaded with the core purpose ('Returns a paginated list of SIP trunks'), and each sentence adds necessary information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (a list with pagination) and the presence of an output schema, the description is mostly complete. It covers pagination behavior adequately. Minor omissions like filtering or ordering are not critical 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 has 100% description coverage for both parameters. The description restates that page and per_page control pagination, which adds minimal value beyond what the schema already provides. 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 'Returns a paginated list of SIP trunks,' which is a specific verb and resource. The sibling tools like sip_trunks_create, sip_trunks_delete, and sip_trunks_get are distinct actions, so this effectively differentiates the list operation.
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 using page and per_page for navigation, implying typical list usage. However, it does not explicitly state when to use this tool over alternatives like sip_trunks_get or other list tools, nor does it provide exclusions or context about 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.
sip_trunks_updateCInspect
Updates a SIP trunk configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | SIP trunk ID. | |
| label | Yes | User-defined name of the SIP trunk | |
| callerid | Yes | Caller ID associated with the SIP trunk. Must be an active or verified number on your account. | |
| password | Yes | Password set for the SIP trunk. Use a strong password to help keep your SIP trunk secure. | |
| call_limit | No | A maximum call duration for the SIP trunk, in seconds. Must not exceed the maximum duration set for your account. Ignored when call_restrict is `false`. | |
| cost_limit | Yes | Indicates if the max cost limit for an outbound call limit is activated for the SIP trunk. | |
| allowed_ips | No | A list of public static IP addresses allowed to register with the SIP trunk | |
| ip_restrict | Yes | Indicates whether SIP trunk registration is allowed from only specific public static IP addresses. When set to `true`, the `allowed_ips` parameter must be provided. | |
| host_request | No | For SIP trunks with IP authentication, includes the SIP endpoint public static IP address and the status of the authentication request. Wavix authenticates all SIP traffic originating from this IP address. | |
| max_channels | No | Maximum number of concurrent outbound calls for the SIP trunk. Must not exceed the outbound channel capacity set for your account. Ignored when channels_restrict is `false`. | |
| rewrite_cond | No | Number of leading digits to automatically remove from each dialed phone number | |
| call_restrict | Yes | Indicates whether a maximum call duration limit is enforced for the SIP trunk | |
| max_call_cost | No | Maximum cost for an outbound call, in USD | |
| rewrite_prefix | No | Digits to automatically prepend to each dialed phone number | |
| didinfo_enabled | Yes | Indicates whether inbound calls include dialed number information in the `To` header of SIP INVITE requests | |
| encrypted_media | No | ||
| rewrite_enabled | Yes | Indicates whether a custom dial plan is activated for the SIP trunk | |
| multiple_numbers | No | Indicates whether any active or verified phone number in your account can be used as the Caller ID for the SIP trunk | |
| channels_restrict | Yes | Indicates whether a limit on the number of concurrent outbound calls is enforced for the SIP trunk | |
| transcription_enabled | Yes | Indicates whether automatic call transcription is enabled for the SIP trunk. Available for `Flex Pro` customers only. | |
| call_recording_enabled | No | Indicates whether outbound call recording is enabled for the SIP trunk | |
| transcription_threshold | Yes | Transcriptions will be generated for calls that meet or exceed the specified minimal call duration threshold, in seconds. Available for `Flex Pro` customers only. | |
| machine_detection_enabled | No | Indicates whether automatic voicemail detection is enabled for the SIP trunk. Available for `Flex Pro` customers only. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose any behavioral traits beyond the basic action. With no annotations, the burden is high, but it fails to mention side effects, permissions, idempotency, or partial update 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 a single sentence, which is concise but lacks necessary detail. It is front-loaded but underinformative.
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 high parameter count and schema coverage, the description is insufficiently complete. It does not explain the update behavior (e.g., partial vs. full replacement) or tie in with 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?
The input schema has 96% description coverage, providing thorough parameter semantics. The description adds no additional value beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (updates) and the resource (SIP trunk configuration). It is not a tautology and conveys a specific verb+resource relationship. However, it does not distinguish from sibling tools like create or 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?
No guidance is provided on when to use this tool versus alternatives (e.g., to create or delete). There are no prerequisites, context cues, or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_messages_getCInspect
Returns a message.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Message ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavior. It only states the basic operation, omitting whether it is read-only, error handling (e.g., if ID not found), authentication requirements, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, making it concise, but it is too minimal and lacks structure. It earns its place but could be improved with a bit more context.
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. However, it omits any contextual information about when to retrieve a message, error states, or related operations.
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% description coverage for the 'id' parameter, so the description adds no additional semantic value. 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 'Returns a message' clearly indicates the tool retrieves a single message, but lacks specificity about which message (by ID) and does not distinguish it from sibling tools like 'list' or 'send' beyond the obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as sms_and_mms_messages_list or sms_and_mms_messages_send. The description does not mention preconditions or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_messages_listCInspect
Returns a paginated list of SMS and MMS messages.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Recipient phone number. For `outbound` messages, the destination phone number; for `inbound` messages, an SMS-enabled number on the Wavix platform. | |
| tag | No | Tag for filtering. Supported for outbound messages only. | |
| from | No | Message sender. For `outbound` messages, the Sender ID used to send the message; for `inbound` messages, the originating phone number. | |
| page | No | Page number to retrieve. | |
| type | Yes | Message direction for filtering. Allowed values are `inbound`, `outbound`. | |
| status | No | Message delivery status for filtering. | |
| per_page | No | Number of records per page. | |
| sent_after | No | Start date in `YYYY-MM-DD` format. | |
| sent_before | No | End date in `YYYY-MM-DD` format. | |
| message_type | No | Message type for filtering. Allowed values are `sms`, `mms`. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only says 'returns a paginated list' but does not disclose that it filters by required 'type' parameter, supports date ranges, or that it returns SMS/MMS messages. Lacks behavioral details beyond 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?
One sentence, front-loaded with purpose. Concise with no unnecessary words. Could benefit from more detail, but structure is clean.
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 10 parameters and output schema existing, the description is minimal. It covers the basic purpose but does not clarify pagination or filtering behavior. Schema descriptions are complete, partially compensating.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description does not add any additional meaning beyond what the schema already provides for each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns a paginated list of SMS and MMS messages. Distinguishes from siblings like sms_and_mms_messages_get (single message) and sms_and_mms_messages_list_all (likely unpaginated). However, does not explicitly differentiate.
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 on when to use this tool versus alternatives. Does not mention that it requires filtering by type or that it's for paginated results vs. list_all.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_messages_list_allCInspect
Returns SMS and MMS messages in newline-delimited JSON (NDJSON) format.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Message recipient. For `outbound` messages, the destination phone number; for `inbound` messages, the SMS-enabled number that received the message. | |
| tag | No | Tag for filtering. Supported for outbound messages only. | |
| from | No | Message sender. For `outbound` messages, the Sender ID used to send the message; for `inbound` messages, the originating phone number. | |
| type | Yes | Message direction for filtering. Allowed values are `inbound`, `outbound`. | |
| status | No | Message delivery status for filtering. | |
| sent_after | No | Start date in `YYYY-MM-DDTHH:MM:SS` format. | |
| sent_before | No | End date in `YYYY-MM-DDTHH:MM:SS` format. | |
| message_type | No | Message type for filtering. Allowed values are `sms`, `mms`. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It mentions the NDJSON output format but fails to describe key traits such as pagination, rate limits, or any side effects. The tool returns potentially large datasets, yet no details on truncation or filtering behavior are 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?
While very concise, the single sentence omits critical information. Conciseness is not about brevity alone; it must be appropriately sized to cover essential details. Here, the description is under-specified, lacking filtering capabilities, scope, and practical guidance.
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 (8 parameters, no output schema, no annotations), the description is far from complete. It does not mention that the tool supports filtering by date, type, status, etc., nor does it explain what the returned NDJSON lines contain. The agent would be guessing about important aspects.
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 baseline is 3. The description adds no additional parameter meaning beyond what the schema already provides. It does not explain parameter interactions or provide usage tips.
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 that the tool returns SMS and MMS messages, and specifies the output format (NDJSON). However, it lacks differentiation from the sibling tool 'sms_and_mms_messages_list', which likely returns the same data in a different format. The name implies 'list all' but the description does not explicitly convey that 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?
No guidance is provided on when to use this tool versus alternatives like 'sms_and_mms_messages_list' or 'sms_and_mms_messages_get'. There is no mention of prerequisites, limitations, or the types of queries suitable for this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_messages_sendAInspect
Sends SMS or MMS messages. MMS is supported for U.S. numbers only. Rate limit: 20 messages per phone number in 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Recipient phone number. | |
| tag | No | Tag to group messages, such as for a specific campaign. | |
| from | Yes | Sender ID. Numeric or alphanumeric. | |
| validity | No | Message validity period in seconds. Delivery attempts stop after this period expires. | |
| callback_url | No | Callback URL for delivery reports. | |
| message_body | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | No | Recipient phone number. |
| mcc | No | Mobile country code. |
| mnc | No | Mobile network code. |
| tag | No | Message tag. |
| from | No | Sender ID. |
| charge | No | Total charge for the message in USD. |
| status | No | Message status. |
| sent_at | No | Date and time the message was sent in ISO 8601 format. |
| segments | No | Number of SMS segments. Always 1 for MMS. |
| direction | No | Message direction. Possible values are `outbound`, `inbound`. |
| message_id | No | Message ID. |
| carrier_fees | No | Mobile carrier fees in USD. |
| delivered_at | No | Date and time the message was delivered in ISO 8601 format. |
| message_body | No | |
| message_type | No | Message type. |
| submitted_at | No | Date and time the message was submitted in ISO 8601 format. |
| error_message | No | Error message. |
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 behavioral disclosure burden. It discloses the rate limit and MMS US-only restriction, which are key behavioral traits. However, it does not detail what happens on success/failure, whether delivery is synchronous, or other side effects. The description adds moderate value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with the primary purpose, and includes a critical constraint (rate limit) in the second sentence. Every word is purposeful; no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters (including a nested object) and an output schema, the description is relatively brief but covers the core action and a key constraint. It does not explain prerequisites like having a valid sender ID or callback setup, but the output schema exists to document return values. Overall, it is fairly complete for a send 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 83% (high), so the baseline is 3. The description does not add additional meaning to the parameters beyond what is already in the schema. It mentions the rate limit but that is not directly related to parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Sends' and the resource 'SMS or MMS messages', differentiating this tool from sibling tools like sms_and_mms_messages_get or sms_and_mms_messages_list. It also specifies that MMS is for U.S. numbers only, adding precision.
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 rate limit (20 messages per phone number in 24 hours), which is important usage guidance. It does not explicitly state when to use this tool vs alternatives, but the context implies it's the primary send tool. No when-not-to-use guidance is given, but the rate limit and MMS restriction are helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_opt_outs_createCInspect
Creates an opt-out for a Sender ID, 10DLC campaign, or all outbound messages.
| Name | Required | Description | Default |
|---|---|---|---|
| opt_out | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only says 'creates an opt-out' without disclosing side effects, permanence, idempotency, or whether it overrides existing opt-outs. The schema implies behavior for omitted sender_id, but the description does not explain this important detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant information. It is efficient but could benefit from a slightly more structured format to improve readability.
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 no annotations and an output schema present, the description should provide context about return values, error conditions, and operational semantics. It lacks such details, leaving the agent underinformed about what to expect after creation.
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 includes descriptions for both parameters (number and sender_id) with clear explanations, so the schema already provides adequate semantics. The tool description does not add additional meaning 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 states that it creates an opt-out for Sender ID, 10DLC campaign, or all outbound messages, which clearly identifies the action and distinguishes it from sibling list tool. However, the phrasing could be more explicit about the effect (opting out a phone number from receiving messages).
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 on when to use this tool versus alternatives, prerequisites, or when not to use it. The sibling list tool exists but no differentiation is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_opt_outs_listAInspect
Returns a paginated list of opted-out phone numbers. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number to retrieve. | |
| per_page | No | Number of records per page. | |
| sender_id | No | Sender ID for filtering. | |
| campaign_id | No | 10DLC campaign for filtering. | |
| created_after | No | Start date in `YYYY-MM-DD` format. | |
| created_before | No | End date in `YYYY-MM-DD` format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | No | |
| pagination | No |
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 correctly indicates the tool returns a list and is paginated. However, it fails to disclose that the tool supports filtering (via sender_id, campaign_id, date ranges) and does not state that it is read-only or non-destructive. This leaves behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose, and efficiently covers the core behavior (list, pagination, defaults). Every sentence adds value with no redundancy or 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?
Despite having 6 parameters and an output schema, the description omits any mention of the filtering capabilities (sender_id, campaign_id, date ranges) which are essential for effective use. While output schema obviates the need to explain return values, the lack of filter guidance makes it incomplete for a parameter-rich 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% (all parameters described). The description adds no meaning beyond the schema; it merely restates that page and per_page control pagination. It does not elaborate on filtering parameters like sender_id or campaign_id, so no extra 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 explicitly states 'Returns a paginated list of opted-out phone numbers,' clearly identifying the verb (returns) and resource (list of opted-out phone numbers). This distinguishes it from sibling tools like sms_and_mms_opt_outs_create (which creates opt-outs) and sms_and_mms_messages_list (which lists messages).
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 listing opt-outs and explains pagination ('Use page and per_page'), but does not explicitly mention when to use this tool versus alternatives (e.g., sms_and_mms_messages_list) or when not to use it. Guidance is adequate but not explicitly comparative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_sender_ids_createBInspect
Creates a Sender ID. Use the 10DLC API to create Sender IDs in the US.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | Sender ID type. | |
| samples | No | Message samples. | |
| usecase | Yes | Use case for the Sender ID | |
| countries | Yes | Two-letter ISO country codes where the Sender ID is allowlisted. | |
| sender_id | Yes | Sender ID name. Can be either an alphanumeric string or a phone number. | |
| monthly_volume | No | Expected monthly volume. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only says 'Creates a Sender ID', without disclosing behavioral traits like idempotency, side effects, prerequisite dependencies, or auth needs. The burden is entirely on the description, which is insufficient.
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. The second sentence earns its place by providing geographic context (US) and API reference (10DLC), which is non-obvious from the name.
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 6 parameters (4 required), an output schema (exists but not detailed), and sibling tools for brands/campaigns, the description lacks essential context about prerequisites (e.g., needing a registered brand) and error conditions, making it incomplete for a creation 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?
All 6 parameters have schema descriptions covering 100%, so the description does not need to add extra meaning. It adds no additional detail beyond the schema, meeting the 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 'Creates a Sender ID', specifying the verb and resource. It differentiates from sibling tools like delete, get, and list by explicitly being a create operation.
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 adds the context to 'Use the 10DLC API to create Sender IDs in the US', giving a geographic hint, but does not explicitly state when not to use this tool or suggest alternatives for non-US regions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_sender_ids_deleteBInspect
Deletes a Sender ID.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Sender ID ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist to describe behavioral traits. The description does not disclose any side effects, required permissions, or whether the deletion is irreversible. Minimal information beyond the 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?
The description is concise and front-loaded with the core purpose. However, it is slightly under-specified; a brief sentence about when to delete would improve it.
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 low complexity (one parameter, output schema exists), the description is minimally adequate. However, it lacks context about the impact of deletion or any prerequisites, making it less complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema describes the single required parameter 'id' with a description and example. Since schema coverage is 100%, the description adds no additional meaning beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Deletes) and the resource (Sender ID). Among sibling tools for sender IDs (create, get, list, delete), it is distinct and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance provided on when to use this tool versus alternatives (e.g., when a Sender ID should be deleted, prerequisites, or consequences). The description only states the action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_sender_ids_getBInspect
Returns a Sender ID.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Sender ID ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility. It only states the basic operation, omitting any details about error handling, authorization, or whether the output covers all fields. The output schema may help, but the description itself lacks behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the purpose. It is efficient, though could be slightly more explicit (e.g., 'Retrieves a Sender ID by its ID').
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param, output schema exists), the description is minimally adequate. However, it lacks usage context and fails to address what happens for invalid IDs or the non-existence of the resource.
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 applies. The description adds no additional meaning beyond the schema's own parameter description ('Sender ID ID'), which is already minimal.
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 'Returns a Sender ID' clearly states the verb (Returns) and resource (Sender ID), and the tool name specifies the scope (get by ID). It distinguishes well from sibling tools like create, delete, and list.
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 usage when needing a single Sender ID by its identifier, but it does not provide explicit guidance on when to use this vs. list, nor any when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sms_and_mms_sender_ids_listBInspect
Returns a list of Sender IDs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only says 'Returns a list of Sender IDs,' omitting whether it is a read-only operation, required authentication, or any side effects. Very 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?
The description is a single sentence, concise and to the point. However, it could be slightly more informative without sacrificing 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 is simple and has an output schema, the description is modestly complete. It could benefit from clarifying the scope (e.g., all sender IDs) or any pagination, but it is 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?
The input schema has zero parameters and 100% coverage, so the description does not need to explain parameter details. The description is adequate for a parameterless tool.
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 that the tool returns a list of Sender IDs, which distinguishes it from sibling tools like create or delete. However, it lacks specificity about the scope (e.g., all sender IDs or filtered).
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 siblings like sms_and_mms_sender_ids_get or sms_and_mms_sender_ids_list. No when-not or alternative information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_analytics_createAInspect
Uploads an audio file for transcription. Wavix sends a POST callback to the specified callback URL when the transcription is complete.
Callback body:
{
"request_id": "e865ea07-25af-4fdd-876e-04b0d41d5ebd",
"status": "completed",
"error": null
}request_id: Transcription request ID.status: Operation status. Possible values arecompleted,failed.completedindicates successful transcription;failedindicates an error. -error: Error description. Value isnullif the transcription was successful.
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | Binary file content. Maximum size is 25 MB. Wavix supports WAV, MP3, and MP4 stereo formats. | |
| insights | No | Indicates whether to enable insights generation. | |
| callback_url | No | Callback URL for transcription status updates. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses the async callback mechanism and the structure of the callback body, including fields and possible values. This adds significant behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the primary purpose, and uses a code block for the callback details. Every sentence adds necessary context without 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 the presence of an output schema and 100% schema coverage, the description is complete. It covers the upload purpose, async behavior, and callback structure, which suffices for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value by detailing the callback response structure and linking it to the callback_url parameter, but does not elaborate on the other parameters 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 'uploads' and the resource 'audio file for transcription'. It distinguishes the tool from sibling tools like speech_analytics_get (retrieve) and speech_analytics_retranscribe (reprocess).
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 new transcription uploads via async callback, but does not explicitly state when to use this tool versus siblings like speech_analytics_get or speech_analytics_retranscribe. No exclusions or alternatives are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_analytics_file_getAInspect
Get a download URL for a speech-analytics audio file.
Returns {download_url, content_type, status_code, note} instead of the
binary audio stream (WAV/MP3/MP4). Fetch download_url to obtain the file.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral disclosure. It correctly states it returns a dict with download_url and not the binary stream, and instructs to fetch the URL. However, it lacks details on auth requirements, URL expiry, 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 with two sentences. The first sentence front-loads the purpose, and the second adds crucial detail about the return format. 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 tool with one parameter and an output schema, the description adequately explains the purpose and return format. It could be more complete by clarifying the uuid parameter, but overall it covers the main functionality.
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 only parameter is 'uuid', with 0% schema description coverage. The description does not explain what 'uuid' represents (presumably the file ID), requiring the agent to infer its meaning. This is a gap.
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 a download URL for a speech-analytics audio file' with a specific verb and resource. It distinguishes from sibling tools like speech_analytics_get and speech_analytics_create by focusing on the download URL 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?
The description implies when to use this tool (when you want a download URL instead of binary audio), but does not explicitly state when not to use it or provide alternatives. No comparison with sibling tools like speech_analytics_get.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_analytics_getBInspect
Returns a transcription.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Transcription request ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 for behavioral transparency. It only states 'Returns a transcription' without disclosing idempotency, error handling, permission requirements, or any side effects. This is insufficient for an agent to understand 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 extremely concise—one sentence—and front-loaded with the key action. Every word is meaningful; there is no 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 tool has only one parameter and an output schema, the description is minimal but adequate. It does not provide enough context to fully understand the tool's role among many siblings, but the output schema fills some gaps. More context about what the transcription contains or when to use it would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (uuid is described as 'Transcription request ID.'). The description adds no additional meaning beyond the schema, but since coverage is high, baseline 3 is appropriate. The description aligns with the parameter semantics without adding new value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a transcription, which is a specific verb and resource. The name speech_analytics_get helps distinguish it from siblings like speech_analytics_create and speech_analytics_retranscribe, but it doesn't explicitly differentiate from cdrs_transcription_get, which is a potential overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention prerequisites, context, or when not to use it. The description is purely functional without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_analytics_retranscribeCInspect
Retranscribes an uploaded file.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Transcription request ID. | |
| insights | No | Indicates whether to enable insights generation. | |
| callback_url | No | Callback URL for transcription status updates. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No | Indicates whether the request was successful. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must convey behavior. It only says 'retranscribes' without disclosing whether it overwrites existing data, is asynchronous, or any side effects. This is insufficient for an agent to understand the tool's impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise but lacks critical detail. It is not overly long, but it sacrifices completeness for brevity, earning a middle score.
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 present), the description is incomplete. It does not explain what retranscription entails, when it is needed, or how the insights and callback parameters affect the process, leaving gaps for an 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 coverage is 100% with clear parameter descriptions. The description adds no extra meaning beyond what the schema already provides, meeting the baseline but not enhancing understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it retranscribes an uploaded file with a specific verb and resource. However, it does not distinguish this tool from siblings like speech_analytics_create or cdrs_retranscribe, leaving ambiguity about the exact use case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as when a retranscription is needed or if there are prerequisites like a prior transcription. The description is too terse to inform decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sub_accounts_createCInspect
Creates a sub-account.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Sub-account name. | |
| default_destinations | No | Default webhook URLs for inbound messages and delivery reports. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Sub-account ID. |
| name | Yes | Sub-account name. |
| status | Yes | Sub-account status. |
| api_key | Yes | Sub-account API key. |
| created_at | Yes | Date and time the sub-account was created in ISO 8601 format. |
| master_organization | Yes | Master account ID. |
| default_destinations | Yes | Default webhook URLs for inbound messages and delivery reports. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. Only states 'Creates a sub-account', implying mutation but no details on side effects, permissions required, or what 'sub-account' means in this system.
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 sentence, front-loaded, no waste. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite good schema and output schema, the description lacks context about what happens upon creation (e.g., returns the created object, requires certain permissions). Minimalist for a create 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 coverage is 100%, so baseline is 3. The description does not add any extra meaning beyond the schema; it merely restates the purpose. No parameter-specific elaboration.
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 action (creates) and the resource (sub-account). Distinguishes from sibling tools like sub_accounts_get, sub_accounts_list, sub_accounts_update, and sub_accounts_transactions_list, which have different verbs.
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 on when to use this tool versus alternatives. No prerequisites, conditions, or exclusions mentioned. The description is too brief to provide context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sub_accounts_getCInspect
Returns a specific sub-account. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Sub-account ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Sub-account ID. |
| name | Yes | Sub-account name. |
| status | Yes | Sub-account status. |
| api_key | Yes | Sub-account API key. |
| created_at | Yes | Date and time the sub-account was created in ISO 8601 format. |
| master_organization | Yes | Master account ID. |
| default_destinations | Yes | Default webhook URLs for inbound messages and delivery reports. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It mentions pagination parameters that are not in the schema, creating inconsistency. No information about authentication, error handling, or response format 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?
The description is short but contains extraneous and incorrect information about pagination. It could be more concise and accurate by simply stating 'Returns a specific sub-account by ID.'
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (single required parameter) and the presence of an output schema, the description should focus on the uniqueness of the ID and what the tool returns. The irrelevant pagination talk undermines 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 schema already documents the required 'id' parameter with a clear description. The description adds no value and instead misleads by mentioning 'page' and 'per_page', which are not present in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns a specific sub-account', which correctly identifies the action and resource. However, it then adds irrelevant pagination details ('Results are limited to 25 records per page'), contradicting the 'specific' nature and confusing the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings like sub_accounts_list. The description does not clarify that this is a single-record getter, nor does it mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sub_accounts_listCInspect
Returns a paginated list of sub-accounts. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Account status to filter results. |
Output Schema
| Name | Required | Description |
|---|---|---|
| pagination | No | |
| sub_organizations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Mentions default pagination of 25 per page, and suggests using page/per_page, but these parameters are not in the input schema, misleading the agent. No annotation coverage to compensate.
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 are concise, but the content is partially inaccurate (page/per_page not in schema). Structure is front-loaded with the main action, but loses points for inaccuracy.
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?
Lacks information on ordering, maximum per_page, or any constraints. Output schema exists but description doesn't complement it. Missing pagination parameters make it incomplete.
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 one parameter (status) with full coverage, but description adds no value over the schema. Worse, it mentions non-existent page/per_page parameters, confusing semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns a paginated list of sub-accounts, though fails to mention the status filter. The purpose is specific and distinct from sibling 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?
No guidance on when to use this tool versus other sub-account tools like sub_accounts_transactions_list or sub_accounts_get. Implies listing scenario but no differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sub_accounts_transactions_listAInspect
Returns a paginated list of transactions for a specific sub-account. Filter by date range and type. Results are paginated with 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Sub-account ID. | |
| page | No | Page number to retrieve. | |
| type | No | Transaction types to filter results. | |
| to_date | Yes | End date in `YYYY-MM-DD` format. | |
| per_page | No | Number of records per page. | |
| from_date | Yes | Start date in `YYYY-MM-DD` format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| pagination | No | |
| transactions | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses pagination behavior (default 25 records, page/per_page) and filtering, but lacks explicit read-only hint or side effects. Without annotations, more transparency would be beneficial.
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 pagination details. 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?
Given the existence of output schema and detailed input schema, the description covers purpose, filtering, and pagination adequately. No missing critical 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%, baseline 3. Description adds value by explaining that filter parameters (from_date, to_date, type) are for date range and type filtering, and that page/per_page navigate results.
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 returns a paginated list of transactions for a specific sub-account, and specifies filtering by date range and type. This distinguishes it from sibling tools like billing_transactions_list and other sub_accounts 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?
Implied usage for sub-account transactions, but no explicit guidance on when to use this tool vs alternatives like billing_transactions_list or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sub_accounts_updateBInspect
Updates a sub-account's configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Sub-account ID. | |
| name | Yes | Sub-account name. | |
| status | No | Sub-account status. | |
| default_destinations | No | Default webhook URLs for inbound messages and delivery reports. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Sub-account ID. |
| name | Yes | Sub-account name. |
| status | Yes | Sub-account status. |
| api_key | Yes | Sub-account API key. |
| created_at | Yes | Date and time the sub-account was created in ISO 8601 format. |
| master_organization | Yes | Master account ID. |
| default_destinations | Yes | Default webhook URLs for inbound messages and delivery reports. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description lacks details on side effects, permission requirements, or update semantics (partial vs. full replacement).
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?
One succinct sentence, no wasted words, but could be slightly more informative while remaining 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?
For a mutation tool with output schema, description omits update behavior (e.g., partial vs full) and expected response, leaving gaps for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions; description adds no further insight 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?
Description clearly states verb 'Updates' and resource 'sub-account's configuration', distinguishing it from siblings like create, get, list.
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 on when to use this tool versus alternatives (e.g., sub_accounts_create for creation, sub_accounts_get for retrieval) or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_appeals_createAInspect
Submits an appeal for 10DLC brand identity verification. Provide any additional documentation to support the appeal. Use appeal_category to specify the appeal type:
VERIFY_TAX_ID— Use if the brand is UNVERIFIED due to a tax ID mismatch. Applies to private companies, public companies, non-profits, and government entities.VERIFY_NON_PROFIT— Use if a non-profit brand is UNVERIFIED or VERIFIED but missing tax-exempt status.VERIFY_GOVERNMENT— Use if a government brand is UNVERIFIED or VERIFIED but missing government entity status.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| evidence | Yes | List of evidence IDs associated with the appeal. | |
| explanation | No | Appeal comment or justification. | |
| appeal_categories | Yes | List of appeal categories. Allowed values: `VERIFY_TAX_ID`, `VERIFY_NON_PROFIT`, `VERIFY_GOVERNMENT` |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It indicates the tool creates an appeal and requires evidence, but does not detail after-effects (e.g., asynchronous processing), permissions, or whether it's safe/reversible. The description is adequate but not extensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a summary sentence followed by bullet-point-like explanations for each appeal category. It conveys necessary information without unnecessary repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description does not need to detail return values. It covers the tool's action, required parameters (brand_id, evidence, appeal_categories), and category-specific instructions. It could mention that evidence must be pre-uploaded, but overall it is sufficiently 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 description coverage is 100%, so baseline is 3. The description adds value by explaining the appeal categories beyond the schema, clarifying their use cases and how evidence IDs are used. This extra context justifies a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Submits an appeal for 10DLC brand identity verification.' It uses specific verb ('submits') and resource ('appeal'), and the detail about appeal categories distinguishes it from sibling tools like ten_dlc_brand_appeals_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use each of the three appeal categories (VERIFY_TAX_ID, VERIFY_NON_PROFIT, VERIFY_GOVERNMENT) with specific scenarios. It does not, however, mention when not to use this tool or explicitly name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_appeals_listAInspect
Returns a list of brand identity verification appeals.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It correctly identifies a read operation but omits details like pagination, sorting, or whether it returns all appeals. The output schema may compensate, but behavioral aspects remain uncovered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys the core function without any unnecessary words. It is front-loaded and 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?
For a simple 1-param list tool with an output schema, the description is largely sufficient. It could mention pagination or ordering, but the current information is adequate for basic 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?
Schema coverage is 100% with a clear description for `brand_id` ('Brand ID.'). The tool description adds no extra meaning beyond what is in the schema, 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 'Returns a list of brand identity verification appeals,' specifying the verb (Returns) and resource (list of brand identity verification appeals). It distinguishes from sibling tools like `ten_dlc_brand_appeals_create` (create) and `ten_dlc_brand_vetting_appeals_list` (vetting appeals).
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 lacks any guidance on when to use this tool versus alternatives like `ten_dlc_brand_vetting_appeals_list` or when not to use it. No explicit context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_campaigns_createCInspect
Registers a 10DLC Campaign.
| Name | Required | Description | Default |
|---|---|---|---|
| help | Yes | Indicates whether the campaign has a help system (e.g. keyword: HELP, INFO) that subscribers can use or not. | |
| mock | Yes | Indicates a mock Campaign. The mock Campaigns cannot be used to send production traffic | |
| name | Yes | A user-defined Campaign name | |
| optin | Yes | Indicates whether the campaign requires a subscriber to opt-in before receiving messages or not. | |
| optout | Yes | Indicates whether the campaign has an opt-out system (e.g. keyword: STOP, QUIT) that subscribers can use or not. | |
| sample1 | Yes | Message sample | |
| sample2 | Yes | Message sample | |
| sample3 | Yes | Message sample | |
| sample4 | Yes | Message sample | |
| sample5 | Yes | Message sample | |
| usecase | Yes | The Campaign use case | |
| brand_id | Yes | Brand ID. | |
| age_gated | Yes | Indicates whether the Campaign messages contain age-gated content | |
| description | Yes | The Campaign description | |
| auto_renewal | Yes | Indicates whether the Campaign should be automatically renewed | |
| help_message | Yes | An acknowledgement to be sent when a HELP keyword is received | |
| help_keywords | Yes | A comma-separated list of HELP keywords. The HELP keywords are case-insensitive. | |
| optin_message | Yes | An acknowledgement to be sent when an OPT-IN keyword is received | |
| direct_lending | Yes | Indicates whether the Campaign messages contain direct lending content | |
| embedded_links | Yes | Indicates whether the Campaign messages contain embedded links | |
| optin_keywords | Yes | A comma-separated list of OPT-IN keywords. The OPT-IN keywords are case-insensitive. | |
| optin_workflow | Yes | The opt-in workflow - the process through which consumers opt-in to the Campaign | |
| optout_message | Yes | An acknowledgement to be sent when an OPT-OUT keyword is received | |
| privacy_policy | No | A link to the Campaign privacy policy | |
| embedded_phones | Yes | Indicates whether the Campaign messages contain embedded phone numbers | |
| optout_keywords | Yes | A comma-separated list of OPT-OUT keywords. The OPT-OUT keywords are case-insensitive. | |
| terms_conditions | Yes | A link to the Campaign terms and conditions | |
| affiliate_marketing | Yes | Indicates whether the Campaign is used for affiliate marketing | |
| embedded_link_sample | Yes | An embedded link sample |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fails to disclose any behavioral traits such as side effects (e.g., creating a campaign triggers vetting), required permissions, or rate limits. The minimal description does not compensate for the lack of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single sentence. It is front-loaded but arguably too brief; a few more sentences could improve completeness without sacrificing 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 complexity of 29 parameters and a regulatory context (10DLC), the description lacks information about the registration process, expected output, or validation rules. The presence of an output schema is noted but not referenced in the 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?
The schema covers all 29 parameters with clear descriptions, so the description adds no additional semantic value beyond stating the overall purpose. Baseline score of 3 is appropriate given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Registers') and the resource ('10DLC Campaign'), making the tool's purpose evident. However, it does not distinguish it from sibling tools like ten_dlc_brand_campaigns_update or ten_dlc_brand_campaigns_delete, which share similar naming.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites (e.g., brand must exist) or scenarios where this tool is inappropriate, leaving the AI to infer context from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_campaigns_deleteAInspect
Deletes a 10DLC Campaign. Associated phone numbers cannot be used as Sender IDs once the Campaign is deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It mentions an important side effect: associated phone numbers become unusable as Sender IDs. However, it omits details on reversibility, permissions, or impact on related entities.
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 concisely convey the action and a key consequence with no wasted words. Information 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?
Given the tool's simplicity (2 parameters, output schema exists), the description covers the primary effect and consequence. Missing prerequisites but adequate for a straightforward deletion.
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 both parameters ('Brand ID.', 'Campaign ID.'). The tool description adds no additional meaning beyond what the schema provides, earning a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'deletes' and the resource '10DLC Campaign', distinguishing it from sibling tools like create, get, list, and update. The purpose is 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?
No guidance on when to use this tool versus alternatives. It does not specify prerequisites (e.g., campaign must exist) or mention alternative actions like updating or deactivating a campaign.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_campaigns_getCInspect
Returns a 10DLC Campaign.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only states 'Returns' indicating a read operation, but fails to disclose any other behaviors like authentication requirements, rate limits, or potential 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 very concise at one sentence, but it is under-specified. While not verbose, it could include more context without becoming wasteful.
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 minimal description is just adequate. However, it lacks contextual guidance on using the required parameters and could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both `brand_id` and `campaign_id`. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Returns a 10DLC Campaign' with a specific verb and resource. However, it does not explicitly differentiate from sibling tools like `ten_dlc_brand_campaigns_list`, though the required parameters imply it retrieves a single campaign by 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?
No guidance is provided on when to use this tool versus alternatives such as `ten_dlc_brand_campaigns_list` or `ten_dlc_brand_campaigns_create`. The description lacks any context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_campaigns_listAInspect
Returns 10DLC Campaigns associated with a Brand.
Results are limited to 25 records per page by default.
Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| mock | No | Indicates whether to include mock Campaigns only. | |
| name | No | Campaign name. | |
| page | No | Page number to retrieve. | |
| status | No | Campaign status. | |
| usecase | No | Use case. | |
| brand_id | Yes | Brand ID. | |
| per_page | No | Number of records per page. | |
| created_after | No | Campaign creation start date in `YYYY-MM-DD` format. | |
| created_before | No | Campaign creation end date in `YYYY-MM-DD` format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions default pagination (25 per page) and navigation, which is helpful, but omits other behavioral traits like authentication, read-only nature, sorting, or error cases. Acceptable 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?
Two sentences, front-loaded with purpose, no extraneous information. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers core purpose and pagination, sufficient for a listing tool with a rich schema and existing output schema. It could mention sorting order or required field (brand_id) but these are inferable from the 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%, providing descriptions for all 9 parameters. The tool description adds value by clarifying pagination defaults and the use of 'page' and 'per_page' for navigation, which goes beyond the schema. However, it does not elaborate on the filtering parameters (mock, name, status, etc.), which are already explained in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns '10DLC Campaigns associated with a Brand,' using a specific verb and resource. The name and sibling context (e.g., ten_dlc_campaigns_list) further differentiate it as brand-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 implies usage for listing campaigns by brand, but does not explicitly state when to use this tool over alternatives like ten_dlc_campaigns_list or when not to use it. Lacks direct comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_campaigns_updateCInspect
Updates a 10DLC Campaign.
| Name | Required | Description | Default |
|---|---|---|---|
| help | No | Indicates whether the Campaign provides HELP responses | |
| name | No | A user-defined Campaign name | |
| optin | No | Indicates whether the Campaign supports opt-in functionality | |
| optout | No | Indicates whether the Campaign supports opt-out functionality | |
| sample1 | No | Message sample | |
| sample2 | No | Message sample | |
| sample3 | No | Message sample | |
| sample4 | No | Message sample | |
| sample5 | No | Message sample | |
| usecase | No | Campaign use case | |
| brand_id | Yes | Brand ID. | |
| age_gated | No | Indicates whether the Campaign messages contain age-gated content | |
| campaign_id | Yes | Campaign ID. | |
| description | No | The Campaign description | |
| auto_renewal | No | Indicates whether the Campaign should be automatically renewed | |
| help_message | No | An acknowledgement to be sent when a HELP keyword is received | |
| help_keywords | No | A comma-separated list of HELP keywords. The HELP keywords are case-insensitive. | HELP |
| optin_message | No | An acknowledgement to be sent when an OPT-IN keyword is received | |
| direct_lending | No | Indicates whether the Campaign messages contain direct lending content | |
| embedded_links | No | Indicates whether the Campaign messages contain embedded links | |
| optin_keywords | No | A comma-separated list of OPT-IN keywords. The OPT-IN keywords are case-insensitive. | |
| optin_workflow | No | The opt-in workflow - the process through which consumers opt-in to the Campaign | |
| optout_message | No | An acknowledgement to be sent when an OPT-OUT keyword is received | |
| privacy_policy | No | A link to the Campaign privacy policy | |
| embedded_phones | No | Indicates whether the Campaign messages contain embedded phone numbers | |
| optout_keywords | No | A comma-separated list of OPT-OUT keywords. The OPT-OUT keywords are case-insensitive. | |
| terms_conditions | No | A link to the Campaign terms and conditions | |
| embedded_link_sample | No | An embedded link sample |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Absent annotations, the description must disclose behavioral traits. It only states 'Updates' (implies mutation) but no details on idempotency, required permissions, partial vs full update, side effects, or error conditions. This is insufficient for a complex tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise (one sentence) but at the expense of necessary information for a tool with 28 parameters. The sentence does not earn its place as it adds no value beyond the name.
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 (28 parameters, many configurable options), the description fails to provide enough context. Output schema exists but the description does not help the agent understand update semantics or required fields beyond 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?
All 28 parameters have descriptions in the schema, so baseline is 3. The description adds no additional explanation of parameter roles or interrelations, but schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description 'Updates a 10DLC Campaign' essentially repeats the tool name, providing no additional specificity or sibling differentiation. It does not clarify what aspects can be updated or distinguish from create/delete/list siblings.
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 on when to use this tool versus alternatives. Siblings like ten_dlc_brand_campaigns_create, _delete, _get, _list exist but no mention of context or prerequisites (e.g., campaign must exist).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_evidence_deleteBInspect
Deletes a 10DLC Brand evidence file.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Evidence ID. | |
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears the full burden of disclosing behavioral traits. It only states 'Deletes' without elaborating on destructiveness, reversibility, or side effects. The description is insufficient for a destructive 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 a single, clear sentence with no wasted words. While concise, it lacks structured formatting that could improve readability for an AI agent, but the brevity is appropriate for such a simple 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?
Given the tool's destructive nature and lack of annotations, the description does not provide enough context. It omits mention of required permissions, impact on related entities, or confirmation behavior. An output schema exists but does not compensate for missing behavioral 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% with both parameters having descriptions and examples. The description adds no additional meaning beyond the input schema, meeting the baseline expectation.
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 'Deletes' and the resource '10DLC Brand evidence file,' making the action and target unambiguous. It effectively distinguishes this tool from siblings like ten_dlc_brand_evidence_get, list, and upload.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, prerequisites, or any cautions. The description simply states what it does, leaving the agent without context for appropriate invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_evidence_getAInspect
Get a download URL for a 10DLC brand evidence file.
Returns {download_url, content_type, status_code, note} instead of the
binary file stream. Fetch download_url to obtain the file.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | ||
| brand_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It transparently states that the tool returns a URL and not the binary file stream, and lists the return fields. This is good behavioral disclosure for a simple retrieval 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 only two sentences: first identifies the purpose, second explains the return format. Every sentence is meaningful and there is no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool that retrieves a download URL, the description covers the main purpose and return format. It does not explain parameters or prerequisites, but the tool is straightforward and the output schema is implied. Overall, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no descriptions for the two parameters (brand_id, uuid). The description does not explain their semantics or provide any hints about their values. Since schema coverage is 0%, the description should compensate but fails to do so.
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 a download URL' and the resource '10DLC brand evidence file'. It distinguishes itself from sibling tools like upload, delete, and list, providing a specific and unambiguous purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates when to use the tool (to obtain a download URL) and what to do with the result (fetch the URL). However, it does not explicitly state when not to use it or provide alternatives, though the context from sibling tools is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_evidence_listBInspect
Use this method to list previously uploaded Brand appeal evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Unique identifier of a Brand |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | List of uploaded evidence files |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It implies a read-only operation ('list previously uploaded'), but does not mention idempotency, pagination, ordering, or any constraints beyond the parameter. The description is minimal and does not add significant behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is efficient and front-loaded, but could be slightly improved by explicitly mentioning the required parameter or the return type.
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 one simple parameter and an output schema exists, the description is minimally adequate. However, it does not explain what 'Brand appeal evidence' is or how it relates to other brand operations, leaving some context missing for an agent without prior knowledge.
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 only parameter 'brand_id' has a description). The tool description adds no additional meaning or context beyond what the schema provides, so it meets the baseline but does not enhance understanding.
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') and resource ('previously uploaded Brand appeal evidence'), and it distinguishes from sibling tools like upload, delete, and get. However, it does not specify the scope (e.g., evidence for a specific brand or appeal), which could be ambiguous.
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 ten_dlc_brand_evidence_get or ten_dlc_brand_evidence_upload. It implicitly suggests listing, but lacks explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_evidence_uploadAInspect
Uploads 10DLC Brand evidence. Supported formats include .jpg, .png, .pdf, and more. File size must be under 10MB.
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | File to upload. | |
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions supported formats and size limit, but does not state important traits like whether the upload overwrites existing evidence, required authentication, or any side effects. This is insufficient for a mutation 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 consists of two well-structured sentences: the first identifies the action and resource, the second lists constraints. No waste or redundancy, and critical information 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?
The description covers input constraints adequately, and since an output schema exists, return values are documented separately. However, it does not clarify whether the upload adds or replaces evidence, nor does it mention required permissions or additional context like link to brand ID. Given the tool's simplicity, this is mostly complete but could be slightly more comprehensive.
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 (100% coverage). The description adds value beyond the schema by specifying supported file formats ('.jpg, .png, .pdf, and more') and the maximum file size (10MB), which are not in the schema's 'file' description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'uploads' and the resource '10DLC Brand evidence', making the tool's purpose immediately obvious. It also distinguishes itself from related tools like ten_dlc_brand_evidence_delete, _get, _list by specifying the action of uploading.
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 file format and size constraints, which are helpful for using the tool correctly. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., uploading vs. listing evidence), and does not indicate prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brands_createBInspect
Registers a 10DLC Brand. TCR automatically verifies the brand identity. Only brands with VERIFIED or VETTED_VERIFIED identity status can register 10DLC Campaigns.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | Yes | The business zip or postal code | |
| city | Yes | The city name | |
| mock | No | Indicates a mock Brand. You can create mock Brands for testing purposes only, production traffic with the mock Brands is prohibited. | |
| Yes | The email address of the support contact | ||
| country | Yes | 2-letter ISO country code the business address | |
| website | No | The website of the business | |
| dba_name | Yes | Brand name or DBA | |
| vertical | Yes | The segment the business operates in | |
| ein_taxid | Yes | IRS Employee Identification Number (EIN) for US-based or foreign companies with EIN. The numeric portion of Tax ID for companies incorporated in other countries. | |
| last_name | Yes | The last name of the business contact | |
| first_name | Yes | The first name of the business contact | |
| entity_type | Yes | The company entity type | |
| company_name | Yes | Legal name of the company | |
| phone_number | Yes | The support contact telephone in E.164 format | |
| stock_symbol | No | The stock symbol of the Brand. For PUBLIC_PROFIT Brands only. | |
| stock_exchange | No | The stock exchange code. For PUBLIC_PROFIT Brands only. | |
| street_address | Yes | Street name and house number | |
| ein_taxid_country | Yes | 2-letter ISO country code of the Tax ID issuing country | |
| state_or_province | Yes | State or province. For the United States, use 2 character codes. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds some behavioral context by mentioning that TCR automatically verifies the brand identity and that only brands with certain identity status can register campaigns. However, with no annotations provided, it does not fully disclose synchronous behavior, 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 brief (two sentences) and front-loaded with the core action. It avoids redundancy but could be more focused on the tool's direct behavior rather than downstream campaign registration.
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 complex tool with 19 parameters and 15 required, the description is too minimal. It does not explain the registration process, return value, or important notes about the required fields, leaving significant gaps for an agent to understand the tool fully.
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 100% of parameters with descriptions, so the description does not need to add extra semantics. It does not provide additional meaning beyond the schema, hence a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Registers a 10DLC Brand.' It also provides context about TCR verification and prerequisites for campaign registration, distinguishing it from sibling tools like ten_dlc_brands_list or ten_dlc_brands_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?
The description lacks explicit guidance on when to use this tool versus alternatives. It does not mention scenarios where other tools (e.g., ten_dlc_brands_update) might be more appropriate, and it provides no exclusions or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brands_deleteAInspect
Deletes a 10DLC Brand. Brands with active campaigns cannot be deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It discloses a key behavioral trait: deletion is blocked if the brand has active campaigns. This adds value beyond the input schema, though it does not describe error handling or side effects. With no annotations, this is helpful context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the action and a key constraint without any redundant wording.
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 delete tool with an output schema, the description is adequate. It covers the main constraint and the action. It could mention what happens on successful deletion or if the brand doesn't exist, but missing that is acceptable given the output schema likely provides return 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?
The input schema already has 100% coverage for the brand_id parameter with a clear description. The tool description does not add further meaning beyond what the schema provides, so baseline score 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?
The description clearly states the tool deletes a 10DLC Brand, using a specific verb and resource. It distinguishes from sibling tools like create, get, list, and update by naming the delete action explicitly.
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 condition: brands with active campaigns cannot be deleted. This informs when the tool should not be used. However, it does not explicitly compare to other tools or suggest alternatives when deletion is blocked.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brands_getBInspect
Returns a 10DLC Brand.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states the return action, omitting details like read-only nature, error handling (e.g., missing brand), authentication needs, 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 a single, clear sentence with no redundant words. It is appropriately concise for a simple get-by-id 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?
Given the tool's simplicity (one parameter, output schema exists), the description is minimally adequate. However, it lacks context on the return format or behavior for non-existent brands, which could be inferred from the output schema but is not explicit.
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 baseline is 3. The description adds no extra meaning beyond what the schema already provides (brand_id with its own description).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it returns a specific resource ('10DLC Brand') with a clear verb ('Returns'). However, it does not explicitly differentiate from sibling tools like ten_dlc_brands_list, though the singular form implies a single resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ten_dlc_brands_list for multiple brands or ten_dlc_brands_get (same name). There is no context on prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brands_listAInspect
Returns a paginated list of 10DLC brands. Filter results by date, name, legal name, and status. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| mock | No | Indicates whether to include mock brands only. | |
| page | No | Page number. | |
| status | No | Brand identity verification status. | |
| country | No | Brand registration country. | |
| dba_name | No | Brand name. | |
| per_page | No | Number of records per page. | |
| ein_taxid | No | EIN/Tax ID. | |
| entity_type | No | Business entity type. | |
| company_name | No | Company legal name. | |
| show_deleted | No | Indicates whether to include deleted brands. | |
| created_after | No | Brand creation start date in `YYYY-MM-DD` format. | |
| created_before | No | Brand creation end date in `YYYY-MM-DD` format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 pagination defaults (25 per page) and filtering options, but does not mention behavioral traits like idempotency, rate limits, authorization requirements, or whether deleted brands are excluded by default. The absence of these details limits 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 two sentences long, front-loaded with the core purpose, and contains no extraneous information. Every sentence adds value: the first states the main action, the second explains filtering and pagination.
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 functionality (listing with filters and pagination) but omits some filter parameters (e.g., mock, country, ein_taxid, entity_type, show_deleted). Still, it is mostly complete for a 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 description coverage is 100%, so the input schema already documents all 12 parameters. The description summarizes high-level filter categories (date, name, legal name, status) but does not add meaning beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Returns a paginated list') and identifies the resource ('10DLC brands'), clearly distinguishing it from sibling tools like ten_dlc_brands_create (create), ten_dlc_brands_get (get single), ten_dlc_brands_delete (delete), and ten_dlc_brands_update (update).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does and mentions filtering and pagination, but does not explicitly guide when to use this tool versus alternatives (e.g., when to use list vs get). No exclusions or comparative advice are provided, leaving usage decisions to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brands_updateAInspect
Updates a 10DLC brand. Updating identity-related parameters, including ein_taxid, ein_taxid_country, and entity_type, resets the Brand status to UNVERIFIED and triggers automatic re-submission. Brands in VETTED_VERIFIED status or with active Campaigns cannot be updated.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | The business zip or postal code | |
| city | No | The city name | |
| mock | No | Mock flag for testing (optional, defaults to false) | |
| No | The email address of the support contact | ||
| country | No | 2-letter ISO country code the business address | |
| website | No | The website of the business | |
| brand_id | Yes | Brand ID. | |
| dba_name | No | Brand name or DBA | |
| vertical | No | The segment the business operates in | |
| ein_taxid | No | IRS Employee Identification Number (EIN) for US-based or foreign companies with EIN. The numeric portion of Tax ID for companies incorporated in other countries. | |
| last_name | No | The last name of the business contact | |
| first_name | No | The first name of the business contact | |
| entity_type | No | The company entity type | |
| company_name | No | Legal name of the company | |
| phone_number | No | The support contact telephone in E.164 format | |
| stock_symbol | No | The stock symbol of the Brand. For PUBLIC_PROFIT Brands only. | |
| stock_exchange | No | The stock exchange code. For PUBLIC_PROFIT Brands only. | |
| street_address | No | Street name and house number | |
| ein_taxid_country | No | 2-letter ISO country code of the Tax ID issuing country | |
| state_or_province | No | State or province. For the United States, use 2 character codes. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses that updating identity parameters resets status to UNVERIFIED and triggers re-submission, and prohibits updates for certain statuses. This is key behavioral context, though other side effects (e.g., permission requirements) are not mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences; each sentence serves a purpose—first defines the action, second adds critical conditions and side effects. 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?
Despite 20 parameters, the description provides sufficient context for an agent to use the tool: purpose, constraints, and behavioral side effects. An output schema exists to explain return values, so completeness is high.
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 already described. The description adds value by highlighting three identity parameters (ein_taxid, ein_taxid_country, entity_type) that have special side effects, aiding agent understanding.
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 'Updates a 10DLC brand', with a specific verb and resource, distinguishing it clearly from sibling tools like create, delete, get, and list.
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 (updating a brand) and when not to use (Brands in VETTED_VERIFIED status or with active Campaigns cannot be updated). Includes warnings about resetting status, but does not explicitly list alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_usecase_qualifyAInspect
Returns the qualification results for a 10DLC Brand use case. Includes MNO-specific attributes, restrictions, and fees.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| use_case | Yes | Use case name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 return content (attributes, restrictions, fees) but omits side effects, auth requirements, or rate limits. It is 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?
Two sentences, directly to the point with no superfluous words. Efficiently conveys purpose and output content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two required params, output schema exists), description covers return value adequately. Could mention it is read-only, but not required.
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 does not add extra parameter-specific meaning beyond the schema's 'Brand ID.' and 'Use case name.'
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 returns qualification results for a 10DLC Brand use case, with specific verb 'returns' and resource. It distinguishes from sibling tools like create/delete/get by focusing on qualification, and adds details on included attributes.
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 vs alternatives. Given sibling tools are numerous, but context implies this is a read operation; however, no exclusions or alternative tool mentions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_vetting_appeals_createCInspect
Submits an appeal for a 10DLC Brand external vetting.
| Name | Required | Description | Default |
|---|---|---|---|
| evp_id | No | EVP ID. | |
| brand_id | Yes | Brand ID. | |
| evidence | Yes | List of evidence IDs associated with the appeal. | |
| vetting_id | No | Vetting ID. | |
| explanation | No | Appeal comment or justification. | |
| appeal_categories | Yes | List of appeal categories. Allowed values: `VERIFY_TAX_ID`, `VERIFY_NON_PROFIT`, `VERIFY_GOVERNMENT`, `LOW_SCORE`. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lacks any disclosure of behavioral traits such as whether the appeal submission is destructive, idempotent, or requires specific permissions. With no annotations provided, the description carries the full burden but offers minimal insight into what happens when the tool is invoked.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the core purpose. It is front-loaded and not verbose, though it could be structured to include more detail 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 complexity of the tool with 6 parameters and multiple related siblings, the description is insufficient. It does not explain the appeal process, the meaning of appeal categories, or how evidence IDs should be obtained. The presence of an output schema somewhat mitigates the need to describe return values, but the tool still lacks essential 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?
The input schema has 100% description coverage for all 6 parameters, so the description adds no additional meaning beyond what the schema already provides. The baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool submits an appeal for a 10DLC Brand external vetting, using a specific verb and resource. However, it does not differentiate from the sibling tool ten_dlc_brand_appeals_create, which may have a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, such as ten_dlc_brand_appeals_create or ten_dlc_brand_vetting_appeals_list. No context about prerequisites or recommendations is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_vetting_appeals_listBInspect
Returns a list of external vetting appeals for a 10DLC Brand.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure, but it only says 'returns a list'. It does not mention pagination, sorting, rate limits, or any side effects. This is minimal beyond the tool's 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?
The description is a single, clear sentence with no extraneous information. It is appropriately concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema and the input schema is fully documented, the description is minimally adequate. However, it lacks information about the output's structure or pagination, and no usage context is provided.
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 already provides 100% coverage for the single required parameter (brand_id) with a description and example. The tool description adds no additional semantics 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 it returns a list of external vetting appeals for a 10DLC Brand, using a specific verb and resource. However, it does not differentiate from the sibling tool 'ten_dlc_brand_appeals_list', which could cause confusion.
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, nor any context about prerequisites or exclusions. It is merely a statement of what the tool does.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_vettings_createAInspect
Requests external vetting for a 10DLC Brand. Supported providers: AEGIS, CV, WMC. Supported classes: STANDARD, ENHANCED.
| Name | Required | Description | Default |
|---|---|---|---|
| evp_id | Yes | External vetting provider code | |
| brand_id | Yes | Brand ID. | |
| vetting_class | Yes | The vetting class |
Output Schema
| Name | Required | Description |
|---|---|---|
| evp_id | Yes | External vetting provider code |
| reasons | Yes | Reason |
| vetting_id | Yes | Unique identifier of the vetting request |
| create_date | Yes | The date and time the vetting request is created |
| vetted_date | Yes | The date and time the vetting request is competed |
| vetting_class | Yes | The vetting class |
| vetting_score | Yes | The assigned Brand vetting score |
| vetting_token | Yes | Unique vetting token |
| vetting_status | Yes | Status of the vetting request |
| vetting_details | No | Additional details of the vetting request |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden but only says 'requests external vetting'—no mention of side effects, async behavior, auth needs, 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?
Two sentences, no wasted words, front-loaded with action and key 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?
Given output schema exists (not shown), description covers supported options but lacks prerequisite info like brand existence. Still reasonably complete for a creation 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%, but description enriches evp_id and vetting_class by listing allowed values (AEGIS, CV, WMC; STANDARD, ENHANCED), adding value beyond schema examples.
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 requests external vetting for a 10DLC Brand, lists supported providers and classes, and distinguishes from sibling tools like ten_dlc_brand_campaigns_create.
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 when to use (external vetting) and lists supported values, but does not mention when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_vettings_importCInspect
Imports an existing external vetting for a 10DLC Brand.
| Name | Required | Description | Default |
|---|---|---|---|
| evp_id | Yes | External vetting provider code | |
| brand_id | Yes | Brand ID. | |
| vetting_id | Yes | Unique identifier of the vetting request | |
| vetting_token | Yes | Unique vetting token |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not reveal behavioral traits such as side effects, idempotency, or failure modes. It only states the action without elaboration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that front-loads the purpose. No redundant information, though it could be expanded 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 complexity (4 required params, output schema exists), the description lacks details on preconditions, behavior on duplicate, or return value. It is not fully complete for an import 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?
The input schema covers all parameters with descriptions and examples (100% coverage). The description adds no extra meaning beyond the schema, so it meets the 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 it imports an existing external vetting for a 10DLC Brand using a specific verb ('imports') and resource ('external vetting'). It is distinguishable from sibling tools like create or list, though it does not explicitly differentiate.
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 on when to use this tool versus alternatives (e.g., create or list). No mention of preconditions or context for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_brand_vettings_listBInspect
Returns a list of external vettings for a 10DLC Brand.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits like pagination, rate limits, or prerequisites, but it only states that it returns a list, lacking details on how the listing behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is 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?
While the tool is simple with one parameter and an output schema, the description lacks context about what 'external vettings' are or any filtering/pagination details. It is minimally complete but not rich.
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 brand_id, which is well-described in the schema. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a list of external vettings for a 10DLC Brand, which is specific and distinguishes it from sibling tools like ten_dlc_brand_vettings_create.
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 on when to use this tool versus alternatives (e.g., ten_dlc_brand_vettings_create or ten_dlc_brand_vettings_import) is provided. The description only states what it does, not when it is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_campaign_numbers_linkAInspect
Links a phone number to a 10DLC Campaign. Wavix automatically creates a Sender ID once the number is approved.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number to associate with the Campaign. | |
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description adds some transparency by noting that 'Wavix automatically creates a Sender ID once the number is approved'. However, it does not disclose other important behaviors such as idempotency, rate limits, 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?
The description consists of two concise, front-loaded sentences that deliver the core purpose and a notable behavior without extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 required parameters, no nested objects, and an output schema exists), the description covers the main action and a key behavioral detail. It could mention prerequisites like the number being owned or the campaign being active, but overall 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?
All three parameters are already well-described in the input schema (100% coverage), so the description does not add new semantic information beyond what the schema provides. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Links') and the resource ('phone number to a 10DLC Campaign'), and distinguishes itself from sibling tools like 'ten_dlc_campaign_numbers_unlink' and 'ten_dlc_campaign_numbers_list' by specifying the linking operation.
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 linking a number to a campaign) but does not provide explicit guidance on when to use this tool versus alternatives (e.g., list or unlink). No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_campaign_numbers_listAInspect
Returns a list of phone numbers associated with a 10DLC Campaign.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it is a read-only list operation, which is consistent with a read-only tool, but with no annotations, it does not elaborate on permissions, side effects, or output specifics beyond the existence of an output 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?
A single, well-formed sentence that directly states the tool's purpose with no superfluous information, making it highly 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?
For a simple list operation with a full input schema and an output schema available, the description is sufficiently complete to allow correct selection and invocation without missing 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?
The input schema provides complete descriptions and examples for both parameters; the description adds no extra semantic value, achieving the baseline score for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a list of phone numbers for a 10DLC Campaign, matching the tool name and distinguishing it from sibling tools like ten_dlc_campaign_numbers_link/unlink.
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?
Usage is implied from the description and tool name, but no explicit guidance on when to use versus alternatives is given; the context of listing vs. linking/unlinking is clear but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_campaign_numbers_unlinkAInspect
Unlinks a phone number from a 10DLC Campaign. The associated Sender ID is also deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number to unlink. | |
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It does mention the deletion of the associated Sender ID, which is a key side effect. However, it lacks details on reversibility, prerequisites, 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?
The description is a single sentence that conveys the core purpose and a notable side effect. No redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, and the output schema exists (though not shown). The description covers the main action and side effect. Minor gaps exist (e.g., no mention of confirmation or error handling), but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for each parameter. The description adds no additional meaning beyond what the schema already provides, meeting the 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 action ('Unlinks a phone number') and the resource ('10DLC Campaign'), with a specific side effect ('associated Sender ID is also deleted'). It distinguishes this tool from the sibling 'link' 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?
No explicit guidance on when to use this tool versus alternatives like 'link' or 'list'. The use case is implied but not clarified with conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_campaigns_listBInspect
Returns a paginated list of 10DLC Campaigns. Filter results by date, status, and use case. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
| mock | No | Indicates whether to include mock 10DLC Campaigns only. | |
| name | No | Campaign name. | |
| page | No | Page number to retrieve. | |
| status | No | Campaign status. | |
| usecase | No | Use case. | |
| per_page | No | Number of records per page. | |
| created_after | No | Campaign creation start date in `YYYY-MM-DD` format. | |
| created_before | No | Campaign creation end date in `YYYY-MM-DD` format. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses pagination behavior (default 25 records per page) and filtering options. However, without annotations, it does not mention any side effects, rate limits, or permissions. It adds moderate value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the main purpose, and 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?
The description is reasonably complete for a list tool with a rich schema and output schema. It covers pagination and filtering. Minor omission: could more explicitly link page and per_page to navigation.
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 all parameters are described in the schema. The description reiterates filtering by date, status, use case and adds default pagination, but does not significantly enhance 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 states it returns a paginated list of 10DLC Campaigns with filtering by date, status, and use case. It clearly identifies the verb and resource, but does not explicitly differentiate from sibling tools like ten_dlc_brand_campaigns_list.
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?
There is no guidance on when to use this tool versus alternatives. No exclusions or context about prerequisites are provided, leaving the agent to infer usage without support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_campaigns_nudgeAInspect
Requests action on a pending or rejected 10DLC Campaign. Use nudge_intent to specify the action:
REVIEW: Request review for a pending Campaign. -APPEAL_REJECTION: Appeal a rejected Campaign. Note:The Campaign must be at least 72 hours old.
Only one nudge request per Campaign is allowed every 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | Yes | Brand ID. | |
| campaign_id | Yes | Campaign ID. | |
| description | Yes | Description of the nudge request. | |
| nudge_intent | Yes | Nudge intent. Allowed values: `REVIEW`, `APPEAL_REJECTION`. Use `nudge_intent` to specify the action: - `REVIEW`: Request review for a pending Campaign. - `APPEAL_REJECTION`: Appeal a rejected Campaign. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 for behavioral transparency. It reveals the tool modifies state (action request) and includes constraints, but it does not disclose what happens upon success/failure, whether the request is immediate or queued, or any side effects. For a mutation tool, this is a significant gap.
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: one lead sentence plus bulleted notes. It front-loads the purpose and follows with critical usage constraints. Every word is informative 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?
An output schema exists, so return values are likely covered there. The description covers the tool's core action, required parameters, and key constraints. It lacks details on error handling or authorization, but given the focused scope, it provides sufficient context for an 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 coverage is 100% with all 4 parameters described. The description adds value by explaining the nudge_intent enum values and the meaning of description, but for brand_id and campaign_id it only restates what's in the schema. Since the schema already does good documentation, 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 clearly states the tool's purpose: 'Requests action on a pending or rejected 10DLC Campaign.' It specifies the exact actions through `nudge_intent` (REVIEW and APPEAL_REJECTION), distinguishing it from sibling tools like ten_dlc_campaigns_list or brand-related tools. The verb 'requests' and resource '10DLC Campaign' are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use each nudge_intent value and provides two important constraints: campaign must be at least 72 hours old and only one nudge per 24 hours. While it doesn't explicitly state when not to use or give alternatives among siblings, the context is clear enough for an agent to determine appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_subscriptions_createBInspect
Subscribes to Wavix 10DLC event callbacks.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | A webhook URL to send events to | |
| subscription_category | Yes | The Wavix 10DLC event type. Can be one of the following: `brand`, `campaign`, or `number`. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description should disclose behavioral traits like idempotency, validation, or effect on existing subscriptions. Only states 'subscribes' with no further detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no redundancy. Front-loaded with key action and resource.
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?
Adequate for a simple creation tool with output schema present. Lacks detail on behavior such as whether it replaces existing subscriptions or requires authentication.
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 provides full descriptions for both parameters; description adds no extra meaning beyond the generic phrase. Baseline scores apply due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Subscribes'), resource ('Wavix 10DLC event callbacks'), and distinguishes from siblings like ten_dlc_subscriptions_delete and ten_dlc_subscriptions_list.
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 on when to use this tool vs alternatives. Missing context on prerequisites, idempotency, or selection between subscription categories.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_subscriptions_deleteBInspect
Deletes a 10DLC event subscription.
| Name | Required | Description | Default |
|---|---|---|---|
| subscription_category | Yes | Event category to unsubscribe from. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description does not disclose destructive nature, irreversibility, or permission requirements. For a delete operation, this is a significant gap.
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 sentence, no unnecessary words. Perfectly 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?
Despite having only one parameter and an output schema, the description lacks any context about side effects, reversibility, or required state. Incomplete for a delete tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description is clear. The description adds no additional 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 action ('deletes') and the resource ('10DLC event subscription'). It is distinct from sibling tools like create and list.
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 on when to use this tool versus alternatives (e.g., ten_dlc_subscriptions_create). No context about prerequisites or scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ten_dlc_subscriptions_listAInspect
Returns a list of 10DLC event subscriptions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states 'Returns a list' without disclosing behavioral traits like pagination, rate limits, or authentication needs. The tool is a read-only list operation, but the description is 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 a single sentence, very concise, and front-loaded with the action and resource. 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 list tool with no parameters and an output schema, the description is adequate but minimal. It could mention that it returns all event subscriptions without filtering or add context about the output format, though the output schema likely covers the latter.
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 description coverage is 100%. Per guidelines, zero parameters baseline is 4, and the description adds no parameter info (not 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 the tool returns a list of 10DLC event subscriptions, specifying the verb 'returns' and the resource '10DLC event subscriptions', which distinguishes it from sibling list tools like ten_dlc_campaigns_list or ten_dlc_brands_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as other list tools for 10DLC resources. There is no mention of prerequisites or context where this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_events_listBInspect
Returns a list of events for a specific 2FA Verification.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | 2FA Verification ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden but only says 'Returns a list of events'. No behavioral traits like read-only nature, pagination, or authentication requirements are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose without any redundancy 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?
An output schema exists, so return values are documented elsewhere. However, the description lacks completeness in terms of usage context, pagination, or filtering, making it only adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for session_id. The description adds no additional meaning beyond what the schema already provides, warranting the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns a list of events for a specific 2FA Verification, distinguishing it from sibling tools like two_fa_verification_check or two_fa_verification_create. However, it could be more specific about what constitutes an 'event'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., two_fa_verification_check). The description simply states what it does without suggesting appropriate contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_sessions_listBInspect
Returns a list of 2FA verifications. Filter by service or date.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End date in `YYYY-MM-DD` format. | |
| from | Yes | Start date in `YYYY-MM-DD` format. | |
| service_id | Yes | 2FA Service ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only states it returns a list and can be filtered, but lacks disclosure of pagination behavior, error handling, or any constraints 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 a single sentence that conveys the essential purpose efficiently, with no unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema defining return values, the description need not elaborate on that. However, for a simple list operation, the description is adequate but lacks details on potential variations like empty results or ordering.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all parameters. The description adds minimal value by restating that filtering is by service or date, which is already evident from 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 returns a list of 2FA verifications, which is a specific verb-resource combination. However, it does not differentiate from the sibling tool 'two_fa_events_list'.
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 on when to use this tool versus alternatives, nor any conditions or prerequisites. The description only mentions filtering options without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_verification_cancelAInspect
Cancels a 2FA verification. After cancellation, no additional codes are sent, and previously sent codes can no longer be validated. You must create a new verification to send another code.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | 2FA Verification ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: cancellation stops code sending, invalidates old codes, and necessitates a new verification. No annotations exist, so description carries full burden; it covers the main side effects well but doesn't detail resource cleanup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no unnecessary words. Information is 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?
For a simple tool with one parameter, the description covers functionality and consequences adequately. Output schema exists but is not detailed in the input; however, the description is sufficiently complete given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (session_id) with 100% schema coverage. The schema already provides a description ('2FA Verification ID.'). The description adds no additional 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?
Description clearly states the action ('Cancels') and resource ('2FA verification'). It distinguishes itself from sibling tools like two_fa_verification_create and two_fa_verification_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?
Explicitly describes consequences (no more codes, invalidated previous codes) and required next step (create new verification). Provides clear when-to-use and after-effects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_verification_checkCInspect
Validates the verification code.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | The code entered by an end user | |
| session_id | Yes | 2FA Verification ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states 'validates', leaving ambiguous whether the check is read-only or has side effects (e.g., marking a session as verified). No details on error handling or success/failure indicators.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it omits important details that would make it more useful. It is not overly verbose, but it sacrifices completeness for brevity.
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 too minimal for the complexity of the tool, especially given that an output schema exists and there are sibling tools. It lacks context about the 2FA verification flow, such as the relationship to session_id and what happens after validation.
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 both parameters with descriptions and examples. The description adds no extra meaning beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb 'validates' and specifies the resource 'verification code', which indicates the tool's function. However, it does not elaborate on the outcome or context, but it sufficiently distinguishes from siblings like create or cancel.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like two_fa_verification_create or two_fa_verification_resend. There is no mention of prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_verification_createAInspect
Creates a new 2FA Verification and sends a one-time password (OTP) to the destination phone number. Before using this endpoint, create a 2FA Service in the Wavix portal. The service is created once and reused to generate and validate OTPs. OTP flow:
Create a Verification to generate and send an OTP.
Reuse the same Verification to resend the OTP if needed.
Validate the OTP using the 2FA API
When a Verification is created, Wavix generates a random code and sends it to the destination phone number via the selected channel.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | End user's phone number to which the verification code will be sent. The phone number must be in E.164 format. | |
| channel | Yes | The communication channel you want to use. Can be either `sms` or `voice`. | |
| service_id | Yes | Unique Wavix 2FA Service ID. Find your 2FA Service ID on the Wavix portal. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 creation and sending of OTP, but does not mention side effects like expiration, rate limits, or what happens on duplicate calls. The basic behavior is clear but lacks depth.
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?
Descriptive yet concise. The most important action is front-loaded, followed by prerequisite and flow. 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?
Given the rich schema, existence of output schema, and sibling tools for check/resend/cancel, the description fully explains the tool's role in the 2FA flow. 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 description coverage is 100%, with each parameter described. The description adds value beyond schema by explaining the prerequisite for service_id (creating a service in the portal) and the role of the channel in sending OTP.
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 creates a new 2FA Verification and sends an OTP to the destination phone number. It also outlines the OTP flow, distinguishing it from sibling tools like two_fa_verification_check and two_fa_verification_resend.
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 context: when to use this tool (to initiate 2FA), prerequisites (create a 2FA Service first), and a step-by-step flow (create, resend, validate). It lacks explicit when-not-to-use or alternative tool mentions, but the flow implies usage order.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
two_fa_verification_resendAInspect
Resends the verification code using the specified channel. Previously sent codes are invalidated.
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes | The communication channel you want to use. Can be either `sms` or `voice`. | |
| session_id | Yes | 2FA Verification ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses a key behavioral trait: 'Previously sent codes are invalidated.' This adds important context for the agent. However, it does not mention other traits like rate limits, idempotency, or what happens if the session is invalid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the core action. Every word adds value, with no redundancy. It is highly concise 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 the complexity of the tool (2 parameters, no nested objects) and the presence of an output schema, the description is mostly adequate. However, it lacks context about prerequisites (e.g., need for an active session) and error scenarios. The behavioral note about invalidation adds value, but more detail on return states or conditions would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters. The description does not add additional meaning beyond what the schema provides; it merely restates that a channel is used. Thus, the parameter semantics are adequately served by the schema, warranting a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Resends the verification code') and the resource ('verification code') with a specific verb ('resends'). It distinguishes from sibling tools like two_fa_verification_create, two_fa_verification_check, and two_fa_verification_cancel by focusing on resending rather than initial creation or checking.
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 that this tool is used when a verification code needs to be resent via a specified channel. However, it does not explicitly state when to use this over alternatives like two_fa_verification_create for new sessions or two_fa_verification_check for verifying codes. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
voice_campaigns_createCInspect
Triggers an outbound call based on a pre-configured scenario.
| Name | Required | Description | Default |
|---|---|---|---|
| voice_campaign | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| voice_campaign | No |
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 only says 'triggers an outbound call,' lacking details about side effects, idempotency, rate limits, or required pre-approval. Minimal behavioral insight.
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?
A single, front-loaded sentence with no wasted words. Perfectly concise and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema existing, the description is too brief for a creation tool. It omits details like what is returned, the need for pre-approved scenarios, and any post-creation steps. Incomplete 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?
The tool description adds no extra meaning beyond the input schema, which already documents all parameters (including nested). Baseline 3 is appropriate as the schema does the heavy lifting.
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 triggers an outbound call using a pre-configured scenario. It distinguishes from sibling tools like voice_campaigns_get (retrieval) and other call control 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?
No guidance on when to use this tool versus alternatives, no prerequisites or exclusions mentioned. The schema hints at pre-approval for callflow_id, but the description does not provide explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
voice_campaigns_getBInspect
Returns a specific voice campaign.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Voice campaign ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| voice_campaign | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It only says 'returns', with no mention of side effects, permissions, or error conditions. Being a GET, it's likely read-only, but this is 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?
Single sentence that is front-loaded and to the point. 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 get-by-ID tool with an output schema, the description is fairly complete. It could mention typical usage or prerequisites, but the core function 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?
Schema description coverage is 100% for the single parameter 'id', which is described as 'Voice campaign ID.' The description adds no additional 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?
Description clearly states the tool returns a specific voice campaign, using a specific verb and resource. It distinguishes from sibling tools like voice_campaigns_create and voice_campaigns_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., voice_campaigns_list or other campaign tools). The description lacks context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
webrtc_tokens_createBInspect
Creates a Wavix Embeddable widget token.
| Name | Required | Description | Default |
|---|---|---|---|
| ttl | Yes | Time to live in seconds. Pass `null` for no expiration. | |
| payload | No | Arbitrary data to be associated with the token | |
| sip_trunk | Yes | SIP trunk name |
Output Schema
| Name | Required | Description |
|---|---|---|
| ttl | No | Time to live, in seconds |
| uuid | Yes | Token ID |
| token | Yes | Wavix Embeddable Widget token. |
| payload | No | Arbitrary data associated with the token |
| sip_trunk | Yes | SIP trunk name |
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 but only states 'Creates', lacking details on side effects, authentication needs, 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 a single sentence with no unnecessary words, 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?
Despite having a simple interface, the description omits important context such as prerequisites, typical use cases, or behavior of the token creation (e.g., expiration).
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 each parameter, so the description does not need to add more; baseline of 3 applies as description adds no further value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (creates) and the resource (Wavix Embeddable widget token), distinguishing it from sibling tools like webrtc_tokens_delete or webrtc_tokens_get.
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 vs alternatives, such as when to create a token vs update or list existing tokens.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
webrtc_tokens_deleteAInspect
Deletes a Wavix Embeddable widget token. After deletion, the token can't be used to authenticate widget sessions, and any active session associated with it is terminated.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Token ID |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden. It effectively discloses key behavioral traits: the token becomes unusable and any active session is terminated. However, it does not mention idempotency, permissions required, or error types, which would make it more complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, no wasted words, and front-loads the main purpose. Every sentence serves a purpose, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has a single required parameter and an output schema (though not shown), the description covers the essential behavioral context. It explains the effect on tokens and sessions, which is adequate for a deletion tool. However, it could mention the return value or error conditions for full 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% and the description of the uuid parameter in the input schema is sufficient. The tool description does not add additional meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Deletes a Wavix Embeddable widget token') and specifies the resource, distinguishing it from siblings like create, get, list, and update. It also explains the consequences of deletion, which enhances 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 implies the tool is used to revoke or remove a token, but it does not explicitly provide guidelines on when to use it versus alternatives (e.g., webrtc_tokens_update for deactivation). No exclusions or prerequisites are mentioned, so it meets the minimum but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
webrtc_tokens_getAInspect
Returns a Wavix Embeddable widget token configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Token ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ttl | No | Time to live, in seconds. `null` means no expiration. |
| uuid | Yes | Token ID |
| payload | No | Arbitrary data associated with the token |
| sip_trunk | Yes | SIP trunk name |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only operation via 'Returns', but does not explicitly state that no data is modified, nor does it disclose any authentication, rate limits, or side effects. With no annotations, this is minimally adequate but could be more 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 a single sentence of 8 words with no redundancy. It is appropriately concise for a simple retrieval tool and front-loads 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 low complexity (one required parameter, no nested objects, output schema present), the description is mostly complete. However, it could briefly mention that it fetches a specific token configuration by ID, not a list.
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 single parameter 'uuid', which already includes a description ('Token ID.'). The tool description adds no additional meaning beyond what the schema provides, earning the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Returns') and the resource ('Wavix Embeddable widget token configuration'), distinguishing it from sibling tools like webrtc_tokens_create, webrtc_tokens_delete, and webrtc_tokens_list, which have different verbs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like webrtc_tokens_list or other retrieval tools. The description lacks context on prerequisites, typical use cases, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
webrtc_tokens_listAInspect
Returns a paginated list of active Wavix Embeddable widget tokens. Results are limited to 25 records per page by default. Use page and per_page to navigate results.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| items | No | |
| pagination | No |
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 discloses pagination behavior (default 25, page/per_page) and that it returns 'active' tokens. However, it does not mention sort order, whether expired tokens are excluded, rate limits, or the nature of the output (e.g., if tokens are ordered). The description is moderately transparent but leaves gaps.
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 sentences that front-load the core purpose (returns paginated list) and then add navigation details. Every sentence earns its place with no redundancy or 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 that an output schema exists (so return values are documented), the description covers the essential aspects: active tokens, pagination, and navigation. It could mention sorting or filtering, but for a simple list tool with provided output schema, it is reasonably complete. The description adds value beyond the schema by clarifying default page size and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, but the description introduces `page` and `per_page` as mechanisms for navigation. Since schema coverage is 100% (empty), the baseline is 4, but the description adds information about parameters that are not present in the schema, creating a discrepancy. This adds meaning but also potential confusion. Score reflects helpfulness despite schema mismatch.
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 'returns a paginated list of active Wavix Embeddable widget tokens,' specifying the verb (returns), resource (Wavix Embeddable widget tokens), and scope (paginated, active). It distinguishes from sibling tools like webrtc_tokens_get (single token) and webrtc_tokens_create (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 provides clear usage guidance: results are limited to 25 per page by default, and users can use `page` and `per_page` to navigate. However, it does not specify when not to use this tool (e.g., for fetching a single token vs. using webrtc_tokens_get) or mention alternatives. The absence of exclusions is acceptable but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
webrtc_tokens_updateBInspect
Updates the payload for a Wavix Embeddable widget token.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Token ID | |
| payload | Yes | Arbitrary data to be associated with the token |
Output Schema
| Name | Required | Description |
|---|---|---|
| ttl | No | Time to live, in seconds. `null` means no expiration. |
| uuid | Yes | Token ID |
| payload | No | Arbitrary data associated with the token |
| sip_trunk | Yes | SIP trunk name |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, yet the description fails to disclose behavioral details such as whether the update is merging or replacing payload, or if it has side effects. Essential mutative behavior is implied but not elaborated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, which is efficient, but it lacks any structured additional context. It earns its place but provides minimal 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?
For a simple update tool with two parameters and an output schema, the description is minimally adequate. However, it does not cover potential error conditions or clarify the nature of the update (e.g., partial vs. full replacement).
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 already covers both parameters with descriptions ('Token ID' and 'Arbitrary data'), and the description adds no new meaning beyond confirming the payload is being updated. Baseline score for 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Updates the payload') and the resource ('Wavix Embeddable widget token'), distinguishing it from sibling tools like create, delete, get, and list.
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., when to update vs. create). The description does not mention prerequisites or selection criteria.
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!
Your Connectors
Sign in to create a connector for this server.