# skylight-mcp

Управляет семейным календарём Skylight, списками дел, расписанием приёмов пищи и настройками фоторамки через 114 инструментов MCP.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 16
- Автор: chrischall
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/chrischall/skylight-mcp
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/mcp/skylight-mcp

## Что делает

Сервер связывает клиентов MCP с сервисом умных семейных дисплеев Skylight Calendar. В пакет входит 114 инструментов для чтения и изменения записей: события календаря, поручения, списки покупок, баллы вознаграждений, меню и загрузка медиафайлов. Все сетевые вызовы содержат заголовок `skylight-api-version: 2026-05-01`, предотвращающий ошибки несовместимости версий API.

Вход выполняется без браузера через связку email и пароля с PKCE S256 или по сохранённому значению `SKYLIGHT_REFRESH_TOKEN`. Процесс запускается даже без переменных окружения в настройках, так как авторизация отложена до первого обращения к инструменту. Если на аккаунте зарегистрировано несколько фоторамок, обязательно укажите `SKYLIGHT_FRAME_ID`, иначе вызовы не смогут определить нужный экран.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `SKYLIGHT_REFRESH_TOKEN`, `SKYLIGHT_EMAIL`, `SKYLIGHT_PASSWORD`, `SKYLIGHT_FRAME_ID`, `SKYLIGHT_NAME`, `SKYLIGHT_TOKEN_CACHE`, `SKYLIGHT_TOKEN_FILE`, `SKYLIGHT_BASE_URL`, `SKYLIGHT_APPLE_APP_PASSWORD`, `SKYLIGHT_APPLE_ID` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env SKYLIGHT_REFRESH_TOKEN=<SKYLIGHT_REFRESH_TOKEN> --env SKYLIGHT_EMAIL=<SKYLIGHT_EMAIL> --env SKYLIGHT_PASSWORD=<SKYLIGHT_PASSWORD> --env SKYLIGHT_FRAME_ID=<SKYLIGHT_FRAME_ID> --env SKYLIGHT_NAME=<SKYLIGHT_NAME> --transport stdio skylight-mcp -- npx -y skylight-mcp
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Codex

**Командой платформы**
```bash
codex mcp add skylight-mcp --env SKYLIGHT_REFRESH_TOKEN=<SKYLIGHT_REFRESH_TOKEN> --env SKYLIGHT_EMAIL=<SKYLIGHT_EMAIL> --env SKYLIGHT_PASSWORD=<SKYLIGHT_PASSWORD> --env SKYLIGHT_FRAME_ID=<SKYLIGHT_FRAME_ID> --env SKYLIGHT_NAME=<SKYLIGHT_NAME> -- npx -y skylight-mcp
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "skylight-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "skylight-mcp"
            ],
            "env": {
                "SKYLIGHT_REFRESH_TOKEN": "<SKYLIGHT_REFRESH_TOKEN>",
                "SKYLIGHT_EMAIL": "<SKYLIGHT_EMAIL>",
                "SKYLIGHT_PASSWORD": "<SKYLIGHT_PASSWORD>",
                "SKYLIGHT_FRAME_ID": "<SKYLIGHT_FRAME_ID>",
                "SKYLIGHT_NAME": "<SKYLIGHT_NAME>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "skylight-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "skylight-mcp"
            ],
            "env": {
                "SKYLIGHT_REFRESH_TOKEN": "<SKYLIGHT_REFRESH_TOKEN>",
                "SKYLIGHT_EMAIL": "<SKYLIGHT_EMAIL>",
                "SKYLIGHT_PASSWORD": "<SKYLIGHT_PASSWORD>",
                "SKYLIGHT_FRAME_ID": "<SKYLIGHT_FRAME_ID>",
                "SKYLIGHT_NAME": "<SKYLIGHT_NAME>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e SKYLIGHT_REFRESH_TOKEN=<SKYLIGHT_REFRESH_TOKEN> -e SKYLIGHT_EMAIL=<SKYLIGHT_EMAIL> -e SKYLIGHT_PASSWORD=<SKYLIGHT_PASSWORD> -e SKYLIGHT_FRAME_ID=<SKYLIGHT_FRAME_ID> -e SKYLIGHT_NAME=<SKYLIGHT_NAME> skylight-mcp npx -y skylight-mcp
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

## Когда брать
- просматривать и обновлять семейные календари Skylight
- назначать домашние дела и начислять баллы вознаграждений
- планировать приёмы пищи и составлять списки продуктов
- подключать внешние календари по протоколу webcal

## Примеры запросов агенту
- «Покажи список запланированных событий на нашей семейной доске Skylight на эту неделю»
- «Проверь баланс баллов вознаграждений для всех членов семьи»
- «Добавь подписку на школьный календарь через webcal-ссылку»

## Похожие
- [Reactive Resume](https://affpapa.org/nevibecode/mcp/reactive-resume.md) — MCP-сервер · ★ 44874
- [screenpipe](https://affpapa.org/nevibecode/mcp/screenpipe.md) — MCP-сервер · ★ 22053
- [Inbox Zero](https://affpapa.org/nevibecode/mcp/inbox-zero.md) — MCP-сервер · ★ 12791
- [kaneo](https://affpapa.org/nevibecode/mcp/kaneo.md) — MCP-сервер · ★ 9602
- [Mindwtr](https://affpapa.org/nevibecode/mcp/mindwtr.md) — MCP-сервер · ★ 2318
- [Azure DevOps (ADO)](https://affpapa.org/nevibecode/mcp/azure-devops-ado.md) — MCP-сервер · ★ 2067

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
