x402-uppercase-ratio
Uppercase Ratio: Fraction of a text's letters that are uppercase, ignoring non-letters. Input: text. Output: 0 to 1. 🆓 5 free trial calls per signed wallet
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | ||
| input | No |
Uppercase Ratio: Fraction of a text's letters that are uppercase, ignoring non-letters. Input: text. Output: 0 to 1. 🆓 5 free trial calls per signed wallet
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | ||
| input | No |
Changes observed during successful MCP inspections.
Input schema / properties / input / descriptionRemoved value: -"Input to process"Input schema / properties / text / descriptionRemoved value: -"Text to process"Input schema / properties / inputAdded value: +{
+ "description": "Input to process",
+ "type": "string"
+}Input schema / properties / textAdded value: +{
+ "description": "Text to process",
+ "type": "string"
+}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations and no output schema, the description carries the full burden, and it does disclose two useful traits: the output is bounded 0 to 1, and access requires a signed wallet with 5 free trial calls. It does not say what happens when the text contains no letters (the denominator hits zero) or what error shape is returned.
Agents need to know what a tool does to the 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 definition is front-loaded and the definition-output-pricing order is sensible with no filler. The terse "Input: text. Output: 0 to 1." fragment is efficient, though it is too clipped to resolve the two-parameter ambiguity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-metric calculator, the metric definition and output range cover the core, and the pricing note is a bonus. But with no annotations, no output schema, and 0% schema coverage on a duplicated parameter, the description should have resolved the text/input alias and empty-input 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 description coverage is 0% and there are two string parameters, text and input, which look like aliases. The description mentions only "Input: text", leaving input entirely unexplained and the precedence between the two undocumented, at exactly the point where the agent needs disambiguation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a precise, specific metric: the fraction of letters that are uppercase, explicitly ignoring non-letters, plus the 0-1 output range. It is clearly distinct from compute-heavy siblings, though it never names the closest neighbors (uppercase-count, lowercase-ratio, mixed-case-ratio), so an agent must rely on the name alone to pick among them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when-to-use guidance, no statement of when not to use it, and no pointer to the sibling that counts uppercase letters instead of computing a ratio. Usage is only implied by the mathematical definition; nothing tells the agent whether this or x402-uppercase-count better fits a counting task.
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.