intervals-mcp
intervals-mcp
Автономный MCP-сервер, CLI и плагин Claude Code для учёта времени в Intervals с подходом local-first. Запуск таймера или добавление записи времени сначала обращается к локальной базе SQLite; записи синхронизируются с Intervals в фоновом режиме или по требованию. Отчёты и запросы всегда работают только с локальными данными и никогда не вызывают API Intervals.
Установка (плагин Claude Code)
/plugin marketplace add sixfeetup/intervals-mcp
/plugin install intervals@intervals-mcpСборка не нужна: бандл dist/ уже включён в репозиторий. Единственное требование — Node >= 22.5.
Related MCP server: Productivity Tracker MCP Server
Установка (любой MCP-хост)
Склонируйте репозиторий и укажите вашему MCP-хосту на собранный сервер:
git clone https://github.com/sixfeetup/intervals-mcp.git{
"command": "node",
"args": ["/path/to/intervals-mcp/dist/server.mjs"]
}Конфигурация
Учётные данные и настройки определяются в следующем порядке:
Переменные окружения
config.jsonв каталогеINTERVALS_BASE(или~/.intervals/)
Переменные окружения
Переменная | Описание |
| API-ключ Intervals для HTTP Basic-аутентификации |
| Базовый URL API Intervals (по умолчанию: |
| Ваш идентификатор пользователя (person ID) в Intervals (обязателен для синхронизации записей времени) |
| Переопределяет путь локального хранилища по умолчанию ( |
Ключи config.json
Если вы предпочитаете файловую конфигурацию, создайте config.json в каталоге INTERVALS_HOME (или ~/.intervals/):
Ключ | Тип | Описание |
|
| API-ключ Intervals для HTTP Basic-аутентификации |
|
| Базовый URL API Intervals (по умолчанию: |
|
| Ваш идентификатор пользователя (person ID) в Intervals (обязателен для синхронизации записей времени) |
|
| Интервал фоновой синхронизации в миллисекундах |
Запуск intervals setup (или слеш-команды /intervals-setup) записывает этот файл с правами 0600 и никогда не помещает API-ключ в контекст модели — ключ вводится в интерактивной скрытой подсказке в вашем собственном терминале.
CLI
В бандле поставляется CLI без зависимостей (dist/cli.mjs, доступный как intervals через package.json#bin при установке в качестве пакета):
Команда | Описание |
| Настроить учётные данные и выполнить первичную синхронизацию проектов |
| Показать путь к БД, источник учётных данных, таймеры, ожидающую синхронизацию |
| Обновить локальный каталог проектов |
| Отправить ожидающие записи времени в Intervals сейчас |
| Показать, изменить или удалить таймеры |
| Отчёт по записям времени ( |
| Задать значения по умолчанию для проекта |
Выполните node dist/cli.mjs help (или intervals help), чтобы получить полный текст справки.
Инструменты агента
При установке в качестве плагина Claude Code инструменты доступны через префикс mcp__plugin_intervals_intervals__:
Tool | Описание |
| Поиск в локальном каталоге проектов по идентификаторам и классификациям (только локально) |
| Запустить локальный таймер с простым описанием и необязательным параметром |
| Остановить таймер, определить классификацию, создать ожидающую запись времени и синхронизировать |
| Изменить описание или подсказки по проекту/типу работы/модулю для активного локального таймера |
| Безопасно убрать активный таймер или остановленный таймер без связанной записи времени |
| Добавить завершённую запись времени напрямую (длительность в минутах) |
| Изменить существующую локальную запись времени по короткому ID или ID связанного таймера; используйте |
| Удалить локальную или синхронизированную запись времени по короткому ID или ID связанного таймера |
| Отчёт по записям времени по диапазону дат и фильтру по проекту (только локально) |
| Показать активные или недавние локальные таймеры |
| Сопоставить ID остановленного локального таймера с ID связанной локальной записи времени |
| Показать последние локальные записи времени со статусом синхронизации |
| Настроить тип работы/модуль по умолчанию для проекта |
| Немедленно повторить синхронизацию ожидающих записей времени с Intervals |
mcp__plugin_intervals_intervals__start_timer принимает необязательные значения start_at для запуска локального таймера задним числом. Используйте HH:mm или H:mm для сегодняшнего дня в местном времени, YYYY-MM-DD HH:mm для местной даты/времени или ISO-дату/время с явным смещением/часовым поясом. Значения start_at в будущем отклоняются.
Слеш-команды
Команда | Описание |
| Настроить учётные данные Intervals и запустить первичную синхронизацию проектов |
| Показать путь к БД Intervals, источник учётных данных, активные таймеры, ожидаемую синхронизацию, последнюю синхронизацию проектов |
| Обновить локальный каталог Intervals: клиентов, проекты, типы работ и модули |
| Отправить ожидающие локальные записи времени в Intervals сейчас |
| Показать активные или недавние таймеры Intervals, или изменить/удалить таймер по ID |
| Отчёт по локальным записям времени за диапазон, или изменение записи по ID |
| Задать тип работы по умолчанию и необязательный модуль для проекта |
Как это работает
Таймеры существуют только локально. При запуске таймера в локальную базу записывается лёгкая строка только с описанием. Подсказки по проекту, типу работы и модулю необязательны.
Работающие таймеры можно переклассифицировать локально. Измените подсказки проекта, типа работы или модуля до остановки; обновлённая классификация применяется, когда создаётся запись времени.
Остановка/применение создаёт запись времени. Когда вы останавливаете таймер, вы предоставляете (или определяете) проект и тип работы. Сервер создаёт ожидающую запись времени и сразу пытается синхронизировать её с Intervals.
Записи времени — local-first.
mcp__plugin_intervals_intervals__add_time,mcp__plugin_intervals_in intervals__edit_timeиmcp__plugin_intervals_intervals__stop_timerсохраняют данные в SQLite по перед любым сетевым вызовом. Если синхронизация не удалась, запись остаётся локальной со статусомfailedилиpending, и её можно повторить.Синхронизация каталога сохраняет активные записи. Синхронизация проектов загружает все страницы каталога, оставляет активные проекты и активные классификации, а также удерживает клиентов, на которые ссылаются активные проекты.
Отчёты работают только локально.
mcp__plugin_intervals_intervals__query_timeи/intervals-timeчитают SQLite и никогда не вызывают API Intervals.
Заметка для разработчика
Если вы откроете этот репозиторий в Claude Code, вы можете увидеть MCP-сервер intervals в списке как некорректно подключаемый. Это ожидаемо: якорь-файл корня репозитория .mcp.json — это собственная конфигурация плагина, и он ссылается на ${CLAUDE_PLUGIN_DIST}, которая назначается только при установке плагина через /plugin install. Редактирование исходного кода этого репозитория не содержит плагин, поэтому переменная не установлена,Действие not set, server не может запуститься. Любые запросы об этом при работе над кодом — можно безопасно отклонять или игнорировать.
This server cannot be installed
Maintenance
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
- FlicenseNot gradedqualityDmaintenanceEnables 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.
- FlicenseNot gradedqualityDmaintenanceEnables 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
- AlicenseAqualityAmaintenanceEnables tracking work time with start/stop timers, logging entries, and generating reports.48MIT
- AlicenseNot gradedqualityBmaintenanceEnables 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
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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