Skip to main content
Glama

Importe con letra (México, CFDI)

mx-amount-in-words
Read-onlyIdempotent

Escribe un importe en letras al estilo de facturas (CFDI) y cheques en México: "MIL DOSCIENTOS PESOS 50/100 M.N.". Cuándo: hay que tratar texto, números o fechas en español según las reglas escritas del idioma y no por aproximación. No para: escribir un valor en pesos colombianos en letras para cheques y facturas (co-amount-in-words). Efectos secundarios: ninguno (solo lectura, sin red, sin estado guardado). Determinista: la misma entrada da la misma salida. Límites: entrada JSON de hasta 64 KB, 1 s por llamada, resultado de hasta 1 MB.

EN: Writes a peso amount in words in the style used on Mexican invoices (CFDI) and checks: "MIL DOSCIENTOS PESOS 50/100 M.N.". When: Spanish text, numbers or dates have to be handled by the written rules of Spanish instead of by approximation. Not for: writing a Colombian peso amount in words for cheques and invoices (co-amount-in-words). Side effects: none (read-only, no network access, no stored state). [EN completo / full EN: inputSchema.description]

Input Schema

NameRequiredDescriptionDefault
amountYesAmount as number or decimal string (up to 2 decimals) (number or string; required; up to 30 chars).
uppercaseNoUppercase (boolean; optional; default true).

Output Schema

NameRequiredDescriptionDefault
wordsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / amount / examples
      Added value: +[
      +  1200.5
      +]
  2. Changed1 schema field changed
    • addedInput schema / description
      Added value: +"EN: Writes a peso amount in words in the style used on Mexican invoices (CFDI) and checks: \"MIL DOSCIENTOS PESOS 50/100 M.N.\". When: Spanish text, numbers or dates have to be handled by the written rules of Spanish instead of by approximation. Not for: writing a Colombian peso amount in words for cheques and invoices (co-amount-in-words). Side effects: none (read-only, no network access, no stored state). Deterministic: the same input gives the same output. Limits: JSON input up to 64 KB, 1 s per call, result up to 1 MB."
  3. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the "read-only, no network, no stored state" statement is largely redundant. The genuinely additive content is determinism (same input → same output) and hard limits (64 KB input, 1 s/call, 1 MB result), which the agent cannot infer from structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well structured with labeled sections (When / Not for / Side effects / Limits) and the output example front-loaded. Slight waste in the ES/EN duplication plus the dangling "[EN completo / full EN: inputSchema.description]" pointer, which carries no information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return format need not be described, and annotations cover safety; the description still supplies determinism, limits and a sample result. Minor gaps remain around edge-case inputs (negatives, more than two decimals) that a money-in-words tool would plausibly encounter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters carry their own descriptions, so the schema does the heavy lifting and baseline 3 applies. The description adds nothing about `amount` accepted forms (negatives, >2 decimals, rounding) or what `uppercase=false` produces, beyond implying the default case via the sample output.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb+resource (write a peso amount in words, Mexican CFDI/cheque style) and gives a literal output example, so the agent knows exactly what comes back. It also names the sibling it is not (co-amount-in-words), making the distinction from other amount-in-words tools immediate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Cuándo / When" states the triggering condition (handling Spanish text/numbers/dates by written language rules) and "No para / Not for" explicitly excludes the Colombian variant with a named alternative sibling. Both the positive and negative selection conditions are stated outright.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources