Skip to main content
Glama

Factorial

factorial
Read-onlyIdempotent

Calcula el factorial exacto n! para 0 ≤ n ≤ 2000. Cuándo: un resultado numérico tiene que ser exacto o reproducible y no estimado. No para: realizar aritmética exacta de enteros grandes (bigint-calc). 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: Computes the exact n! for 0 ≤ n ≤ 2000 as a decimal string, with digit count. When: a numeric result has to be exact or reproducible instead of estimated. Not for: computing the exact arbitrary-precision integer arithmetic (bigint-calc). 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.

Input Schema

NameRequiredDescriptionDefault
nYesn (integer; required; min 0; max 2000).

Output Schema

NameRequiredDescriptionDefault
digitsNo
resultNoany JSON value

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / n / examples
      Added value: +[
      +  20
      +]
  2. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover read-only, closed-world, idempotent and non-destructive, so the repetition of "sin efectos secundarios" earns little. The added value is concrete operational context the annotations do not carry: determinism, 64 KB input cap, 1 s per call, and 1 MB result cap.

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

Conciseness3/5

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

Well front-loaded and labelled (Cuándo / No para / Efectos / Límites), but the entire content is duplicated verbatim in Spanish and English, roughly doubling length with no informational gain. Each half alone would be tight.

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

Completeness5/5

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

An output schema exists, so return values need not be explained, yet the description still flags the decimal-string-with-digit-count shape. Input bounds, timeouts, size caps and determinism are all covered, leaving nothing an agent needs in order to call it correctly.

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 the single parameter already declares min 0, max 2000 and an example, so the description adds no new syntax or format detail for n. Baseline 3 applies when the schema does the heavy lifting.

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?

States a specific verb and resource ("Computes the exact n! for 0 ≤ n ≤ 2000") and adds the output form (decimal string with digit count). It also names the sibling bigint-calc as the thing it is not, so the agent can separate the two without opening either schema.

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

Usage Guidelines4/5

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

Explicit "When" and "Not for" clauses with a named alternative (bigint-calc) give real routing guidance. The exclusion phrasing is slightly muddled, since factorial itself is exact big-integer arithmetic, leaving some ambiguity about where the boundary actually sits.

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