Skip to main content

Prerequisitos

Antes de comenzar, asegurate de tener:
  • API Key de CUCU — Registrate en app.cucu.bo para obtener una key sandbox gratuita. Las keys sandbox comienzan con sk_test_ y conectan al SIAT piloto (sin efecto fiscal real).
  • Un cliente MCP compatible — Claude Desktop, Cursor, Windsurf, VS Code con GitHub Copilot, o Claude Code CLI.
  • Conexion a internet — El MCP Server corre en la nube, no requiere instalacion local ni Docker.

Configurar tu cliente

Selecciona tu editor o cliente AI y sigue las instrucciones. La configuracion toma menos de 2 minutos.
Claude Desktop tiene soporte nativo para MCP con Streamable HTTP.
1

Abre la configuracion MCP

Ve a Settings (icono de engranaje) → DeveloperEdit Config.Esto abrira el archivo claude_desktop_config.json en tu editor de texto.
2

Agrega el servidor CUCU

Pega la siguiente configuracion en el archivo:
claude_desktop_config.json
{
  "mcpServers": {
    "cucu-facturacion": {
      "url": "https://sandbox.cucu.bo/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}
Reemplaza la API Key del ejemplo con tu propia key. La key mostrada es una demo publica con funcionalidad limitada.
3

Reinicia Claude Desktop

Cierra y vuelve a abrir Claude Desktop. Veras el icono de herramientas (martillo) en la barra de chat indicando que el MCP Server esta conectado.
En macOS el archivo de configuracion se encuentra en: ~/Library/Application Support/Claude/claude_desktop_config.jsonEn Windows: %APPDATA%\Claude\claude_desktop_config.json

Verificar la conexion

Una vez configurado tu cliente, verifica que todo funciona correctamente:
1

Prueba una herramienta simple

Pidele a tu AI:
Usa la herramienta verificarFormatoNit para verificar el NIT 1023456789
Deberas recibir una respuesta confirmando que el NIT es valido.
2

Prueba una consulta

Ahora prueba una herramienta que consulta datos:
Lista las ultimas 3 facturas emitidas
El AI usara listarFacturas y te mostrara los resultados.
3

Prueba la normativa (RAG)

Verifica que el asistente AI con RAG funciona:
Que requisitos necesita una factura electronica en Bolivia?
El AI usara consultarNormativa para responder con informacion de la base de conocimiento.

Endpoints MCP

El MCP Server expone dos protocolos de transporte. Usa el que tu cliente soporte:
ProtocoloSandboxProduccionRecomendado
Streamable HTTPhttps://sandbox.cucu.bo/mcphttps://api.cucu.bo/mcpSi — todos los clientes modernos
Legacy SSEhttps://sandbox.cucu.bo/mcp/ssehttps://api.cucu.bo/mcp/sseSolo si tu cliente no soporta Streamable HTTP
Streamable HTTP es el protocolo recomendado. Es mas eficiente, tiene mejor manejo de errores y es soportado por Claude Desktop, Cursor, Windsurf, VS Code y Claude Code. El endpoint SSE existe por compatibilidad con clientes legacy como versiones antiguas de Continue.dev.

Autenticacion

El MCP Server usa exactamente la misma autenticacion que la API REST: el header X-API-Key. Cada request MCP se autentica y ejecuta dentro del contexto del tenant asociado a tu API Key. Esto significa:
  • Aislamiento total — Tu AI solo puede acceder a los datos de tu tenant (empresas, sucursales, facturas)
  • Mismos permisos — Los permisos de la API Key aplican igual en MCP y REST
  • Misma key — No necesitas una key separada para MCP; la misma key funciona en ambos canales
  • Auditoria — Todas las operaciones MCP se registran en el log de actividad de tu tenant
Header requerido en cada request:
X-API-Key: sk_test_Tu_API_Key_Aqui
Nunca compartas tu API Key. Si configuras MCP en un equipo compartido, cada desarrollador debe usar su propia key. Las keys comprometidas pueden revocarse desde el dashboard en app.cucu.bo.

Troubleshooting

Causa: La API Key es invalida, esta expirada o no se esta enviando correctamente.Solucion:
  1. Verifica que la key comience con sk_test_ (sandbox) o sk_live_ (produccion)
  2. Asegurate de que el header se llame exactamente X-API-Key (con mayusculas)
  3. Verifica que no haya espacios en blanco al inicio o final de la key
  4. Genera una nueva key desde app.cucu.bo si es necesario
Causa: El cliente no puede conectarse al servidor MCP.Solucion:
  1. Verifica tu conexion a internet
  2. Confirma que la URL sea correcta: https://sandbox.cucu.bo/mcp (no HTTP, no trailing slash extra)
  3. Si usas VPN o proxy corporativo, verifica que no bloquee conexiones a *.cucu.bo
  4. Prueba acceder a https://sandbox.cucu.bo/health desde tu navegador para confirmar que el servidor esta disponible
Causa: Algunos clientes MCP basados en web pueden tener restricciones CORS.Solucion: El MCP Server de CUCU permite CORS desde todos los origenes para clientes MCP. Si ves este error:
  1. Asegurate de usar la URL /mcp y no /api/v1/... (son endpoints diferentes)
  2. Actualiza tu cliente MCP a la ultima version
  3. Si usas un cliente custom, verifica que envie los headers correctos
Causa: Algunas operaciones como crearFactura dependen del tiempo de respuesta del SIAT.Solucion:
  1. El SIAT piloto puede tardar hasta 10 segundos en horas pico — esto es normal
  2. Si el timeout persiste, usa verificarComunicacion para diagnosticar el estado del SIAT
  3. Aumenta el timeout de tu cliente MCP si es configurable (recomendado: 30 segundos)
  4. Si el SIAT esta caido, CUCU activara contingencia automaticamente en la siguiente llamada
Causa: El cliente MCP no detecto el servidor o no completo el handshake.Solucion:
  1. Reinicia tu editor completamente (no solo recargar la ventana)
  2. Verifica que el archivo de configuracion este en la ubicacion correcta para tu cliente
  3. Revisa que el JSON sea valido (sin comas finales, sin comillas faltantes)
  4. En Claude Desktop, verifica el log en: ~/Library/Logs/Claude/mcp*.log (macOS)
  5. En Cursor, revisa el panel de MCP para ver mensajes de error
Causa: Cada cliente MCP usa un formato de configuracion ligeramente diferente.Solucion: Verifica que uses la propiedad correcta para tu cliente:
  • Claude Desktop: "url" dentro de "mcpServers"
  • Cursor: "url" dentro de "mcpServers"
  • Windsurf: "serverUrl" (no "url") dentro de "mcpServers"
  • VS Code: "url" dentro de "servers" con "type": "http"
  • Claude Code: "url" dentro de "mcpServers" con "type": "url"

Pasar a produccion

Cuando estes listo para emitir facturas reales, solo necesitas cambiar dos cosas en tu configuracion MCP:
1

Cambia la URL

Reemplaza sandbox.cucu.bo por api.cucu.bo:
- "url": "https://sandbox.cucu.bo/mcp"
+ "url": "https://api.cucu.bo/mcp"
2

Cambia la API Key

Reemplaza tu key sandbox (sk_test_...) por tu key de produccion (sk_live_...):
- "X-API-Key": "sk_test_..."
+ "X-API-Key": "sk_live_..."
Las facturas en produccion son fiscalmente validas. Se registran ante el SIN y tienen efecto tributario real. Asegurate de haber completado:
  • Registro de tu NIT y certificado digital (.pfx) en el dashboard
  • Sincronizacion de catalogos SIAT de produccion
  • Configuracion de sucursal(es) y punto(s) de venta reales
  • Pruebas exhaustivas en sandbox antes de migrar
Puedes tener ambas configuraciones en paralelo — un servidor MCP sandbox para desarrollo y otro de produccion para operaciones reales. Solo nombra los servidores diferente: cucu-sandbox y cucu-produccion.