Простой MCP-сервер Яндекс Календаря
mcp_yandex_calendar
Небольшой тестовый MCP-сервер Яндекс Календаря по CalDAV: предстоящие события, создание и удаление без подтверждения
Высокий риск
Высокий уровень ставим, когда инструмент пишет во внешние системы, работает с деньгами, рабочими базами или секретами либо выполняет произвольные команды. CLI поставит его только после вашего согласия.
Почему такой уровень
- delete_calendar_event удаляет событие без подтверждения и без резервной копии
- create_calendar_event создает события в первом календаре пользователя без возможности выбрать другой
Установка
Ручная установка
docker build -t mcp-yandex-calendar . && docker run -p 8088:8088 --env-file .env mcp-yandex-calendarСборка и запуск из Dockerfile, порт 8088.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер на FastMCP подключается к Яндекс Календарю по CalDAV через библиотеку caldav и берет первый доступный календарь пользователя. Он дает три инструмента: get_upcoming_events возвращает предстоящие события за заданное число дней в тексте или JSON, create_calendar_event создает событие по названию, дате, времени, длительности и описанию, delete_calendar_event удаляет событие. Автор сам называет проект тестовым, сделанным для проверки контейнеризации MCP-сервера, и запускает его в Docker-образе на Ubuntu с портом 8088 и часовым поясом Europe/Moscow. Дополнительных проверок перед удалением, подтверждения действий или резервных копий события в коде нет.
Для кого. Для тех, кто хочет минимальный пример MCP-сервера Яндекс Календаря в контейнере и готов доработать его под свои нужды.
Подходит, если
- Нужен маленький, легко читаемый пример MCP-сервера Яндекс Календаря на Python и caldav
- Достаточно базовых операций: посмотреть, создать, удалить
- Нужен готовый Dockerfile для контейнерного запуска
Не подходит, если
- Нужна защита от случайного удаления: подтверждения, сверки названия или резервной копии в проекте нет
- Нужна работа с несколькими календарями: сервер всегда берет первый в списке
Пример запроса к агенту
Покажи мои предстоящие события в Яндекс Календаре за следующие 14 днейОграничения
Автор прямо называет проект тестовым. Лицензия не указана. Удаление события не требует подтверждения и не сохраняет резервную копию. Сервер всегда работает с первым календарем из списка пользователя, выбрать другой нельзя. Нужен пароль приложения Яндекса типа Календарь, не пароль аккаунта.
Как отключить. Остановите контейнер или процесс сервера и удалите его из конфигурации MCP клиента.
MCP
- Транспорт
- http
- Авторизация
- API-ключ
| Переменные окружения | |
|---|---|
| YANDEX_USERNAME обязательная | Адрес вида email@yandex.ru |
| YANDEX_PASSWORD обязательная, секрет | Пароль приложения Яндекса типа Календарь |
Проверка безопасности
- delete_calendar_event удаляет событие без подтверждения и без резервной копии
- create_calendar_event создает события в первом календаре пользователя без возможности выбрать другой
Коротко о README
README состоит из пошаговой инструкции по созданию пароля приложения Яндекса для Календаря по CalDAV и предупреждения не использовать основной пароль аккаунта, без описания самих инструментов сервера.
Частые вопросы
Спросит ли сервер подтверждение перед удалением события?
Нет, delete_calendar_event удаляет событие сразу, без подтверждения и без резервной копии.
Можно ли выбрать, с каким календарем работать?
Нет, сервер всегда подключается к первому календарю из списка, который вернул Яндекс.
Похожие
Самостоятельно размещаемая база знаний с блочными ссылками и встроенным MCP-сервером для подключения AI-агентов к заметкам
CLI для всех API Google Workspace с выводом в JSON и набором скиллов для агентов: Drive, Gmail, Calendar, Sheets и другие
Локальный поиск по заметкам, документации и расшифровкам встреч в Markdown: ключевые слова, смысловой поиск и ранжирование, есть MCP
Менеджер задач для AI-разработки: разбирает PRD на задачи с зависимостями и ведет агента по ним через MCP или CLI