Passage of Time MCP
Passage of Time MCP дает модели текущее время и семь инструментов для расчета интервалов, сдвигов и контекста даты, чтобы она не считала время в уме
- 723 ★ репозитория
- Последний коммит
- MPL-2.0
Минимальный доступ
Почему такой уровень
- Только читает системное время и считает даты, файлов и внешних сервисов не трогает
- Слушает порт 8000 на всех адресах без токена, а для веб-клиентов автор предлагает вывести его наружу через туннель
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/passage-of-time-mcpОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемМинимальный доступИнструмент ничего не запускает и не ходит в сеть.
- Только читает системное время и считает даты, файлов и внешних сервисов не трогает
- Слушает порт 8000 на всех адресах без токена, а для веб-клиентов автор предлагает вывести его наружу через туннель
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Passage of Time MCP — небольшой MCP-сервер на Python и FastMCP, который закрывает слабое место языковых моделей: они не знают текущего времени и плохо считают разницу между датами. Инструмент `current_datetime` возвращает дату и время в нужном часовом поясе, по умолчанию это `America/New_York`. `time_difference` считает интервал между двумя метками и отдает секунды, читаемую запись и признак отрицательного значения, а `time_since` пишет, сколько прошло с момента события. `add_time` прибавляет или вычитает длительность, `parse_timestamp` переводит метку в формат ISO, Unix и человекочитаемый вид, а `format_duration` оформляет секунды как полную, компактную или минимальную запись. Инструмент `timestamp_context` описывает момент с точки зрения человека: время суток, день недели, выходной ли это, рабочие ли часы (в коде это понедельник–пятница с 9 до 17), типичное занятие и относительный день вроде «сегодня» или «вчера». Метки принимаются только в формате `YYYY-MM-DD HH:MM:SS` или `YYYY-MM-DD`, чтобы разбор не допускал двусмысленности. Сервер запускается из клона репозитория командой `pipenv run server`. Он слушает порт 8000 (его меняет переменная `PORT`) и отдает MCP сразу в двух вариантах: потоковый HTTP на `/mcp` и устаревший SSE на `/sse`. Проверка живости доступна на `/health`. Инструкция сервера просит модель вызывать `current_datetime` в начале каждого ответа, чтобы чувствовать ход времени в разговоре.
Для кого. Для тех, кто работает с агентом в долгих сессиях и задачах с датами: планы, дедлайны, журналы и расчеты сроков, где модели нужно точное текущее время и надежная арифметика.
Подходит, если
- Агент должен знать сегодняшнюю дату и час в вашем часовом поясе без догадок по данным обучения
- Нужно посчитать срок между двумя датами или сколько прошло с события, и результат важно получить без ошибок через `time_difference` и `time_since`
- Надо сдвинуть дату на заданную длительность и получить ответ в нескольких форматах через `add_time` и `parse_timestamp`
- Агент должен учитывать время суток и выходные при ответах, например не предлагать звонок в полночь, и для этого вызывает `timestamp_context`
- Хочется проследить ритм разговора по отметкам времени между репликами
Не подходит, если
- На машине нет Python 3.12: версия указана в предварительных требованиях и в Pipfile
- Вам нужны часовые пояса кроме поддерживаемых `pytz` или разбор фраз вроде «в следующий вторник»: сервер принимает только строгий формат меток, а разбор естественного языка в планах автора
- Сервер должен быть доступен веб-клиенту без публичного адреса: клиенты вроде Claude.ai требуют внешний URL, а локальный запуск придется выводить через туннель
- Нужны календарь, напоминания и события: интеграции с календарем автор лишь планирует
Пример запроса к агенту
Сколько времени прошло с 2026-03-01 09:00:00 до сейчас, и какое время будет через 45 минут после этого момента?MCP
- Транспорт
- http, sse
- Авторизация
- не нужна
Переменные окружения
PORT- Порт сервера, по умолчанию 8000
Ограничения
- Лицензия MPL-2.0.
- Пакета на PyPI нет: сервер запускают из клона через `pipenv`. Автор отмечает в планах поддержку Docker и расширение для браузера, а готового образа в репозитории нет.
- Для веб-клиентов вроде Claude.ai нужен публичный адрес с `/sse` на конце, а для локального запуска автор советует `ngrok`. Клиенты, которые работают с локальным процессом, могут обратиться к `localhost:8000`.
- Часовой пояс по умолчанию `America/New_York`, если не передать другой в каждом вызове. Рабочие часы в `timestamp_context` заданы жестко: понедельник–пятница с 9 до 17.
- Автор называет SSE устаревшим транспортом и планирует перейти на потоковый HTTP, хотя в коде уже есть оба пути, `/mcp` и `/sse`. Памяти о прошлых расчетах сервер не хранит.
Как отключить. Остановите процесс сервера (Ctrl+C в терминале, где запущен `pipenv run server`) и уберите его адрес из настроек MCP клиента. Если сервер выведен наружу через `ngrok`, закройте туннель. Папку клона можно удалить, служебных данных сервер не создает.
Частые вопросы
Какие инструменты есть в Passage of Time MCP?
Семь: `current_datetime`, `time_difference`, `time_since`, `parse_timestamp`, `add_time`, `timestamp_context` и `format_duration`. Первый отдает текущее время, остальные считают интервалы, сдвиги, формы записи и контекст момента.
В каком формате передавать даты?
Только `YYYY-MM-DD HH:MM:SS` или `YYYY-MM-DD`, например `2024-01-15 14:30:00`. Автор сделал формат строгим, чтобы исключить разночтения, и фразы вроде «через три часа» сервер не разбирает.
Как поменять часовой пояс?
Передайте название зоны `pytz` в параметре `timezone`, например `UTC`, `Europe/London` или `Asia/Tokyo`. Без параметра используется `America/New_York`. Зону нужно указывать в каждом вызове, общей настройки нет.
Зачем серверу инструкция вызывать время в начале каждого ответа?
По замыслу автора, повторные отметки времени показывают модели, сколько пауз было между репликами. На этом основаны примеры из репозитория: разбор ритма разговора и вывод о том, что за окном ночь, когда пользователь просит помочь с отладкой в 23:45.
Как подключить сервер к веб-клиенту?
В Claude.ai откройте Settings, раздел Integrations, добавьте своего поставщика и укажите адрес с `/sse` на конце. Для локального сервера автор предлагает `ngrok http 8000` и подстановку выданного адреса. Это описание из репозитория, статус пунктов меню в клиенте могут меняться.
Есть ли тесты и как их запустить?
Да, файл `tests/test_passage_of_time_mcp.py`, запуск командой `pipenv run test` после `pipenv install --dev`. Скриншоты в каталоге `docs` показывают работу инструментов в Claude.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыMCP-сервер для Weeek: проекты, доски, задачи и учет времени с отчетами прямо из Claude Code
Minutes
minutes
Локальный MCP-сервер для памяти о встречах: запись и транскрипция на устройстве в Markdown, поиск истории из Claude Code, Codex, Cursor и других MCP-клиентов
MCP-сервер рецептов: агент ищет блюда по категориям, составляет меню на неделю с учетом аллергий и подсказывает ужин на сегодня
MCP-сервер для Kaiten на Python
Kaiten MCP
Однофайловый MCP-сервер на FastMCP для Kaiten: 22 инструмента для карточек, комментариев, чек-листов и учета времени
Weather API MCP Server — текущая погода по городу
Weather API MCP Server
MCP погода на Go: инструмент current_weather отдает агенту текущую погоду по названию города из сервиса WeatherAPI, запуск локально или в Docker
Plane MCP Server — управление проектами Plane
Plane MCP Server
Официальный MCP-сервер Plane: агент ведет проекты, задачи, циклы и релизы через 30 инструментов
Коротко о README
Главная страница начинается с истории проекта и ссылки на статью автора, затем описывает быстрый старт: клонирование, установку зависимостей и запуск сервера. Дальше идут справочник семи инструментов с примерами ответов, диалоги, показывающие работу с временем, принципы проектирования, настройки часовых поясов и форматов, известные ограничения и план развития. В конце раздел для участников с запуском тестов и инструкцией по `ngrok`. В репозитории также лежат тесты, файл `.replit` и скриншоты работы в Claude.