Hacienda Costa Rica

io.github.jmnzcnPublished by GitHub account jmnzcnv0.1.1Updated Nov 2, 2026

Hacienda de Costa Rica: tipo de cambio, contribuyentes, códigos CABYS con IVA y exoneraciones.

VerifiedSTDIODesktop onlyFinanceBusiness & Commerce

Overview

AI-generated overview

Queries Costa Rica's Ministry of Finance public data: exchange rates, taxpayer status, CABYS codes with VAT, and tax exemptions.

What you can do
  • Look up the day's reference exchange rate for the dollar and euro
  • Check a person or company's tax status by ID number, including regime, standing and economic activities
  • Search the CABYS catalog for product and service codes with their VAT rate
  • Fetch the description, VAT rate and categories of a 13-digit CABYS code
  • Retrieve a tax exemption's beneficiary, percentage, validity and covered CABYS codes
When to use it
Useful when preparing Costa Rican electronic invoices, where each line needs a CABYS code and the correct VAT rate, or when checking whether a counterparty is current with Hacienda before billing. Also handy for quick reference questions about the day's exchange rate or an exemption's validity.
Requirements
Runs locally over stdio via npx, so Node.js 18 or higher is needed. No account, API key or environment variable is required; it calls the public Hacienda API over HTTPS, so network access is needed.
Before you install
All tools are read-only and no credentials are requested. Data comes from public Hacienda APIs and is for reference only; the project is not affiliated with the Ministry, so fiscal decisions should be confirmed with an accountant. The license is noncommercial, and commercial use requires a separate license.

Installation

In SourceWeft

  1. Open Hacienda Costa Rica in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-hacienda-cr

[ci] [npm] [descargas] [License]

Un servidor MCP que le da a Claude, Cursor y otros asistentes de IA acceso a los datos públicos del Ministerio de Hacienda de Costa Rica: el tipo de cambio, la situación tributaria de un contribuyente, los códigos CABYS con su tarifa de IVA y las exoneraciones. Lo hice pensando en la facturación electrónica, donde cada línea de una factura necesita su código CABYS y el IVA correcto.

Está publicado en npm y en el registro oficial de MCP como io.github.jmnzcn/mcp-hacienda-cr.

English summary

[Demo: MCP Inspector llamando a tipo_de_cambio, buscar_cabys y consultar_contribuyente]

Grabado con MCP Inspector contra la API real de Hacienda: el tipo de cambio del día, los códigos CABYS de "café tostado" con su IVA y la situación tributaria de la CNFL.

Qué le podés preguntar a tu asistente

"¿Qué código CABYS uso para vender café tostado y cuánto IVA lleva?"

Hay 71 códigos para café tostado. Por ejemplo, 2391102010100 (café tostado sin descafeinar, en grano) paga IVA del 1 %, pero 2391102020000 (café tostado descafeinado) paga 13 %.

"Antes de facturarle, ¿la empresa 3-101-000046 está al día con Hacienda?"

COMPAÑIA NACIONAL DE FUERZA Y LUZ S.A. · Cédula jurídica · Régimen general · Al día (no morosa ni omisa) · Actividad principal: 3510.0, generación, transmisión y distribución de energía eléctrica.

También: "¿A cuánto está el dólar hoy?" o "¿La exoneración AL-00020402-24 sigue vigente?". Son respuestas reales del servidor contra la API de Hacienda.

Herramientas

  • tipo_de_cambio: el tipo de cambio de referencia del día, dólar (compra y venta) y euro.
  • consultar_contribuyente: nombre, tipo de identificación, régimen, estado, si está moroso u omiso y sus actividades económicas. Ejemplo: 3-101-000046.
  • buscar_cabys: busca códigos CABYS por descripción, con su tarifa de IVA. Ejemplo: café tostado.
  • obtener_cabys: el detalle de un código CABYS, con su IVA y su categoría. Ejemplo: 0161001010000.
  • consultar_exoneracion: beneficiario, porcentaje, vigencia y códigos CABYS que cubre una exoneración. Ejemplo: AL-00020402-24.

Todas son de solo lectura y usan las APIs públicas de Hacienda, así que no hace falta registrarse ni tener una API key.

Instalación

Requiere Node.js 18 o superior.

En Claude Desktop, agregalo a claude_desktop_config.json (Configuración → Desarrollador → Editar configuración):

json
{  "mcpServers": {    "hacienda-cr": {      "command": "npx",      "args": ["-y", "mcp-hacienda-cr"]    }  }}

En Claude Code:

bash
claude mcp add hacienda-cr -- npx -y mcp-hacienda-cr

En Cursor, VS Code y otros clientes MCP, usá el comando npx -y mcp-hacienda-cr con transporte stdio.

Cómo funciona

mermaid
flowchart LR    U["Usuario"] --> A["Asistente de IA<br/>(Claude, Cursor…)"]    A -- "MCP (stdio)" --> S["mcp-hacienda-cr"]    S -- "HTTPS" --> H["api.hacienda.go.cr"]

Está escrito en TypeScript con el SDK oficial de MCP, y cada herramienta valida su entrada con Zod antes de llamar a Hacienda: una cédula física tiene 9 dígitos, una jurídica o NITE 10, un DIMEX 11 o 12, y un código CABYS 13. Cada respuesta trae un texto legible para la conversación y los datos exactos en structuredContent para que el modelo trabaje con ellos. Si la cédula no es válida, el código no existe o la API de Hacienda está caída, el usuario recibe un mensaje claro en vez de un error. Las respuestas quedan en caché 10 minutos (tipo de cambio) o una hora (lo demás) para no saturar la API.

Pruebas

Hay 25 pruebas unitarias del cliente y del servidor completo, con un cliente MCP real en memoria y respuestas de Hacienda grabadas. Aparte, unas pruebas de contrato llaman a la API real para detectar si Hacienda cambia el formato de sus respuestas, y una prueba de humo levanta el servidor compilado por stdio, como lo haría Claude, y llama a las cinco herramientas. El CI corre en Node 18, 20 y 22 en cada push, y las pruebas contra la API real también cada lunes, para enterarme antes que los usuarios si algo cambia.

bash
npm installnpm test            # unitarias, sin rednpm run test:live   # contrato con la API real de Haciendanpm run smoke       # servidor compilado por stdio, de punta a punta

Aviso

Los datos vienen de las APIs públicas del Ministerio de Hacienda y son de referencia. Este proyecto no está afiliado al Ministerio de Hacienda. Las decisiones fiscales confirmalas con un contador o directamente con Hacienda.

Licencia

PolyForm Noncommercial 1.0.0. Podés usarlo gratis para fines no comerciales: uso personal, investigación, educación o para evaluarlo. Cualquier uso comercial necesita una licencia: [email protected]. Las versiones hasta el commit 438da02 (2026-10-26), incluida la 0.1.1 publicada en npm, se publicaron con licencia MIT.

English summary

mcp-hacienda-cr is a Model Context Protocol server that lets AI assistants such as Claude and Cursor query the public APIs of Costa Rica's Ministry of Finance: official exchange rates, taxpayer status (registered, delinquent or non-filer, economic activities), CABYS product and service codes with their VAT rate, and tax exemptions. It is aimed at e-invoicing, where every invoice line needs a CABYS code and the right VAT rate. No API key is needed. It is listed in the official MCP registry and installs with one command:

bash
claude mcp add hacienda-cr -- npx -y mcp-hacienda-cr

Ney Fred Jiménez Campos · LinkedIn · GitHub

Source: README.md at commit c002736

Tools

5

tipo_de_cambio

Tipo de cambio del día

Tipo de cambio de referencia de hoy según Hacienda: dólar (compra y venta en colones) y euro (en colones y en dólares).

Takes no parameters.

consultar_contribuyente

Consultar contribuyente

Situación tributaria de una persona o empresa en Hacienda a partir de su cédula física, jurídica, DIMEX o NITE: nombre, régimen, estado, si está morosa u omisa y sus actividades económicas. Útil antes de emitir una factura electrónica.

Parametersidentificacionrequired

buscar_cabys

Buscar código CABYS

Busca en el catálogo CABYS (Catálogo de Bienes y Servicios) los códigos que corresponden a un producto o servicio, con su tarifa de IVA. Todo bien o servicio de una factura electrónica en Costa Rica necesita su código CABYS.

Parameterslimitedescripcionrequired

obtener_cabys

Detalle de un código CABYS

Descripción, tarifa de IVA y categorías de un código CABYS de 13 dígitos.

Parameterscodigorequired

consultar_exoneracion

Consultar exoneración

Datos de una exoneración de impuestos registrada en Hacienda a partir de su número de autorización: beneficiario, porcentaje, vigencia y códigos CABYS que cubre.

Parametersautorizacionrequired

Version history

1
  1. v0.1.1LatestOct 26, 2026

Score

80% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.