Zovo Per Diem MCP Server

Cálculos de viáticos y asignaciones de viaje por ciudad y rol para agentes financieros. Local-first, plan gratuito, Pro por $19 de pago único.

Documentación

Todos los servidores · Comprar Pro $19 · Los 46 por $39 · Fuente

Dos formas de ejecutarlo, ambas gratuitas para empezar. Abre mcp.zovo.one/mcp/connect, copia la URL de viáticos y pégala en cualquier cliente que acepte una URL. Ya incluye un token gratuito, así que no hay nada que instalar, ni cuenta, ni cabecera que configurar. La URL es https://mcp.zovo.one/mcp/per-diem/t/<token>. El token no es opcional: el https://mcp.zovo.one/mcp/per-diem desnudo se conecta y lista sus herramientas, pero luego responde a cada llamada con HTTP 401, así que usa el enlace de /mcp/connect o envía Authorization: Bearer <token>. O descarga per-diem.mcpb y haz doble clic en Claude Desktop.

mcp-per-diem

Calcula la dieta diaria de viaje de negocios según las tablas de tarifas que publican las autoridades fiscales, y guarda los viajes que has presupuestado. Le indicas a dónde fuiste, cuándo saliste y cuándo volviste, y qué comidas pagó otra persona; te devuelve el importe por día y el total, en la moneda del propio régimen, con la regla de día parcial y cada deducción de comida mostrada junto al número que la produjo. Incluye tres regímenes: el reglamento de delegación polaco (nacional y por país), las tarifas de referencia de HMRC para viajes dentro del Reino Unido, y el estándar CONUS de M&IE y alojamiento de la GSA de EE. UU. Las tablas son archivos incluidos, no una fuente en vivo, así que el mismo viaje presupuestado dos veces da la misma respuesta, y cada tarifa lleva el reglamento, la URL de origen y la fecha de entrada en vigor. Nada sale de tu máquina.

Creado por theluckystrike.

En el Registro oficial de MCP (io.github.theluckystrike/per-diem).

per-diem demo

Instalación

Un clic (.mcpb): descarga per-diem.mcpb de la última versión y haz doble clic en Claude Desktop: https://github.com/theluckystrike/mcp-servers/releases/latest

Alojado, sin instalación: apunta un cliente basado en URL a https://mcp.zovo.one/mcp/per-diem. GET https://mcp.zovo.one/mcp/connect genera un token e imprime una URL lista.

La publicación en npm para @theluckystrike/mcp-per-diem está pendiente, así que la línea npx de abajo devuelve 404 hoy.

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "per-diem": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-per-diem"]
    }
  }
}

Claude Code:

claude mcp add per-diem -- npx -y @theluckystrike/mcp-per-diem

Cursor (~/.cursor/mcp.json o .cursor/mcp.json): la misma entrada que Claude Desktop.

Herramientas

herramientaqué hace
perdiem_ratesLista las tarifas incluidas de un régimen con la autoridad, el instrumento, la URL de origen y la fecha de vigencia. Filtra por país o ciudad.
perdiem_calcPresupuesta un viaje: la dieta por día y el total, con la fracción de día parcial y las deducciones de comida que aplica la regla del régimen.
trip_recordCalcula un viaje y lo guarda bajo un nombre, con el viajero del perfil de negocio compartido.
trip_listLista los viajes guardados con un total por moneda.
trip_deleteElimina un viaje guardado que no se haya exportado y no tenga gastos asociados, y libera el hueco de la capa gratuita que ocupaba.
trip_exportLos argumentos exactos de expense_add para un viaje guardado, una carga por moneda, para el servidor de seguimiento de gastos.
perdiem_reportTotales por régimen y por mes natural, en la moneda de cada régimen.
license_statusGratis o Pro, y dónde actualizar.
license_activateActiva una clave Pro. Verificada sin conexión.

Gratis vs Pro

GratisPro
perdiem_rates, perdiem_calcSí, ilimitadoSí
Viajes guardados por mes natural5, por fecha de inicioIlimitado
trip_listSí, ilimitadoSí
trip_deleteSí, ilimitadoSí
trip_exportNoSí
perdiem_reportNoSí

Consigue Pro: $19 de pago único, o $39 por el paquete. O el paquete de 46 servidores por $39.

Qué hay en las tablas, y qué se ha omitido deliberadamente

Cada tabla bajo src/tables/ lleva un header con la autoridad, el instrumento, la URL de origen, la fecha de entrada en vigor de las tarifas y la fecha en que se leyeron. perdiem_rates devuelve esa cabecera con las tarifas, de modo que la procedencia viaja con el número.

La regla sobre qué contienen: un valor que no pudiera afirmarse con confianza a partir del texto público del reglamento se omitió, no se adivinó. Una dieta acaba en una declaración de impuestos. Una incorrecta que parezca autorizada es peor que una ausente, porque una ausente se rechaza por su nombre y vas a buscarla.

tablaincluidaomitida
Polonia, nacionalLa dieta diaria de 45,00 PLN, el importe global de alojamiento del 150 por ciento, y las reglas de día parcial y comidasEl importe global del 20 por ciento para transporte local está listado pero no se paga: no es manutención
Polonia, extranjero34 países del anexo, con la dieta y su monedaLos otros aproximadamente 90 países, y todos los límites de alojamiento por país. Un país ausente significa "no verificado aquí", no "no existe tarifa"
Reino Unido, nacionalLas cuatro tarifas de referencia de HMRC (bandas de 5, 10 y 15 horas y el suplemento de noche)Nada
Reino Unido, en el extranjeroNada. El archivo se distribuye con una lista de tarifas vacía y una cabecera que lo indicaToda la tabla de tarifas de escala por ciudad en el extranjero: aproximadamente 250 ciudades por ocho cifras cada una, en la moneda de destino. Esta versión no pudo afirmarlas con confianza, así que ninguna se incluye. perdiem_calc {scheme:"uk"} rechaza un destino extranjero por su nombre y señala la página de HMRC
EE. UU., GSAEl estándar CONUS de M&IE y el tope de alojamiento para los años fiscales 2025 y 2026, con el desglose de comidas publicadoLas aproximadamente 300 localidades no estándar (Nueva York, San Francisco y el resto). Un destino que no sea una de esas toma igualmente la tarifa estándar, que es lo que da esta tabla

Las tarifas cambian. Comprueba el effective_date en cualquier respuesta antes de confiar en ella, y lee el source_url si el viaje es reciente.

Reglas que aplica la calculadora

  • El inicio y el fin son instantes, no relojes de pared. Pasa ISO 8601 con desfase (2026-03-28T22:00:00+01:00) o una fecha-hora local más un timezone IANA. Las horas transcurridas son una diferencia de época, así que un viaje que cruza un cambio de hora dura 23 o 25 horas, no 24.
  • Polonia cuenta períodos de 24 horas desde la salida. Menos de 24 horas en el país: nada por debajo de 8 horas, media dieta de 8 a 12, dieta completa por encima de 12. Más de 24 horas: una dieta completa por período, luego media para un resto de hasta 8 horas y una completa por encima. En el extranjero la escala es un tercio hasta 8 horas, media de 8 a 12, completa por encima. Las comidas gratuitas restan 25/50/25 por ciento de un día nacional y 15/30/30 de uno extranjero.
  • El Reino Unido paga por banda: 5,00 GBP desde 5 horas fuera, 10,00 GBP desde 10, 25,00 GBP desde 15 cuando el viaje continúa a las 8 de la tarde, nada por debajo de 5. Una comida provista elimina su parte de la banda, prorrateada. HMRC establece el principio ("la tarifa no se paga por una comida que se haya provisto"); la aritmética prorrateada es la lectura de este servidor, y así lo indica en la respuesta.
  • EE. UU. cuenta días naturales en la zona de destino, al 75 por ciento de M&IE en el primer y último día. Una comida provista se deduce por su propio importe publicado, y los 5,00 USD de gastos menores nunca se deducen. El alojamiento es un tope para el reembolso con recibo, no una dieta que se pague; la respuesta lo dice cada vez.
  • Las monedas nunca se suman. No hay tipo de cambio en este servidor, así que una dieta en PLN y una en EUR siguen siendo dos cifras.

Exportar al seguimiento de gastos

trip_export devuelve los argumentos exactos de expense_add para el servidor expense-tracker, una carga por moneda, y no escribe nada por sí mismo. Eso es deliberado: expense-tracker no publica un punto de entrada de biblioteca, y su contador de id, sus reglas de categoría, su división de IVA y sus valores predeterminados de moneda viven dentro de su propio manejador expense_add bajo su propio bloqueo. Añadir una fila directamente a su data.json produciría un gasto sin nada de eso aplicado: uno que parece nativo y no lo es. Devolver los argumentos es el mismo contrato que kanban usa para el timer_start de time-tracker.

No se establece ningún vat_rate en la carga. Una dieta legal es una asignación, no una compra, así que no hay IVA soportado que recuperar.

Una idea medida

La coincidencia por subcadena de un nombre de país es cómo una dieta se presupuesta silenciosamente a la tarifa de otro país.

La primera versión resolvía un destino por nombre exacto, luego por código ISO, luego por country.includes(destination). Un viaje a Omán volvió presupuestado, en EUR, sin advertencia: "romania".includes("oman") es true, así que tomó la dieta de Rumanía de 42,00 EUR. Omán no está entre los 34 países que esta versión incluye, así que la respuesta correcta era un rechazo que nombrara el vacío. En cambio, el llamante recibió un número con confianza, en la moneda equivocada, de un país a 3.000 km de distancia.

El arreglo es una línea, el respaldo es una coincidencia de prefijo de cuatro caracteres o más, y se verifica en test/adversarial.test.mjs. La forma general vale más que el arreglo: una coincidencia difusa es segura cuando un fallo es barato y peligrosa cuando un fallo es silencioso. Aquí un fallo produce una cifra fiscal, así que el respaldo tiene que fallar de forma cerrada. Que la tabla sea deliberadamente parcial es exactamente lo que hace peligroso el respaldo por subcadena: con una tabla completa la fila equivocada es un casi acierto, y con una parcial es una fila que nunca debería haber coincidido.

Privacidad

Todo permanece en tu máquina. Los viajes son JSON bajo ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/per-diem/. Las tablas de tarifas son archivos dentro del paquete. No hay ninguna llamada de red en este servidor, ni cuenta, ni clave de API. Las claves de licencia se verifican sin conexión.

Licencia

MIT. Soporte: support@zovo.one

Usa estos documentos como servidor MCP

Cualquier cliente MCP (Claude, Cursor, Windsurf, VS Code) puede leer la documentación de este repositorio directamente vía GitMCP, sin instalación:

Primeros cinco minutos

Un prompt que obtuvo 3 de 3, medido en la ronda 27, 2026-09-05. Pégalo tal como está escrito.

I am going to Berlin for a client meeting, leaving 14 September 2026 at 8am and back on 15 September at 6pm. Breakfast is included at the hotel both days. What diet am I owed?

Pega esto en Claude con el servidor conectado.

Lo que hizo, medido en la ronda 27, 2026-09-05: Una llamada, y resolvió cuatro cosas de la frase sin preguntar: Berlín significa Alemania, que significa la tabla extranjera polaca; la zona horaria es Europe/Warsaw del perfil compartido; el desayuno de ambos días son dos deducciones de comida separadas, no una; y una noche fuera es una noche de alojamiento.

En la capa gratuita para esta ruta: Las consultas de tarifas y los cálculos son ilimitados en todos los niveles: las tablas son reglamento público, y medir la lectura de un reglamento sería cobrar por el trabajo de la autoridad fiscal. 5 viajes guardados por mes natural, contados por fecha de inicio, y listas de viajes ilimitadas.

Configúralo en tu cliente

Ruta de configuración exacta, entrada y advertencias: Claude Desktop · Claude Code · Cursor · VS Code · Windsurf · Cline · Conectores de Claude.ai y Claude Desktop · todos los clientes

Comparado con las alternativas

MCP Per Diem vs gsa-perdiem-mcp: qué servidor MCP elegir · todas las comparaciones

Guías

Cómo registrar horas facturables dentro de Claude Code y Cursor · Crear un PDF de factura a partir de un mensaje de chat con un servidor MCP · Hacer preguntas sobre un archivo Excel o CSV desde Cursor o Claude · Vigilar el precio de un producto con Claude y recibir aviso cuando baje · Qué incluye el plan gratuito y qué añade Pro · Registrar gastos y kilometraje en Claude, separar el IVA, refacturar a una factura · Convertir divisas en Claude con tipos reales del BCE, sin clave API · Generar propuestas y contratos en Word a partir de un mensaje de chat · Encontrar una hora de reunión entre zonas horarias sin hacer la aritmética · Redactar un currículum y una carta de presentación desde el chat, sin inventar nada · Facturar un anticipo con un calendario sin un SaaS de facturación · Montar un contrato desde tu propia biblioteca de cláusulas, en el chat · Conectar servidores MCP a Claude.ai, Claude Desktop, Cursor y VS Code sin instalar nada · Combinar, dividir y sellar PDF desde el chat, y por qué algunos vuelven como números de glifo · Leer un calendario .ics en Claude: ocupado y libre, conflictos y reuniones facturables · Gestionar un tablero kanban en Claude, con seguimiento de tiempo en la misma tarea · Redimensionar, comprimir y poner marca de agua a imágenes desde un mensaje de chat · Categorizar y conciliar una exportación CSV bancaria desde el chat · Enviar un presupuesto desde el chat y convertir el sí en factura · Poner un código QR de pago SEPA en una factura desde el chat · Comprimir y descomprimir archivos de forma segura desde Claude o Cursor · Depósitos de clientes y anticipos desde el chat, aplicados a tus facturas reales · Activos fijos y depreciación desde el chat, con los tipos que publican las autoridades fiscales · Dietas y viáticos desde el chat, con las tablas de tarifas que publican las autoridades fiscales · Un libro mayor de partida doble a partir de cada servidor que ya ejecutas · Calendarios de préstamos y arrendamientos desde el chat, cerrando exactamente en cero · Órdenes de trabajo y tarjetas de tarea desde el chat, y por qué el margen va en el costo unitario · Listas de precios y tarifas desde el chat, y la brecha de escala de 100x entre la factura y el presupuesto · Órdenes de cambio y el valor del contrato en curso desde el chat, y por qué una línea modificada son dos partidas · Un fondo de caja chica desde el chat, y por qué el cheque no es la suma de los comprobantes · Estados de cuenta de clientes y recordatorios de pago desde el chat, con antigüedad a cualquier fecha que indiques · Notas de crédito y órdenes de compra desde el chat, contra tus facturas reales · Una instalación, todos los servidores: el paquete de suite ofimática · Cerrar un mes en el chat: factura, nota de crédito, anticipo, conciliación bancaria, estado de cuenta · El servidor MCP no aparece en Claude Desktop: las seis comprobaciones que lo encuentran · Dónde está claude_desktop_config.json y qué contiene · claude mcp add: todas las opciones y el ámbito que pierde tu servidor silenciosamente · Servidores MCP en Windows: spawn npx ENOENT, barras invertidas y el PATH · Instalar estos servidores MCP cuando npx aún no funciona · Configuración de MCP en Cursor: mcp.json, el campo type obligatorio y dónde aparecen los servidores · Qué servidores MCP funcionan sin red alguna · Facturar a un cliente de la UE con inversión del sujeto pasivo, desde un mensaje de chat · Presupuesto, depósito, factura, estado de cuenta: todo el ciclo en una sola conversación · ¿Está dando dinero este proyecto? Horas frente a costos, sin hoja de cálculo · Preparar un paquete del año fiscal para tu contable desde el chat · Llevar un registro de kilometraje en el chat, con la tarifa que realmente reclamas · Conciliar un CSV bancario contra lo que facturaste y gastaste · Refacturar gastos de clientes, con margen y el IVA gestionado con honestidad · Perseguir una factura impagada: antigüedad y luego la carta · Un contrato de compraventa desde el chat, con los identificadores verificados y las líneas de firma impresas · Preciar un trabajo desde una tarifa y qué hacer cuando cambia el alcance · Calcular tu tarifa por hora a partir de lo que realmente facturaste · Convertir CSV a xlsx y viceversa sin abrir Excel · Hacer preguntas a una hoja de cálculo en lenguaje natural · Combinar una carpeta de recibos en un solo PDF desde el chat · Dividir un escaneo grande en documentos separados · Enviar un mes de papeleo como un solo archivo, de forma segura · Servidores MCP en VS Code: el error de una palabra que rompe toda configuración · Servidores MCP en Windsurf y Cline: dos valores predeterminados que desperdician una tarde · Servidor MCP local o URL alojada: cuál elegir y qué sacrificas · Qué hacen realmente estos servidores MCP en el plan gratuito · Elegir un servidor MCP para facturación: las siete preguntas que vale la pena hacer · Cuándo necesitas un servidor MCP y cuándo basta un prompt · Ubicaciones de archivos de configuración MCP y claves JSON, para cada cliente · Por qué un servidor MCP no aparece, en orden de probabilidad · Cómo funciona realmente la búsqueda en el registro MCP, medido · Qué contiene realmente el registro MCP: 6.000 filas contadas · stdio o streamable HTTP: qué transporte MCP y qué se rompe · Versiones del protocolo MCP: qué cambió en cada una · Cada campo en una entrada de configuración de servidor MCP, por cliente · Ámbitos de configuración MCP: qué definición gana cuando un servidor se define dos veces · Dónde escribe cada cliente MCP sus registros · Publicar un servidor MCP: un paquete para descargar o una URL para pegar · Qué hay dentro de un paquete MCP .mcpb · Cobrar por un servidor MCP: cómo funciona realmente la licencia · Cuánto texto puede devolver un servidor MCP y cuánto puede describir · Qué comprobar antes de permitir que un servidor MCP se ejecute · Por qué un directorio dice que tu servidor MCP alojado no responde · El registro MCP vincula una URL remota a un nombre de servidor · Las mayúsculas en tu nombre de usuario de GitHub cambian tu posición en el registro MCP · Cuántos servidores MCP ya tienen tu palabra en el nombre · Referencia de campos de server.json para el registro MCP · Cuando falla una herramienta MCP, no devuelvas un error JSON-RPC · structuredContent y outputSchema en MCP, y qué DEBE cumplirse · Reglas para nombrar una herramienta MCP y la colisión que nadie planifica · MCP no tiene sesión, entonces ¿cómo comparten estado dos llamadas a herramientas? · x-mcp-header: reflejar parámetros de herramientas en cabeceras HTTP · Cómo puntúa un directorio a un servidor MCP y por qué tu peor herramienta lo decide · Qué obtienen los rastreadores de IA que Googlebot no, medido en 141 URLs · La API de inspección de URL de Search Console cambia su respuesta entre llamadas · Qué servidores MCP funcionan pegando una URL, sin instalar nada · Dónde encontrar servidores MCP de pago y cómo pagas realmente · Conseguir que un asistente complete un presupuesto o estimación para un cliente · ¿Existe un servidor MCP para un libro de caja chica o un libro de caja? · Conversión de divisas en un asistente y qué servidor MCP usar · Comprimir y descomprimir archivos desde un asistente y qué hacen las protecciones · Producir un calendario de entregas o un documento de orden de trabajo desde un chat · ¿Enviará un servidor MCP la factura por correo a mi cliente? · ¿Puede un asistente leer una foto de un recibo y registrar el gasto? · ¿Qué servidor MCP puede generar PDF de facturas a partir de un mensaje de chat? · ¿Puede un servidor MCP leer un PDF de estado de cuenta bancario y categorizar las transacciones? · Mejores servidores MCP para contabilidad y papeleo de pequeñas empresas en 2026 · Directorio de proveedores MCP: evita que las listas de proveedores se pudran en una hoja de cálculo · Acuerdo de servicio MCP: deja de copiar una plantilla de contrato podrida de internet · Registro de mantenimiento MCP: sabe qué servicio toca sin que nadie lo recuerde · Registro de kilometraje MCP: mantén el registro deducible en el momento del viaje, no en abril · Mejores prácticas de plazos de pago de facturas: Net 30, fecha de vencimiento y recargos por demora · Cómo categorizar transacciones bancarias · Plantilla de registro de caja chica · Haz preguntas sobre una hoja de cálculo en el chat, sin necesidad de fórmulas · Convierte un presupuesto o estimación en factura sin volver a escribirlo · Produce un calendario de entregas y una orden de trabajo desde un chat · Usa servidores MCP sin instalar nada, pegando una URL · Servidores MCP para contabilidad de pequeñas empresas: el resumen · Cómo encontrar y pagar servidores MCP · Registra horas facturables como entradas de hoja de tiempos en lugar de un cronómetro · Convierte un CSV en JSON para una importación de API o una herramienta de desarrollo · Redacta un NDA o acuerdo de confidencialidad mutua a partir de cláusulas · Crea una lista de empaque o nota de entrega desde el pedido en el chat · Realiza un conteo de inventario con códigos de barras y actualiza el catálogo en el chat · Combina archivos PDF en Claude o Cursor sin subirlos a ningún sitio · Divide un PDF en documentos separados desde la ventana de chat · Registra gastos y presupuestos dentro de Claude sin suscripción SaaS · Ejecuta sesiones de enfoque pomodoro desde Claude y factura las horas después · Vigila precios de productos y recibe alertas de bajada desde tu chat de IA · Registra tiempo facturable y exporta hojas de tiempos desde tu chat de IA · Mantén los números de factura secuenciales y nunca reutilices uno · Verificación de currículum ATS y carta de presentación desde el chat: pasa el parser antes que al reclutador · Facturación para autónomos desde el chat: horas facturables a líneas de factura a PDF sin suscripción SaaS · Alertas de bajada de precio y limpieza de PDF desde el chat: dos pequeñas tareas que sigues posponiendo · Convierte USD a cedis, rands y chelines en Claude con tipos reales · Crea un calendario de amortización de préstamo desde el chat y expórtalo para Excel · Todas las guías

Más servidores

Servidor MCP para Estados de Cuenta — Saldos de Clientes desde Claude · Servidor MCP para Libro de Caja — Recibos, Pagos y Saldos desde Claude · Amortización MCP · Servidor MCP de Caja Chica — Registra un Fondo de Caja Chica desde Claude · Orden de Trabajo MCP · Catálogo MCP · Orden de Cambio MCP · Servidor MCP para Calendarios de Entrega — Entregas Tardías desde Claude