Delivery Schedule MCP
Entregables con fechas asociadas a una cotización u orden de trabajo: fechas de vencimiento, aprobación, qué está retrasado, hitos.
Documentación
mcp-delivery-schedule
Servidor MCP para cronogramas de entrega, hitos y fechas límite: genera un documento de cronograma de entrega con fechas. Entregables con fecha contra una cotización o una orden de trabajo, y qué está atrasado en cualquier fecha que indiques.
Funciona con Claude Desktop, Claude Code, Cursor y cualquier cliente del Model Context Protocol. Se ejecuta en tu propia máquina, o alojado sin instalación.
Página del producto: https://mcp.zovo.one/s/delivery-schedule — qué hace, las herramientas que expone y un endpoint de token en vivo.
Instalación
Alojado, nada que instalar. Obtén un token de https://mcp.zovo.one/mcp/connect (la página de conexión) o https://mcp.zovo.one/mcp/token (el mismo token como JSON); se emite uno anónimo gratuito al instante y una clave Pro funciona de la misma manera. Luego apunta un cliente MCP a https://mcp.zovo.one/mcp/delivery-schedule a través de streamable-http y envía el token como Authorization: Bearer <token>.
Si tu cliente no puede configurar encabezados, coloca el token en la ruta en su lugar: https://mcp.zovo.one/mcp/delivery-schedule/t/<token>. Ambas formas funcionan. La URL sin token responde 401 en tools/call, por lo que el token no es opcional.
Claude Desktop, un clic. Descarga delivery-schedule.mcpb desde la última versión y haz doble clic en él.
Desde el código fuente. El espejo es autocontenido: cada dependencia de @theluckystrike/* está incluida, por lo que un clon nuevo se compila sin configuración adicional.
git clone https://github.com/theluckystrike/mcp-delivery-schedule.git
cd mcp-delivery-schedule
npm install && npm run build
Luego apunta tu cliente al punto de entrada compilado:
{
"mcpServers": {
"delivery-schedule": {
"command": "node",
"args": ["/absolute/path/to/mcp-delivery-schedule/dist/index.js"]
}
}
}
@theluckystrike/mcp-delivery-scheduleaún no está publicado en npm, por lo que un comandonpx -y @theluckystrike/mcp-delivery-schedulefallará. Las tres rutas anteriores son las que funcionan y cada una es ejercitada por CI.

Espejo de solo lectura de mcp-servers/servers/delivery-schedule. Consulta MIRROR.md.
En el Registro oficial de MCP (io.github.theluckystrike/delivery-schedule).
Entregables con fecha contra una cotización, una orden de trabajo o una orden de cambio. Cada uno lleva lo que se está entregando, el día en que vence, su valor en unidades menores y un estado que avanza de planificado a en progreso a entregado a aceptado, cada paso con el día en que realmente ocurrió. late_report luego responde la única pregunta que cualquiera hace sobre un cronograma: qué se ha retrasado, en una fecha que indiques. Una vez que el cliente ha firmado algo, los hitos aceptados regresan como elementos listos para invoice_create en unidades MAYORES y elementos listos para quote_create en unidades MENORES, en una sola llamada, con la escala impresa junto a cada uno.
Atrasado no es un estado aquí, es una lectura. Una marca almacenada de "atrasado" es un hecho sobre la tarde en que alguien ejecutó el informe por última vez, y sigue reportándose mucho después de que el trabajo se entrega. Así que nada derivado se almacena: un entregable mantiene su fecha de vencimiento, su valor y su historial con fechas, y el estado actual, la fecha de entrega, la nota de aceptación, el retraso y cada total se calculan en la llamada, contra la fecha que pasaste.
Instalación
Un clic (.mcpb): descarga delivery-schedule.mcpb desde la última versión y haz doble clic en él 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/delivery-schedule. GET https://mcp.zovo.one/mcp/connect genera un token e imprime una URL lista.
La publicación en npm para @theluckystrike/mcp-delivery-schedule está pendiente, por lo que la línea npx a continuación devuelve 404 hoy.
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o
%APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"delivery-schedule": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-delivery-schedule"]
}
}
}
Claude Code
claude mcp add delivery-schedule -- npx -y @theluckystrike/mcp-delivery-schedule
Cursor
~/.cursor/mcp.json (global) o .cursor/mcp.json (proyecto), misma entrada que Claude Desktop.
Herramientas
| Herramienta | Qué hace |
|---|---|
delivery_schedule_create | Abre un cronograma contra una cotización, orden de trabajo o orden de cambio: la referencia, su propia fecha, el cliente, un título |
deliverable_add | Agrega un entregable con fecha: qué es, el día en que vence y su valor en unidades menores cuando tiene precio separado |
deliverable_status | Registra un movimiento con fecha: en progreso, entregado y aceptado con la nota de aceptación del cliente |
deliverable_delete | Elimina un entregable agregado por error, mientras aún está planificado y no tiene nada registrado |
delivery_schedule_get | Un cronograma completo en una fecha, con el estado, las fechas, el valor y el retraso de cada entregable |
delivery_schedule_list | Cronogramas por cliente, referencia y si el trabajo está terminado, con los conteos en una fecha |
delivery_schedule_delete | Elimina un cronograma vacío abierto por error. Gratis en todos los niveles |
late_report | Qué está atrasado en una fecha que indiques, peor primero, con el valor en riesgo por moneda |
delivery_schedule_document | El cronograma como documento de texto plano para el cliente, con un bloque de firma |
milestone_payload | Los hitos aceptados como elementos invoice_create (unidades MAYORES) y elementos quote_create (unidades MENORES) |
license_status / license_activate | Gratis o Pro, y dónde actualizar |
Gratis vs Pro
| Gratis | Pro | |
|---|---|---|
| Cronogramas abiertos (un trabajo con algo aún no aceptado) | 3 | ilimitado |
| Entregables por cronograma | 200 | 200 |
| Abrir, agregar, mover, obtener, listar, eliminar | sí | sí |
| Qué está atrasado, en cualquier fecha | sí | sí |
| Documento de cronograma de entrega | no | sí |
| Carga útil de factura de hitos, ambas escalas | no | sí |
El límite cuenta los cronogramas ABIERTOS, los trabajos que aún deben algo, no los trabajos que has ejecutado alguna vez. Aceptar el último entregable completa un cronograma y libera su espacio sin eliminar el registro, y delivery_schedule_delete limpia uno vacío; ambos son gratuitos en todos los niveles, porque una salida que solo una clave Pro puede alcanzar no es una salida.
Obtén Pro: https://mcp.zovo.one/buy/delivery-schedule (pago único de $19, de por vida), o todos los servidores por $39: https://mcp.zovo.one/buy/bundle
La máquina de estados
planned a in_progress o directamente a delivered; delivered a accepted. Aceptado es final, y nada retrocede: el trabajo que el cliente devolvió es un nuevo entregable con su propia fecha de vencimiento, por lo que el registro conserva tanto la falla como la corrección. Aceptar algo que nunca fue entregado se rechaza por nombre, porque la aceptación es la respuesta del cliente a una entrega y un entregable aceptado en un día en que no se entregó nada no tiene fecha de entrega para facturar. Cada movimiento lleva el día en que realmente ocurrió, y un movimiento con fecha anterior a la fecha del documento de referencia, o anterior al movimiento previo, se rechaza para que el historial se lea como una línea de tiempo.
Qué significa "atrasado"
Un entregable está atrasado una vez que as_of está DESPUÉS de su fecha de vencimiento y no ha sido entregado para entonces. Uno que vence en as_of mismo es due_today, no atrasado, que es la misma regla que el servidor de estados de cuenta usa para envejecer una factura. Un entregable que fue entregado es delivered_late o delivered_on_time al comparar su fecha de entrega con su fecha de vencimiento, lo cual es un hecho que ya no cambia. Cada comparación es entre dos cadenas YYYY-MM-DD y cada conteo de días es la diferencia de dos medianoches UTC, por lo que la respuesta es la misma en una laptop en Varsovia y en un servidor en Auckland.
Dos lecturas del mismo almacén, con cuatro días de diferencia, difieren a propósito:
late_report as_of 2026-04-22 D02 is LATE by 2 days, nothing has been delivered late
late_report as_of 2026-05-05 D02 was DELIVERED LATE by 4 days, D03 is now LATE by 4 days
Entregables sin precio
Un entregable sin value_minor no vale cero. Es uno cuyo precio nunca se declaró aquí, generalmente porque el trabajo es una suma global, y agregarlo como cero subestimaría cada total sin nada en la página que lo indique. Se cuenta por separado dondequiera que se imprima un total, y milestone_payload lo lista bajo excluded.accepted_but_unpriced en lugar de facturarlo. Nada aquí inventa un precio.
De dónde viene el dinero
Este servidor no mantiene aritmética propia. computeTotals, currencyDecimals, formatMoney y daysBetween se importan de @theluckystrike/mcp-invoice/lib, la cuarentena de almacenes corruptos de @theluckystrike/mcp-timezone/lib, el "hoy" consciente de la zona horaria de @theluckystrike/mcp-quotes/lib. La tasa de IVA, la moneda y el nombre del negocio provienen del perfil de negocio compartido que business_set en el servidor de facturas escribe. Nada se escribe fuera del propio directorio de este servidor, y ningún almacén hermano se abre.
La percepción medida
El mismo entregable está atrasado, a tiempo y aún no vencido dependiendo solo de la fecha sobre la que preguntas, por lo que almacenar la respuesta es almacenar el día en que alguien preguntó. D02 en el ejemplo trabajado vence el 2026-04-20 y fue entregado el 2026-04-24. Leído el 2026-04-22 está atrasado por dos días sin fecha de entrega en absoluto, aunque el almacén ya contiene una con fecha 04-24. Leído el 2026-05-01 está entregado con cuatro días de retraso. Leído el 2026-04-19 aún no vence. Un almacén, tres respuestas, todas correctas. La suite de unidades afirma las tres desde un sandbox sin cambios, y una suite separada reproduce cada llamada bajo cuatro zonas horarias con catorce horas de diferencia y afirma que las respuestas son byte-idénticas, por lo que el día en que alguien lee el informe en una laptop que viajó no puede mover la fecha límite de un cliente.
Privacidad
Todos los datos permanecen en tu máquina, en ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/delivery-schedule/. Nada se envía a ningún lugar. No hay cuenta ni clave API. Las claves de licencia se verifican sin conexión. Este servidor lee un archivo que no posee, el perfil de negocio compartido, y no escribe en ningún almacén excepto el suyo propio.
Construido por theluckystrike. https://github.com/theluckystrike
Usa estos documentos como un servidor MCP
Cualquier cliente MCP (Claude, Cursor, Windsurf, VS Code) puede leer la documentación de este repositorio directamente a través de GitMCP — sin instalación:
- URL de Docs MCP: https://gitmcp.io/theluckystrike/mcp-delivery-schedule