x402-country-code
Country Code: Fetches capital data for a country name from countriesnow.space and returns name, iso2 and iso3 🆓 5 free trial calls per signed wallet
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| input | No | ||
| country | No |
Country Code: Fetches capital data for a country name from countriesnow.space and returns name, iso2 and iso3 🆓 5 free trial calls per signed wallet
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| input | No | ||
| country | No |
Changes observed during successful MCP inspections.
Input schema / properties / country / descriptionRemoved value: -"Country to process"Input schema / properties / input / descriptionRemoved value: -"Input to process"Input schema / properties / name / descriptionRemoved value: -"Name to process"Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose the upstream data source (countriesnow.space), that the operation is a read ('Fetches'), and the payment model ('5 free trial calls per signed wallet'), which is genuinely useful context. It says nothing about failure behavior for unknown countries, rate limits after the trial, or whether a wallet signature is required per call.
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 core sentence is front-loaded and reasonably tight, but the appended free-trial/pricing clause with an emoji reads as promotional filler rather than operational guidance. Structure is acceptable, content density is uneven.
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, no output schema, and 0% parameter documentation, the description should be doing far more. It gives partial output information (name, iso2, iso3) which is its main contribution, but leaves the three ambiguous input parameters and error behavior entirely unexplained.
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 three string parameters (name, input, country) that appear redundant and mutually ambiguous. The description only hints at 'a country name', which vaguely maps to one or two of them, but never clarifies which parameter is authoritative or how 'input' differs. This is the tool's weakest area and the description does not compensate.
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 verb and resource ('Fetches capital data for a country name') and lists returned fields (name, iso2, iso3), which aligns with the tool name x402-country-code. However, 'capital data' is internally inconsistent with returning name/iso2/iso3 codes and sits confusingly close to siblings like x402-capital-city and x402-country, with no differentiation. Purpose is decipherable but muddled.
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 when-to-use guidance, no prerequisites, and no mention of alternatives such as x402-country, x402-capital-city, or x402-currency-by-country, all of which overlap. The agent is left to infer selection 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.
Add one secure layer between your agents and this server.