Skip to main content
Glama
sixfeetup

intervals-mcp

by sixfeetup

intervals-mcp

Un servidor MCP independiente, CLI y plugin de Claude Code para el seguimiento de tiempo de Intervals con prioridad local. Iniciar un temporizador o registrar una entrada de tiempo escribe primero en una base de datos SQLite local; las entradas se sincronizan con Intervals en segundo plano o bajo demanda. Los informes y consultas son siempre solo locales y nunca llaman a la API de Intervals.

Instalación (plugin de Claude Code)

/plugin marketplace add sixfeetup/intervals-mcp
/plugin install intervals@intervals-mcp

No hay paso de compilación: el paquete dist/ está incluido en el repositorio. El único requisito es Node >= 22.5.

Related MCP server: Productivity Tracker MCP Server

Instalación (cualquier host MCP)

Clona el repositorio y apunta tu host MCP al servidor empaquetado:

git clone https://github.com/sixfeetup/intervals-mcp.git
{
  "command": "node",
  "args": ["/path/to/intervals-mcp/dist/server.mjs"]
}

Configuración

Las credenciales y ajustes se resuelven en este orden:

  1. Variables de entorno

  2. config.json dentro de INTERVALS_HOME (o ~/.intervals/)

Variables de entorno

Variable

Descripción

INTERVALS_API_KEY

Clave de API de Intervals para autenticación básica HTTP

INTERVALS_BASE_URL

URL base de la API de Intervals (por defecto: https://api.myintervals.com/)

INTERVALS_PERSON_ID

Tu ID de persona de Intervals (requerido para la sincronización de entradas de tiempo)

INTERVALS_HOME

Sobrescribe la ruta de almacenamiento local predeterminada (~/.intervals/)

Claves de config.json

Si prefieres la configuración basada en archivos, crea config.json dentro de INTERVALS_HOME (o ~/.intervals/):

Clave

Tipo

Descripción

apiKey

string

Clave de API de Intervals para autenticación básica HTTP

baseUrl

string

URL base de la API de Intervals (por defecto: https://api.myintervals.com/)

personId

number

Tu ID de persona de Intervals (requerido para la sincronización de entradas de tiempo)

syncIntervalMs

number

Intervalo de sincronización en segundo plano en milisegundos

Ejecutar intervals setup (o el comando slash /intervals-setup) escribe este archivo con permisos 0600 y nunca coloca la clave de API en el contexto del modelo: la clave se introduce en un aviso interactivo oculto en tu propia terminal.

CLI

El paquete incluye una CLI sin dependencias (dist/cli.mjs, expuesta como intervals a través de package.json#bin cuando se instala como paquete):

Comando

Descripción

setup

Configura las credenciales y ejecuta la sincronización inicial de proyectos

status

Muestra la ruta de la base de datos, la fuente de credenciales, los temporizadores y la sincronización pendiente

sync-projects

Actualiza el catálogo local de proyectos

sync-now

Envía las entradas de tiempo pendientes a Intervals ahora

timers [recent] / timers edit <timer_id> [campo=valor ...] / timers delete <timer_id>

Muestra, edita o elimina temporizadores

time [rango] / time edit <id> [campo=valor ...]

Informa entradas de tiempo (today, yesterday, this-week, last-week, this-month, last-month, YYYY-MM-DD, YYYY-MM-DD..YYYY-MM-DD), o edita una (stop_time=HH:mm recalcula la duración)

project-defaults <project_id> <worktype_id> [module_id]

Establece los valores predeterminados del proyecto

Ejecuta node dist/cli.mjs help (o intervals help) para ver el texto de uso completo.

Herramientas del agente

Cuando se instala como plugin de Claude Code, las herramientas aparecen con el prefijo mcp__plugin_intervals_intervals__:

Herramienta

Descripción

mcp__plugin_intervals_intervals__find_project_context

Busca en el catálogo local de proyectos los IDs y clasificaciones (solo local)

mcp__plugin_intervals_intervals__start_timer

Inicia un temporizador local con una descripción simple y un start_at opcional; proyecto/tipo de trabajo/módulo son opcionales

mcp__plugin_intervals_intervals__stop_timer

Detiene un temporizador, resuelve la clasificación, crea una entrada de tiempo pendiente y sincroniza

mcp__plugin_intervals_intervals__edit_timer

Actualiza la descripción o las pistas de proyecto/tipo de trabajo/módulo en un temporizador local en ejecución

mcp__plugin_intervals_intervals__delete_timer

Elimina de forma segura un temporizador activo o detenido sin entrada de tiempo vinculada

mcp__plugin_intervals_intervals__add_time

Añade una entrada de tiempo completada directamente (duración en minutos)

mcp__plugin_intervals_intervals__edit_time

Edita una entrada de tiempo local existente por ID corto o ID de temporizador vinculado; usa stop_time para cambios de hora de detención que recalculan la duración

mcp__plugin_intervals_intervals__delete_time

Elimina una entrada de tiempo local o sincronizada por ID corto o ID de temporizador vinculado

mcp__plugin_intervals_intervals__query_time

Informa entradas de tiempo por rango de fechas y filtro de proyecto (solo local)

mcp__plugin_intervals_intervals__list_timers

Lista temporizadores locales activos o recientes

mcp__plugin_intervals_intervals__lookup_time_entry

Mapea un ID de temporizador local detenido al ID de entrada de tiempo local vinculado

mcp__plugin_intervals_intervals__list_time

Lista entradas de tiempo locales recientes con estado de sincronización

mcp__plugin_intervals_intervals__set_project_defaults

Configura el tipo de trabajo/módulo predeterminado para un proyecto

mcp__plugin_intervals_intervals__sync_now

Reintenta inmediatamente la sincronización de entradas de tiempo pendientes con Intervals

mcp__plugin_intervals_intervals__start_timer acepta valores opcionales de start_at para inicios retroactivos de temporizadores locales. Usa HH:mm o H:mm para hoy en hora local, YYYY-MM-DD HH:mm para una fecha/hora local, o una fecha ISO con desplazamiento/zona horaria explícita. Los valores futuros de start_at son rechazados.

Comandos slash

Comando

Descripción

/intervals-setup

Configura las credenciales de Intervals y ejecuta la sincronización inicial de proyectos

/intervals-status

Muestra la ruta de la base de datos de Intervals, la fuente de credenciales, temporizadores activos, sincronización pendiente y última sincronización de proyectos

/intervals-sync-projects

Actualiza el catálogo local de Intervals de clientes, proyectos, tipos de trabajo y módulos

/intervals-sync-now

Envía las entradas de tiempo locales pendientes a Intervals ahora

/intervals-timers

Muestra temporizadores de Intervals activos o recientes, o edita/elimina un temporizador por ID

/intervals-time

Informa entradas de tiempo locales por rango, o edita una entrada por ID

/intervals-project-defaults

Establece el tipo de trabajo predeterminado y el módulo opcional para un proyecto

Cómo funciona

  • Los temporizadores son solo locales. Iniciar un temporizador escribe una fila local ligera con solo una descripción. Las pistas de proyecto, tipo de trabajo y módulo son opcionales.

  • Los temporizadores en ejecución pueden reclasificarse localmente. Edita las pistas de proyecto, tipo de trabajo o módulo de un temporizador antes de detenerlo; la clasificación actualizada se aplica cuando se crea la entrada de tiempo.

  • Detener/aplicar crea una entrada de tiempo. Cuando detienes un temporizador, proporcionas (o resuelves) el proyecto y el tipo de trabajo. El servidor crea una entrada de tiempo pendiente e intenta sincronizarla con Intervals inmediatamente.

  • Las entradas de tiempo son locales primero. mcp__plugin_intervals_intervals__add_time, mcp__plugin_intervals_intervals__edit_time y mcp__plugin_intervals_intervals__stop_timer se guardan en SQLite antes de cualquier llamada de red. Si la sincronización falla, la entrada permanece local con estado failed o pending y puede reintentarse.

  • La sincronización del catálogo mantiene filas activas. La sincronización de proyectos obtiene todas las páginas del catálogo, mantiene proyectos activos y clasificaciones activas, y conserva los clientes referenciados por proyectos activos.

  • Los informes son solo locales. mcp__plugin_intervals_intervals__query_time y /intervals-time leen de SQLite y nunca llaman a la API de Intervals.

Nota para desarrolladores

Si abres este repositorio en Claude Code, es posible que veas el servidor MCP intervals listado como fallido al conectar. Eso es esperado: el .mcp.json en la raíz del repositorio es la configuración propia del plugin, y hace referencia a ${CLAUDE_PLUGIN_ROOT}, que solo se establece cuando el plugin se instala a través de /plugin install. Editar el código fuente de este repositorio no instala el plugin, por lo que la variable no está establecida y el servidor no puede iniciarse. Es seguro rechazar o ignorar cualquier aviso al respecto mientras trabajas en el código.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables recording, querying, and summarizing daily work entries with tags using a local SQLite database. Supports work logging, search, timeline queries, tag management, and automated reminders for tracking daily tasks.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language task management including logging, updating, and summarizing productivity activities across multiple categories using a local SQLite database. It allows users to manage workflows and generate time-based summaries through standardized Model Context Protocol tools.
    1
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables multi-project workspaces to share structured notes, API contracts, and handoff messages via a local SQLite database, with versioning and read tracking.
    GPL 3.0

View all related MCP servers

Related MCP Connectors

  • Track time on usetimebook.com - start/stop timers, log entries, list projects/clients.

  • Business-day, SLA, cron and recurrence calculations — offline, holiday-aware, no network.

  • Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sixfeetup/intervals-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server