mcpField
V
Veriko

Veriko

Local
docs.veriko.mxFinance0Updated 3d ago

About Veriko

Veriko MCP connects the Veriko API to MCP clients for SPEI transfer validation and related operations. Its configurable profiles and risk levels control which tools are exposed, while downloads are delivered as resources rather than base64 text or automatic workspace writes.

Key features

  1. 01Validate SPEI transfers
  2. 02Query and download CEP receipts
  3. 03Choose tool families by profile
  4. 04Limit operations by risk level
  5. 05Export downloads as resources
  6. 06Preserve idempotency keys

Use cases

  1. 01Check a payment against Banxico CEP
  2. 02Review the outcome of a prior validation
  3. 03Download a transfer receipt
  4. 04Expose only read-only tools to an agent

MCP support

The server exposes Veriko API operations as MCP tools, selected by profile and risk setting. It uses stdio transport and reads the API key from VERIKO_API_KEY rather than tool arguments.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"veriko-mx-labs-veriko": {
"command": "npx",
"args": [
"-y",
"@veriko-mx/mcp"
],
"env": {
"VERIKO_API_KEY": "<VERIKO_API_KEY>",
"VERIKO_MCP_PROFILE": "<VERIKO_MCP_PROFILE>",
"VERIKO_MCP_MAX_RISK": "<VERIKO_MCP_MAX_RISK>"
}
}
}
}
Run commandnpx -y @veriko-mx/mcp
Environment variables to set
VERIKO_API_KEYSecretClave de API del integrador de Veriko. Puede omitirse para las herramientas públicas de planes.
VERIKO_MCP_PROFILEPerfil de herramientas: core, all o familias separadas por coma.
VERIKO_MCP_MAX_RISKMáximo riesgo anunciado: read, write o destructive.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@veriko-mx/mcp0.1.12

Tools

5

Saved tool list · updated 3d ago

ParameterTypeRequiredDescription
asyncbooleanNo
fechastringYes
montoanyYes
emisorstringNo
receptorstringNo
clientRefstringNo
retryPolicyobjectNo
retryPolicy.enabledbooleanNo
retryPolicy.outcomesarrayNo
retryPolicy.max_retriesintegerNo
retryPolicy.interval_secondsintegerNo
claveRastreostringNo
idempotencyKeystringNo
cuentasCandidatasarrayNo
cuentaBeneficiariastringNo
referenciaNumericastringNo
receptorParticipanteanyNo

Details

From the project README

Veriko MCP

Este servidor MCP conecta Veriko a ChatGPT, Cursor u otro cliente MCP: le pides al asistente, por ejemplo, que compruebe un pago en el CEP de Banxico, que te diga en qué quedó una validación anterior o que descargue el comprobante.

Cubre 68 de las 70 operaciones públicas de máquina a máquina. Lo que el asistente puede hacer aquí es lo que puede hacer una clave de API, salvo el borrado definitivo de una validación: no se anuncia como herramienta porque no se puede deshacer.

Probarlo ahora

Requiere Node.js 20 o posterior.

git clone https://github.com/veriko-mx-labs/veriko-mcp.git
cd veriko-mcp
npm ci
npm run build

Queda un servidor ejecutable en dist/index.js. Para verlo responder sin clave de API, el perfil de planes públicos no necesita credenciales:

VERIKO_MCP_PROFILE=plans VERIKO_MCP_MAX_RISK=read node dist/index.js

El proceso se queda esperando mensajes MCP por stdin; lo normal es que lo arranque tu cliente, no tú. Esta es la configuración del host, con la ruta absoluta a la copia que acabas de construir:

{
  "mcpServers": {
    "veriko": {
      "command": "node",
      "args": ["/ruta/a/veriko-mcp/dist/index.js"],
      "env": {
        "VERIKO_API_KEY": "veriko_...",
        "VERIKO_MCP_PROFILE": "core",
        "VERIKO_MCP_MAX_RISK": "write"
      }
    }
  }
}

La clave se obtiene en app.veriko.mx. Nunca se pasa como argumento de una herramienta: el servidor sólo la lee de VERIKO_API_KEY, de modo que un texto inyectado en una página que el modelo esté leyendo no puede pedírsela.

Lo que consume cuota

veriko_validate_direct y veriko_validate_ocr consumen cuota del plan y se descuentan al aceptar la petición. Lo dice su propia descripción, porque un bucle de un agente puede vaciar una cuota mensual en minutos. El resto del catálogo consulta, exporta o descarga sin consumir validaciones.

Perfiles

VERIKO_MCP_PROFILE acepta core, all, una familia o varias familias separadas por coma.

PerfilHerramientas anunciadas
corevalidar, listar, consultar y descargar CEP
validationsciclo completo de validaciones
webhooksendpoints y entregas
catalogbancos, calendario SPEI, BIN y estado de Banxico
beneficiarieslista e importación masiva
usageconsumo, límites y exportación
accountperfil y política de reintentos
dashboardresumen operativo
plansplanes públicos
insightsmétricas agregadas
financeresúmenes, vistas previas y descargas
billingsuscripción activa
alllas 68 herramientas disponibles

El perfil decide qué familias ve el modelo. El riesgo se controla de forma independiente con VERIKO_MCP_MAX_RISK:

  • read: sólo consultas y descargas;
  • write (predeterminado): incluye validaciones y cambios normales;
  • destructive: agrega eliminaciones, cancelaciones, rotación de secretos y la confirmación de importaciones.
Lo que cuesta anunciar cada perfil

Anunciar una herramienta gasta contexto antes de que el modelo llame a ninguna. Estas cifras salen del propio servidor: bytes de la respuesta tools/list, con npm run measure:catalog. Los tokens son una estimación a 3.6 bytes por token, no una tokenización real, y sirven para comparar perfiles entre sí.

PerfilHerramientasBytes de tools/listTokens estimados
core56,645~1,846
validations1415,761~4,378
webhooks1018,945~5,263
catalog52,845~790
beneficiaries1410,343~2,873
usage73,756~1,043
account31,953~543
dashboard1557~155
plans21,017~283
insights42,337~649
finance76,470~1,797
billing1503~140
all6864,477~17,910

Medido con Node 22 y riesgo destructive, para no ocultar herramientas. all cuesta 9.7 veces lo que core; por eso el perfil predeterminado es core y se amplía por familia cuando hace falta.

Arquitectura

  • Usa el SDK oficial de JavaScript como única capa de transporte hacia la API. El código lo importa mediante @veriko-mx/sdk-runtime, un alias estable que permite cambiar la fuente de distribución sin reescribir el servidor.
  • El SDK runtime viaja incluido en el tarball del MCP.
  • Anuncia herramientas según perfil y riesgo.
  • Las descargas se devuelven como recursos veriko://artifact/...; nunca como base64 dentro de texto ni como escrituras automáticas en el workspace.
  • Valida base64 canónico y los límites públicos antes de invocar el SDK: 12 MB para comprobantes OCR (imagen o PDF) y 20 MB para importaciones de beneficiarios. El transporte stdio admite completa una importación máxima.
  • Los errores usan error.code, estado, puntero, requestId y retryAfter cuando existen; el texto traducible de la API no se usa como contrato.

Idempotencia

Si se pasa idempotencyKey, se conserva. Si falta, el servidor calcula veriko_mcp_v1_<sha256> sobre el operationId y los argumentos canónicos. En entradas binarias usa el hash del contenido, no una ruta local. La misma acción produce la misma clave; cambiar un dato relevante produce otra.

Desarrollo

npm install
npm run check
npm run check:surface
npm run measure:catalog

check:surface compara el catálogo completo contra el spec público del SDK y fija su SHA-256. Las operaciones que el catálogo no anuncia, el borrado definitivo de una validación, se declaran aparte en NOT_EXPOSED_OPERATIONS. Una operación nueva, retirada o escondida, un esquema de autenticación distinto de la clave de API o cualquier cambio contractual falla esta comprobación. El workflow de sincronización deja el PR del contrato nuevo como borrador, con el CI corrido y un resumen del cambio en el cuerpo, para revisión antes de aceptarlo.

La API real no se usa en las pruebas. test/server.test.ts conecta cliente y servidor MCP en memoria con un SDK falso.

Transportes

La entrada publicada es stdio. El núcleo vive en createVerikoServer() y no depende del transporte, de modo que un futuro Streamable HTTP puede reutilizar catálogo, políticas, errores y recursos. Un endpoint remoto requerirá autenticación por usuario y no se presentará como equivalente al paquete local.

Seguridad

Consulta SECURITY.md. Nunca abras issues con claves de API, payloads reales, comprobantes, números de cuenta o respuestas sin sanitizar.

Licencia

MIT.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.