Skip to main content
Glama

Retención en la fuente por salarios

co-retencion-salarios
Read-onlyIdempotent

Calcula la retención en la fuente mensual por salarios, procedimiento 1 (tabla del art. 383 del E.T. en UVT, renta exenta del 25 %, límite del 40 %), con la UVT 2026; cita norma y URL de cada dato y marca lo no verificado. Cuándo: hay que aplicar con exactitud una regla colombiana (DIAN, festivos de la Ley Emiliani, montos en COP, IVA, GMF, UVT), p. ej. al facturar o cobrar. No para: convertir entre UVT y pesos para 2024 (co-uvt-convert). 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 Colombian monthly income-tax withholding on wages by procedure 1 (Estatuto Tributario art. 383 table in UVT, 25% exempt income, 40% cap) with the 2026 UVT, citing the rule and URL of each figure and flagging what is not verified. [EN completo / full EN: inputSchema.description]

Input Schema

NameRequiredDescriptionDefault
uvt_valueNoUVT value in pesos; default 2026 = 52374 (Resolución DIAN 000238 de 2025) (number; optional; default 52374; min 1000; max 1000000).
deductionsNoMonthly deductions already capped by their own limits (dependents, mortgage interest, prepaid health) (number; optional; default 0; min 0; max 1000000000000).
other_exempt_incomeNoOther exempt income of the month already capped (voluntary pension, AFC/AVC) (number; optional; default 0; min 0; max 1000000000000).
monthly_labor_incomeYesTaxable labor payments of the month (salary and other wage payments) in pesos (number; required; min 0; max 1000000000000).
mandatory_contributionsNoEmployee mandatory pension (incl. solidarity fund) and health contributions of the month, non-taxable income (number; optional; default 0; min 0; max 1000000000000).

Output Schema

NameRequiredDescriptionDefault
uvtNo
avisoNo
fuenteNo
rango_uvtNo
retencionNo
deduccionesNo
ingreso_netoNo
base_gravableNo
no_verificadoNo
procedimientoNo
retencion_uvtNo
ingreso_laboralNo
renta_exenta_25No
base_gravable_uvtNo
limite_beneficiosNo
tarifa_efectiva_pctNo
beneficios_aplicadosNo
otras_rentas_exentasNo
beneficios_recortadosNo
ingresos_no_constitutivosNo
tope_mensual_renta_exenta_25No

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / monthly_labor_income / examples
      Added value: +[
      +  10000000
      +]
  2. Added

TDQS

A4.2/5.0
Behavior4/5

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

Adds genuine traits beyond the annotations: each figure is returned with its cited norm and URL and unverified data is flagged, plus concrete limits (64 KB input, 1 s per call, 1 MB result) and determinism. It does restate the read-only/no-network/no-state properties already carried by readOnlyHint/openWorldHint/destructiveHint, so it is additive rather than fully original.

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?

Front-loaded with the core computation, then clearly labeled Cuándo / No para / Efectos secundarios / Determinista / Límites blocks — very scannable. Minor waste from the duplicated full English restatement and the 'full EN: inputSchema.description' pointer.

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?

For a deterministic calculation tool with an output schema present, everything an agent needs is covered: scope, legal basis, exclusions, side effects, determinism and hard limits. Return-value shape is legitimately delegated to the output schema.

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%, with every parameter's meaning, default, cap and min/max already documented in-schema. The description contributes the rule constants (25% exempt, 40% cap) that explain how the inputs are combined, but it adds no parameter-level syntax or edge-case guidance, so the baseline 3 applies.

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 precise verb+resource+scope: 'Calcula la retención en la fuente mensual por salarios, procedimiento 1', and pins the exact legal basis (art. 383 E.T., UVT table, 25% exempt income, 40% cap, UVT 2026). This distinguishes it from generic tax/withholding siblings without opening a 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?

Explicitly names an alternative and the condition that excludes it: 'No para: convertir entre UVT y pesos para 2024 (co-uvt-convert)'. The 'Cuándo' clause gives context (applying Colombian rules exactly, invoicing/payment flows) but the exclusion is narrow – it never says that other withholding concepts or procedure 2 fall outside this tool.

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