x402-is-smith
Is Smith: Check whether a number is a Smith number: composite where digit sum equals the digit sum of its prime factors. Provide value. 🆓 5 free trial calls per signed wallet
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| value | No |
Is Smith: Check whether a number is a Smith number: composite where digit sum equals the digit sum of its prime factors. Provide value. 🆓 5 free trial calls per signed wallet
| Name | Required | Description | Default |
|---|---|---|---|
| value | No |
Changes observed during successful MCP inspections.
Input schema / properties / value / descriptionRemoved value: -"Value to process"Input schema / properties / valueAdded value: +{
+ "description": "Value to process",
+ "type": "string"
+}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden, and it discloses very little: it does not state the return shape (presumably a boolean), how non-composite or non-numeric input is handled, or what a "signed wallet" gate means operationally. The only genuine behavioral disclosure is the free-trial quota, which tells the agent there is a metered/auth dimension. That is useful but far short of what an unannotated tool 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 mathematical definition is front-loaded and earns its place, but the fragment "Provide value." is filler and the emoji plus trial-quota sentence is promotional rather than functional. The core is tight; the packaging around it is not.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 one-parameter predicate with no output schema and no annotations, the definitional sentence does the most important work correctly. However, the absence of any statement about the result type, error behavior, or the wallet/trial gate leaves real gaps for an agent deciding whether and how to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single "value" property, and the description's only reference to it is the uninformative phrase "Provide value." It does not say the value is the integer to test, whether it may be given as a string of digits, how large it may be, or whether negatives/decimals are rejected. With low coverage the description was expected to compensate and does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ("Check whether a number is a Smith number") and even defines the predicate: composite where digit sum equals the digit sum of its prime factors. That is enough for an agent to know exactly what it does. It loses a point because a near-identical sibling, x402-is-smith-number, exists and is never acknowledged or differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no prerequisites are stated. The only contextual note is a pricing/trial line ("5 free trial calls per signed wallet"), which is a billing hint rather than invocation guidance. The agent is left to infer that this is a single-value primality-style predicate.
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.