Browse SMS verification services
list_sms_servicesLook up publicly listed SMS service names, stock and indicative prices. No access to numbers or verification codes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No |
list_sms_servicesLook up publicly listed SMS service names, stock and indicative prices. No access to numbers or verification codes.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description usefully adds that prices are 'indicative' and that no numbers or codes are exposed, which is real context beyond the annotations. It still omits pagination, result ordering, and any rate-limit or failure behavior expected of a browse endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the positive capability and immediately followed by the hard scope limit. No filler or redundant restatement of the tool 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?
Because there is no output schema, the description's mention of names, stock, and indicative prices is valuable return-value context. However, for a filtered-list tool with two undocumented parameters and no pagination explanation, the definition leaves real gaps an agent would need to call it confidently.
Complex tools with many parameters or behaviors need more documentation. 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%: neither 'limit' nor 'query' has any description, only types, a default of 15, a maximum of 25, and a 64-character query cap. The description never mentions either parameter, so it does not compensate for the gap — an agent must guess whether 'query' matches service names, countries, or something else.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb-plus-resource: 'Look up publicly listed SMS service names, stock and indicative prices.' It also bounds scope by stating what is not returned (numbers, verification codes), which separates it from a number-provisioning tool. It does not name or contrast with any sibling such as get_sms_price_options, so sibling differentiation is left implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit when-to-use or when-not-to-use guidance. The description never says whether this is the discovery step before get_sms_price_options, or when a query filter should be applied instead of listing everything. Only the negative scope statement hints at boundary conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.