mi-sii-mcp

Read-only MCP server for Chile's tax service (SII): VAT (RCV, F29), fee receipts and income tax (F22).

Documentation

Logo de mi-sii-mcp

mi-sii-mcp — Servidor MCP para el SII de Chile

Tus impuestos del SII, conversados con tu asistente de IA.

Licencia MIT Open source Node.js 22.12 o superior Model Context Protocol Solo lectura

mi-sii-mcp en Glama: puntuación del servidor MCP

Sitio web · Instalación · Compatibilidad · Ejemplos · Preguntas frecuentes · Guía completa

mi-sii-mcp es un servidor Model Context Protocol (MCP) de código abierto que conecta asistentes de inteligencia artificial —Claude, Codex, Cursor, Gemini CLI, VS Code con Copilot y otros clientes MCP— con tu información tributaria del Servicio de Impuestos Internos (SII) de Chile. Lee tu IVA, tus F29, tu renta (F22), tus boletas de honorarios y lo que otros informan sobre ti; lo guarda en tu equipo y lo concilia para mostrarte qué cuadra, qué no y qué vence. Funciona en solo lectura y el asistente nunca recibe tu clave.

[!NOTE] Proyecto independiente de código abierto: no está afiliado al SII ni reemplaza la asesoría de un contador. Úsalo para revisar tu información y tomar mejores decisiones.

Demostración con datos ficticios: el asistente consulta mi-sii-mcp y responde cuánto se ha retenido en boletas de honorarios, por pagador, y que cuadra con lo informado al SII


Características principales

  • Consultas tributarias en lenguaje natural: pregúntale a tu asistente por tu IVA, tus F29, tu renta o tus boletas de honorarios, con tus datos reales del SII.
  • Conciliación automática: cruza el registro de compras y ventas con el F29, las boletas con la renta y lo que informan tus pagadores con tus propios registros.
  • Alertas útiles: F29 sin presentar o por vencer (día 12, 20 o 28 según tu caso), facturas por reclamar y descuadres.
  • Solo lectura: nunca presenta, modifica ni emite nada en el SII.
  • Datos locales: todo se guarda en una base SQLite en tu equipo; no hay servidores intermedios.
  • La clave no pasa por el chat: inicias sesión en una página local y ninguna herramienta del MCP recibe claves.
  • Varias cuentas: tu RUT personal y los de tus empresas, cada uno con su propia sesión.
  • Open source (MIT), escrito en TypeScript, con más de 1.300 pruebas automáticas que usan solo datos ficticios.

Qué lee del SII y qué concilia

ÁreaQué trae del SIIQué concilia
IVARegistro de Compras y Ventas (RCV), F29 presentados (con su PDF) y propuesta de F29IVA del RCV contra el F29, F29 faltantes, facturas por reclamar y coherencia interna del F29
Boletas de honorariosRecibidas (por mes) y emitidas (resumen anual y detalle boleta por boleta)Retención de las boletas contra el F29 (código 151) y contra la renta (códigos 547 y 492)
Renta (F22)Declaraciones por año tributario, folio vigente, códigos, observaciones y eventos (devoluciones, giros)Boletas emitidas y lo informado por terceros contra el F22
Informado por tercerosDeclaraciones juradas que otros presentan sobre ti (p. ej. retenciones de honorarios)Lo que informa cada pagador contra tus boletas y tu F22; avisa si el SII observó la declaración de un informante
CuentaPerfil tributario (régimen, segmento, autorización para declarar el F29 hasta el día 20) y empresas autorizadasVencimientos del F29 según tu caso

Los datos públicos (UTM, tablas de impuestos, tasas de cotización, comisiones de AFP) no se guardan: la herramienta fuentes_oficiales indica en qué página oficial consultarlos para el año que corresponda.

Compatibilidad con agentes de IA

mi-sii-mcp es un servidor MCP local (transporte stdio), así que funciona con los clientes que ejecutan servidores MCP locales.

ClienteEstadoCómo se configura
Claude Code✅ Probadoclaude mcp add (ver instalación)
Claude DesktopConfiguración documentadaclaude_desktop_config.json (formato mcpServers)
Codex CLIConfiguración documentada~/.codex/config.toml
CursorConfiguración documentada~/.cursor/mcp.json (formato mcpServers)
VS Code con GitHub CopilotConfiguración documentada.vscode/mcp.json
Gemini CLIConfiguración documentada~/.gemini/settings.json (formato mcpServers)
Windsurf, Cline y otrosConfiguración documentadaFormato mcpServers

«Configuración documentada» significa que se usa el formato MCP estándar de cada cliente; el desarrollo y las pruebas en vivo se hicieron con Claude Code.

Cómo funciona

flowchart LR
    P([Tú]) -- preguntas --> A
    subgraph A [Tu asistente con MCP]
        direction TB
        A1[Claude Code / Desktop]
        A2[Cursor · Windsurf · Cline]
        A3[VS Code + Copilot]
        A4[Gemini CLI · Codex CLI]
    end
    A <-- herramientas MCP --> M[mi-sii-mcp]
    M -- solo lectura --> S[(Portal del SII)]
    M <--> D[(Base local<br/>~/.mi-sii-mcp)]
    P -. conecta su cuenta .-> W[Página local<br/>Abrir mi-sii-mcp.cmd]
    W --> M
  1. Conectas tu cuenta una vez en una página local; la clave no pasa por el chat.
  2. El asistente pide datos al servidor MCP, que los lee del SII y los guarda en tu equipo.
  3. mi-sii-mcp concilia la información con reglas tributarias y responde con hallazgos claros.

Requisitos

  • Node.js 22.12 o superior (probado con Node 24).
  • Un cliente MCP que ejecute servidores locales (ver compatibilidad).
  • Clave tributaria del SII.
  • Windows es la plataforma probada; el código es multiplataforma y en macOS o Linux la página local se abre con npm run local.

Instalación

git clone https://github.com/Taksuma-0/mi-sii-mcp.git
cd mi-sii-mcp
npm install
npm run build

1. Registrar el servidor en tu asistente

El servidor se inicia con node <carpeta>/dist/interfaces/cli/bin.js mcp. Reemplaza C:\ruta\a\mi-sii-mcp por la carpeta donde clonaste el proyecto (en macOS/Linux, una ruta como /home/tu-usuario/mi-sii-mcp).

Claude Code
claude mcp add --scope user mi-sii-mcp -- node "C:\ruta\a\mi-sii-mcp\dist\interfaces\cli\bin.js" mcp
Codex CLI (~/.codex/config.toml)
[mcp_servers.mi-sii-mcp]
command = "node"
args = ["C:\\ruta\\a\\mi-sii-mcp\\dist\\interfaces\\cli\\bin.js", "mcp"]
VS Code con Copilot (.vscode/mcp.json o la configuración de usuario)
{
  "servers": {
    "mi-sii-mcp": {
      "type": "stdio",
      "command": "node",
      "args": ["C:\\ruta\\a\\mi-sii-mcp\\dist\\interfaces\\cli\\bin.js", "mcp"]
    }
  }
}
Claude Desktop, Cursor, Windsurf, Cline, Gemini CLI y otros con formato mcpServers

Agrega esto al archivo de configuración MCP de tu cliente (Claude Desktop: claude_desktop_config.json; Cursor: ~/.cursor/mcp.json; Gemini CLI: ~/.gemini/settings.json; Windsurf: ~/.codeium/windsurf/mcp_config.json):

{
  "mcpServers": {
    "mi-sii-mcp": {
      "command": "node",
      "args": ["C:\\ruta\\a\\mi-sii-mcp\\dist\\interfaces\\cli\\bin.js", "mcp"]
    }
  }
}

El servidor trae sus propias instrucciones de uso para el asistente (por dónde empezar, cómo reintentar, que nunca pida la clave), así que se comporta igual con cualquier cliente.

2. Conectar tu cuenta del SII

En Windows, haz doble clic en Abrir mi-sii-mcp.cmd (en la carpeta del proyecto). Se abre una página local donde:

  1. Escribes tu RUT (los puntos y el guion se ponen solos) y tu clave tributaria.
  2. Dejas marcado Mantener conectada para que la sesión se renueve sola.
  3. Pulsas Conectar.

Página local de mi-sii-mcp para conectar la cuenta del SII, con cuentas de ejemplo

Puedes conectar varias cuentas (tu RUT personal y tus empresas). La misma página ofrece entrar con ClaveÚnica desde el navegador; esa opción es experimental (aún no se ha probado con una cuenta real) y su sesión no se renueva sola.

En otras plataformas, abre la página con npm run local, o inicia sesión desde la terminal con node dist/interfaces/cli/bin.js login <rut> --guardar-clave.

3. Preguntar

Reinicia tu asistente (en Claude Code basta con /mcp) para que cargue el servidor y pregunta, por ejemplo: «lista mis perfiles» o «trae mi renta de los últimos 3 años».

Ejemplos de consultas tributarias

Pregunta al asistenteQué hace mi-sii-mcp
«¿Cuánto me han retenido este año en boletas de honorarios?»Trae tus boletas emitidas y suma la retención por mes y por pagador (renta_sincronizar, renta_resumen)
«¿Cuadran mis boletas con lo que declaré en la renta?»Compara tus boletas con los códigos 547 y 492 del F22, considerando el reajuste por IPC
«¿Qué informaron mis pagadores al SII sobre mí?»Lee las declaraciones juradas de terceros y las cruza con tus boletas
«¿Tengo algún F29 sin presentar o por vencer?»Revisa tus F29 y calcula el vencimiento según tu caso (plazos_proximos, iva_hallazgos)
«¿Cuadra el IVA de compras y ventas con el F29 de septiembre?»Concilia el RCV con el F29 del mes (iva_resumen)
«¿A quién le emití más boletas en 2026?»Consulta el detalle boleta por boleta guardado (consulta_sql)
«Estímame la devolución de la próxima renta»Junta tus datos y te indica las fuentes oficiales de los valores públicos (fuentes_oficiales)

Herramientas del MCP

HerramientaPara qué sirve¿Consulta al SII?
perfiles_listarCuentas configuradas, estado de su sesión y si se renueva solaNo
sii_panoramaQué hay guardado por mes y por añoNo
sincronizarTrae RCV y F29 de un rango de meses (opcional: propuesta de F29 y boletas recibidas)Sí (lectura)
renta_sincronizarTrae el F22, las boletas emitidas y lo informado por terceros, por año tributarioSí (lectura)
perfil_sincronizarTrae el perfil tributario y las empresas autorizadasSí (lectura)
iva_resumen, iva_hallazgosConciliación del IVA y hallazgos por mesNo
f29_historial, plazos_proximosHistorial de F29 y vencimientosNo
rcv_documentosDocumentos del RCV de un mesNo
renta_resumenRenta guardada con sus cruces (boletas, pagadores, terceros)No
f29_releerVuelve a leer los PDF de F29 guardados, sin ir al SIINo
fuentes_oficialesDónde consultar los datos públicos (UTM, tablas, tasas) y cómo estimar una rentaNo
datos_esquema, consulta_sqlMapa de las tablas y consultas SELECT de solo lectura para preguntas libresNo

Seguridad y privacidad

  • Solo lee. Nunca presenta, modifica ni emite nada en el SII.
  • Tus datos quedan en tu equipo, en una base SQLite en ~/.mi-sii-mcp; el servidor se comunica directamente con el SII, sin servidores intermedios.
  • El asistente nunca recibe tu clave. El inicio de sesión lo haces tú en una página local o en la terminal; el MCP no tiene ninguna herramienta que reciba claves.
  • La sesión se guarda como cookies en tu equipo para no pedirte la clave en cada consulta. Si eliges «Mantener conectada», la clave queda en el almacén de credenciales del sistema (Administrador de credenciales de Windows, Llavero de macOS o Secret Service en Linux), no en archivos.
  • Las respuestas del SII que se guardan como respaldo se sanean: sin correos, direcciones, códigos de barra ni el token de la sesión. De terceros se guarda solo lo necesario (p. ej. la razón social de un pagador).
  • Lo que consultas pasa a la conversación con tu asistente (y a su proveedor de IA): pregunta solo por los contribuyentes que estés dispuesto a comentar ahí.

Preguntas frecuentes

¿Qué es mi-sii-mcp?

Es un servidor MCP de código abierto que permite que un asistente de IA consulte y concilie tu información tributaria del SII de Chile: IVA, F29, renta F22, boletas de honorarios y declaraciones de terceros.

¿Qué es un servidor MCP y por qué usarlo con el SII?

MCP (Model Context Protocol) es un estándar abierto para que los asistentes de IA usen herramientas externas. Un servidor MCP para el SII le da a tu asistente herramientas para leer tus datos tributarios y aplicar reglas de conciliación, en vez de que copies y pegues información del portal.

¿Cómo conecto Claude, Codex, Cursor o Gemini CLI al SII?

Instala mi-sii-mcp, regístralo en tu cliente con la configuración de la instalación y conecta tu cuenta en la página local. Claude Code está probado; para los demás clientes se usa su formato MCP estándar.

¿El asistente puede ver mi clave tributaria?

No. La clave se escribe solo en la página local (o en la terminal) y ninguna herramienta del MCP la recibe. Si eliges mantener la sesión, la clave queda en el almacén de credenciales de tu sistema.

¿Dónde quedan mis datos?

En tu equipo, en ~/.mi-sii-mcp. Lo que preguntas y las respuestas sí pasan por tu asistente de IA, como cualquier conversación con él.

¿Puede presentar mi F29 o emitir boletas?

No. mi-sii-mcp solo lee el portal del SII; no presenta declaraciones, no emite documentos ni modifica nada.

¿Es una herramienta oficial del SII?

No. Es un proyecto independiente de código abierto y no reemplaza la asesoría de un contador.

¿Cuánto cuesta?

Es gratuito y de código abierto (licencia MIT). Solo necesitas un cliente MCP; el costo del asistente de IA depende de su proveedor.

¿Funciona en macOS o Linux?

El código es multiplataforma, pero la plataforma probada es Windows. En macOS o Linux la página para conectar la cuenta se abre con npm run local.

Uso desde la terminal (opcional)

Todo lo anterior también está disponible como comandos:

node dist/interfaces/cli/bin.js --help
node dist/interfaces/cli/bin.js perfil listar
node dist/interfaces/cli/bin.js sync <rut> --desde 2026-01 --hasta 2026-09
node dist/interfaces/cli/bin.js renta sync <rut> --desde 2025 --hasta 2027
node dist/interfaces/cli/bin.js renta ver <rut>

Configuración

Variables de entorno opcionales:

VariablePara qué
MI_SII_MCP_HOMECarpeta de datos (por defecto ~/.mi-sii-mcp)
MI_SII_MCP_PLAZO_HTTP_MSPlazo de cada consulta al SII (por defecto 60 s)
MI_SII_MCP_INTERVALO_MSPausa mínima entre consultas al SII (por defecto 1 s)
MI_SII_MCP_TOLERANCIATolerancia en pesos para los cruces de IVA
MI_SII_MCP_NAVEGADORRuta de Edge o Chrome para entrar con ClaveÚnica
MI_SII_MCP_PLAZO_NAVEGADOR_MSTiempo para completar el inicio de sesión en el navegador

Documentación

Desarrollo

npm test            # pruebas (solo datos ficticios; nunca consultan el SII real)
npm run typecheck   # tipos
npm run build       # compila a dist/
npm run probar:mcp  # prueba el servidor MCP compilado

El código está organizado por capas (domain, app, connectors, store, interfaces, main); test/arquitectura.test.ts verifica que se respeten.

Las contribuciones son bienvenidas. Por favor, nunca incluyas datos tributarios reales (RUT, nombres, montos) en issues, pruebas ni fixtures: usa RUT ficticios como 11.111.111-1.

Limitaciones

  • La propuesta del F22 aún no se lee (el SII la publica en abril).
  • La declaración de sueldos del empleador (DJ 1887) se lee de forma genérica: su formato no se ha verificado con datos reales.
  • El inicio de sesión con ClaveÚnica desde el navegador es experimental.
  • Si el SII cambia su portal, algunas lecturas pueden fallar hasta actualizar el lector; los errores lo indican y nunca se borran datos guardados por una respuesta vacía.

Licencia

MIT © 2026 Welinton Barrera · Código fuente: github.com/Taksuma-0/mi-sii-mcp