NestDaddy

Skylight Mcp

io.github.chrischall/skylight-mcp · v1.6.2

Skylight Calendar for Claude — family events, chores, and rewards.

Connect Runs on your machine

Terminal
claude mcp add skylight-mcp -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> -e SKYLIGHT_TOKEN_CACHE=<SKYLIGHT_TOKEN_CACHE> -e SKYLIGHT_TOKEN_FILE=<SKYLIGHT_TOKEN_FILE> -e SKYLIGHT_BASE_URL=<SKYLIGHT_BASE_URL> -e SKYLIGHT_APPLE_APP_PASSWORD=<SKYLIGHT_APPLE_APP_PASSWORD> -e SKYLIGHT_APPLE_ID=<SKYLIGHT_APPLE_ID> -e SKYLIGHT_UPLOAD_DIR=<SKYLIGHT_UPLOAD_DIR> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "skylight-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "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>",
        "SKYLIGHT_TOKEN_CACHE": "<SKYLIGHT_TOKEN_CACHE>",
        "SKYLIGHT_TOKEN_FILE": "<SKYLIGHT_TOKEN_FILE>",
        "SKYLIGHT_BASE_URL": "<SKYLIGHT_BASE_URL>",
        "SKYLIGHT_APPLE_APP_PASSWORD": "<SKYLIGHT_APPLE_APP_PASSWORD>",
        "SKYLIGHT_APPLE_ID": "<SKYLIGHT_APPLE_ID>",
        "SKYLIGHT_UPLOAD_DIR": "<SKYLIGHT_UPLOAD_DIR>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "skylight-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "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>",
        "SKYLIGHT_TOKEN_CACHE": "<SKYLIGHT_TOKEN_CACHE>",
        "SKYLIGHT_TOKEN_FILE": "<SKYLIGHT_TOKEN_FILE>",
        "SKYLIGHT_BASE_URL": "<SKYLIGHT_BASE_URL>",
        "SKYLIGHT_APPLE_APP_PASSWORD": "<SKYLIGHT_APPLE_APP_PASSWORD>",
        "SKYLIGHT_APPLE_ID": "<SKYLIGHT_APPLE_ID>",
        "SKYLIGHT_UPLOAD_DIR": "<SKYLIGHT_UPLOAD_DIR>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "skylight-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "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>",
        "SKYLIGHT_TOKEN_CACHE": "<SKYLIGHT_TOKEN_CACHE>",
        "SKYLIGHT_TOKEN_FILE": "<SKYLIGHT_TOKEN_FILE>",
        "SKYLIGHT_BASE_URL": "<SKYLIGHT_BASE_URL>",
        "SKYLIGHT_APPLE_APP_PASSWORD": "<SKYLIGHT_APPLE_APP_PASSWORD>",
        "SKYLIGHT_APPLE_ID": "<SKYLIGHT_APPLE_ID>",
        "SKYLIGHT_UPLOAD_DIR": "<SKYLIGHT_UPLOAD_DIR>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
SKYLIGHT_REFRESH_TOKEN
Optional, secret
An OAuth refresh token you already hold. Supply this and no password is needed — the login is skipped entirely.
SKYLIGHT_EMAIL
Optional
Skylight account email. Pair with SKYLIGHT_PASSWORD for direct login. Needed only if you are not supplying SKYLIGHT_REFRESH_TOKEN.
SKYLIGHT_PASSWORD
Optional, secret
Skylight account password — required iff SKYLIGHT_EMAIL is set. Needed only if you are not supplying SKYLIGHT_REFRESH_TOKEN.
SKYLIGHT_FRAME_ID
Optional
Optional: pick a specific Skylight frame when the account has more than one.
SKYLIGHT_NAME
Optional
Friendly account name used in startup logs.
SKYLIGHT_TOKEN_CACHE
Optional
Set to false to disable the on-disk token cache and re-authenticate on every process start. Defaults to enabled.
SKYLIGHT_TOKEN_FILE
Optional
Absolute path for the token cache file. Defaults to $MCP_DATA_DIR/.skylight-mcp/tokens.json.
SKYLIGHT_BASE_URL
Optional
Override the API base (default https://app.ourskylight.com/api). The auth origin is derived from it, so pointing this elsewhere moves the login flow too — and the new host must be added to the registration’s egress allowlist, or every call is blocked.
SKYLIGHT_APPLE_APP_PASSWORD
Optional, secret
Optional: an app-specific password from appleid.apple.com, used only by skylight_link_apple_calendar. Env-only by design — the tool takes no password argument, so the credential never passes through the model or the transcript.
SKYLIGHT_APPLE_ID
Optional
Optional: the Apple ID email skylight_link_apple_calendar links; the tool's email argument overrides it.
SKYLIGHT_UPLOAD_DIR
Optional
Optional: directories that the photo-upload, event-import-from-photo and avatar tools may read files from (several separated by ':', or ';' on Windows; '~' allowed). Any other path is refused. Unset: ~/Pictures and ~/Downloads, or only $MCP_DATA_DIR/uploads in a hosted deployment.

Details

Package[email protected] (NPM, stdio)
First published11 Nov 2026
Last updated11 Nov 2026
Registry nameio.github.chrischall/skylight-mcp

More productivity servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.