Skip to main content
Glama
ordis-mcp-server

ordis-mcp-server

ordis-mcp-server

Servidor MCP de solo lectura para la API contable de Ordis SpA. Expone cada endpoint de https://ordis.cl/api/v1 como una tool tipada, para consultar la contabilidad de forma nativa desde Claude (Claude Code / Claude Desktop) sin adivinar rutas.

El servidor no guarda el token: lo lee de la variable de entorno ORDIS_API_KEY y actúa solo como cliente HTTP. Autentica únicamente por header Authorization: Bearer.

Requisitos

  • Node.js 18 o superior (usa fetch nativo).

  • Un token de la API de Ordis (ordis_sk_...). Se genera en el portal: ordis.cl → Acceso API a tus datos (/portal/api-keys) → Crear llave. Se muestra una sola vez — guárdala como variable de entorno, nunca en un archivo versionado.

Related MCP server: Pacioli

Instalar y compilar

npm install
npm run build

Genera dist/index.js (el ejecutable del servidor).

Probar en local (MCP Inspector)

ORDIS_API_KEY="ordis_sk_..." npx @modelcontextprotocol/inspector node dist/index.js

Abre la UI del Inspector, lista las 11 tools y prueba una llamada (ej. ordis_get_kpis con periodo: "2026-07").

Conectar a Claude

Opción 1 — Claude Code (CLI)

claude mcp add ordis \
  --env ORDIS_API_KEY=ordis_sk_TU_TOKEN \
  -- node /ruta/absoluta/ordis-mcp-server/dist/index.js

Opción 2 — Config JSON (Claude Desktop / Claude Code)

En el archivo de config de MCP:

{
  "mcpServers": {
    "ordis": {
      "command": "node",
      "args": ["/ruta/absoluta/ordis-mcp-server/dist/index.js"],
      "env": {
        "ORDIS_API_KEY": "ordis_sk_TU_TOKEN"
      }
    }
  }
}

Usa la ruta absoluta a dist/index.js. Reinicia el cliente para que detecte el servidor.

Variables de entorno

Variable

Requerida

Descripción

ORDIS_API_KEY

Sí

Token de solo lectura (ordis_sk_...).

ORDIS_API_BASE_URL

No

Sobrescribe el base URL. Default: https://ordis.cl/api/v1.

Tools disponibles (11, todas solo lectura)

Tool

Endpoint

Parámetros

ordis_get_empresa

/me

—

ordis_list_facturas

/facturas

periodo?, tipo?, page?

ordis_get_f29

/f29

periodo?

ordis_get_f22

/f22

anio?

ordis_get_flujo_caja

/flujo-caja

anio?

ordis_get_kpis

/kpis

periodo?

ordis_list_liquidaciones

/liquidaciones

periodo?

ordis_list_trabajadores

/trabajadores

estado?

ordis_list_deudas

/deudas

estado?

ordis_list_movimientos_banco

/movimientos-banco

periodo?, page?

ordis_list_boletas_honorarios

/boletas-honorarios

periodo?, estado?, page?

  • periodo valida el formato YYYY-MM en el cliente (falla rápido sin gastar una llamada de red).

  • anio valida el rango 2020–2027.

  • page debe ser ≥ 1.

  • Enums validados en el cliente (mismos valores que la API): tipo = emitida | recibida · estado de boletas = vigente | anulada | rechazada · estado de deudas = activo | pagado | cancelado · estado de trabajadores = activo | licencia | vacaciones | desvinculado.

  • En los endpoints con tope de filas (deudas, trabajadores), si la respuesta trae meta.has_more: true hay más datos que los devueltos.

Estructura

ordis-mcp-server/
├── package.json
├── tsconfig.json
├── README.md
└── src/
    ├── index.ts       # arranque + transporte stdio
    ├── client.ts      # cliente HTTP: auth por header, timeout, errores accionables
    ├── tools.ts       # registro de las 11 tools
    ├── schemas.ts     # campos Zod reutilizables (periodo, anio, page, estado)
    └── constants.ts   # base URL, timeout, límite de caracteres

Nota sobre versiones del SDK

Este servidor usa el SDK v1 (@modelcontextprotocol/sdk), que es la línea compatible y probada con la config stdio actual de Claude Code / Desktop.

Existe una línea v2 (@modelcontextprotocol/server, spec 2026-07-28) con paquetes renombrados y zod/v4. Cuando v2 se estabilice en los hosts, la migración es acotada: cambiar los imports, pasar inputSchema como z.object({...}) en vez de shape plano, y actualizar el transporte. La lógica de negocio (client.ts, mapeo de params) no cambia.

Seguridad

  • Solo lectura: no hay tools que escriban, borren ni muten datos (la API de Ordis tampoco tiene endpoints de escritura).

  • El token vive solo en la variable de entorno; nunca se loguea ni se persiste.

  • En stdio, stdout es el canal del protocolo MCP: todos los logs van a stderr.

  • Puedes revocar el token cuando quieras desde ordis.cl/portal/api-keys; el corte es inmediato. Rota el token si sospechas que se expuso.

  • Al reportar un issue en este repositorio, no pegues respuestas de la API (contienen datos de tu empresa). Describe el error y el endpoint; con eso alcanza.

Available Tools

11 tools
ordis_get_empresaDatos de la empresaA
Read-onlyIdempotent

Devuelve razón social, RUT, plan contable y el catálogo de endpoints disponibles. Útil como punto de partida para descubrir qué se puede consultar.

Inputs: no named parameters.

ordis_get_f22Formulario 22 (renta anual)B
Read-onlyIdempotent

Formulario 22 anual de renta: resultado a pagar o devolución por año tributario.

Inputs: anio.

ordis_get_f29Formulario 29 (IVA mensual)A
Read-onlyIdempotent

Formulario 29 mensual: IVA (débito/crédito), PPM, retenciones y total a pagar. Sin período devuelve los últimos 12.

Inputs: periodo.

ordis_get_flujo_cajaFlujo de caja anualA
Read-onlyIdempotent

Flujo de caja del año mes a mes: ingresos, egresos, impuestos y financiamiento.

Inputs: anio.

ordis_get_kpisKPIs del períodoA
Read-onlyIdempotent

Indicadores del período: ventas, gastos, impuestos del F29 y resultado, con su desglose y una explicación en texto. Sin período usa el mes en curso.

Inputs: periodo.

ordis_list_boletas_honorariosBoletas de honorariosA
Read-onlyIdempotent

Boletas de honorarios con retención y estado (incluye anuladas, identificadas como tales). Paginado.

Inputs: page, estado, periodo.

ordis_list_deudasDeudas y cuentas por cobrarA
Read-onlyIdempotent

Deudas y compromisos (créditos, leasing, tarjetas) y cuentas por cobrar, con cuotas pendientes. La dirección la define 'naturaleza' (pasivo = debes / activo = te deben).

Inputs: estado.

ordis_list_facturasDocumentos tributarios (facturas)A
Read-onlyIdempotent

Lista documentos tributarios emitidos y recibidos, con folio, contraparte y montos. Paginado. Filtra por período (YYYY-MM) y tipo.

Inputs: page, tipo, periodo.

ordis_list_liquidacionesLiquidaciones de sueldoA
Read-onlyIdempotent

Liquidaciones de sueldo aprobadas. Sin período devuelve los últimos 3 meses con liquidaciones.

Inputs: periodo.

ordis_list_movimientos_bancoMovimientos bancarios (cartolas)A
Read-onlyIdempotent

Movimientos de las cartolas bancarias cargadas, con categoría y estado de conciliación. Paginado.

Inputs: page, periodo.

ordis_list_trabajadoresNómina de trabajadoresA
Read-onlyIdempotent

Nómina completa con el estado de cada trabajador (activo, licencia, vacaciones, desvinculado).

Inputs: estado.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool targets a distinct financial entity or document type (e.g., invoices, tax forms F29/F22, payroll, debts, bank movements). The only slight overlap is between ' get_f29' and 'get_kpis' (which summarizes F29 data), but their purposes differ clearly.

    Naming Consistency5/5

    All tools follow a consistent 'ordis_get_' or 'ordis_list_' prefix followed by a noun, using snake_case throughout. There is no mixing of conventions or vague verbs.

    Tool Count5/5

    With 11 tools covering a broad financial domain, the count is well within the ideal range and each tool addresses a specific data source.

    Completeness4/5

    The server provides read-only access to a comprehensive set of Chilean tax and accounting data, including monthly and annual tax forms, invoices, payroll, cash flow, and KPIs. Minor gaps exist, such as no detail endpoints for individual invoices or payroll documents, but the core data needed for financial analysis is present.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      MCP server for QuickBooks Online providing read-only access to customers, vendors, invoices, bills, and chart of accounts. Enables natural language queries to your financial data through Claude or any MCP client.
      8
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      MCP server that connects Claude Code to the Holded API for natural language financial, accounting, and invoicing queries, with built-in Spanish PGC context.
      13
      2
      Apache 2.0
    • A
      license
      B
      quality
      F
      maintenance
      A read-only MCP server that exposes Fiken accounting API's 61 GET endpoints as tools for AI assistants to query accounting data.
      61
      22 npm
      3
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      Read-only MCP server that connects to an InvoiceFlash MySQL database, exposing clients, invoices, and quotes as tools for natural language querying via Claude Desktop or Claude Code.
      -