{"slug": "show-hn-sunlith-an-android-calendar-you-can-control-through-mcp", "title": "Show HN: Sunlith, an Android calendar you can control through MCP", "summary": "Sunlith released version 0.2.0, an open-source Android calendar app that pairs with a Node.js 22+ computer companion over Wi-Fi or Tailscale so an AI assistant can read, create, change and delete events on the phone through MCP, with no Google account required. The companion runs on Windows, macOS and Linux and ships first-run setup guides for eight assistants — Codex, Claude, Cursor, Grok, OpenCode, Antigravity, Muse Code and Pi — plus coverage of Gemini CLI, while the APK itself carries no advertising, analytics or built-in chat and keeps no separate event database. The published APK is signed with a development key, requires Android 8.0 or newer, and production signing is planned before a stable release; the private connection uses HTTPS with a pinned phone certificate and grants access only to calendars the user selects.", "body_md": "A clean calendar app.\n\nKeep your events, reminders, and home screen widget together. Add or change events directly, or connect an assistant on your computer to manage them with prompts.\n\nOn your phone, you only need the APK. The ZIP is the computer companion, and SHA256SUMS.txt is for verifying downloads.\n\nRequires Android 8.0 or newer. The published APK is signed with a development key. Local and CI builds can use a different key, so use the published APK for updates. Installing a newer APK with the same signing key preserves app data. Production signing is planned before a stable release.\n\nSunlith has month, week, and day views, search, calendar filters, and English and French support. The month view pairs a calendar grid with an agenda for that month, including empty days by default. The grid stays visible while its agenda scrolls, with a setting to enable collapse. Week view lists exactly seven days, and pressing Day opens today. Use the date buttons or Today to move around. Month view can also group empty days or show only days with events.\n\nEvents support all-day dates, repeat presets, notes, locations, and reminders. The app follows your system theme by default, with a manual override. Choose a startup view or reopen the last view. The resizable agenda widget shows 1-31 days, defaults to seven, and includes day dividers and empty days. Its opacity is adjustable in 5% steps; calendar names are hidden by default.\n\nIt uses the calendars already stored on your phone. Your installed account adapters handle syncing. You can also create an on-device calendar and import or export .ics files through the system file picker. See [existing calendars and imports](https://github.com/SunSinD/Sunlith/blob/main/docs/MIGRATION.md).\n\nThe APK has no advertising, analytics, or built-in chat. It keeps no separate event database. Network access is used for the computer connection when you turn it on.\n\nPair your computer with Sunlith over Wi-Fi or Tailscale. The companion can read, create, change and delete events directly on your phone, including on-device calendars. No Google account or second calendar app is required.\n\nIn Sunlith, open Settings > Computer connection, choose the calendars to share, and save the pairing file. Send it privately to your computer and start the connection. The phone shows a notification while the connection is on. You can stop or unpair it at any time.\n\nFor phone-only use, ask a mobile assistant that can create files for a downloadable `.ics` attachment containing your event details. Open or share it with Sunlith, choose a destination calendar, then confirm Import. Compatible Android assistants can also open an event draft for you to review and Save. These handoffs need no computer or Google account. See [phone assistant setup](https://github.com/SunSinD/Sunlith/blob/main/docs/AI-INTEGRATION.md#on-your-phone-without-a-computer).\n\n[Download the computer companion](https://github.com/SunSinD/Sunlith/releases/download/v0.2.0/Sunlith-companion-v0.2.0.zip)\n\nThe companion runs on Windows, macOS, and Linux with Node.js 22 or newer. Extract the archive and read START-HERE.md, then follow the [setup guide](https://github.com/SunSinD/Sunlith/blob/main/docs/AI-INTEGRATION.md#direct-phone-connection). The private connection uses HTTPS with a pinned phone certificate. Pairing grants access only to the calendars you choose.\n\nFirst-run setup offers eight assistant guides: Codex, Claude, Cursor, Grok, OpenCode, Antigravity, Muse Code, and Pi. The setup guide also covers Gemini CLI. You can use the calendar without connecting an assistant. Sunlith has no subscription of its own; your assistant may require its own account. This release includes a command-line companion, with no desktop calendar, browser setup wizard, native desktop installer, or HTTP MCP gateway.\n\nInstall JDK 17 and Android SDK platform 36 with build tools 36.0.0. Set ANDROID_HOME or create an untracked local.properties containing your SDK path.\n\n```\n.\\gradlew.bat :app:testDebugUnitTest :app:lintDebug :app:assembleDebug\n```\n\nOn macOS or Linux, use ./gradlew with the same tasks. The APK is written to app/build/outputs/apk/debug/app-debug.apk.\n\nCompanion checks, from integrations/mcp:\n\n```\nnpm ci\nnpm run check\nnpm test\n```\n\nPhone background restrictions can interrupt the connection. Keep Sunlith running with its connection notification, and allow background battery use if your phone stops it. Your computer and phone must be on the same Wi-Fi or private Tailscale network. No public relay is provided. See [testing](https://github.com/SunSinD/Sunlith/blob/main/docs/TESTING.md) for the recorded checks and their limits.\n\nDirect mode controls calendars through Android on the paired phone. A separate Google connection remains available for people who prefer account sync. Google authorization and account sync require their own setup and testing.\n\nThe editor blocks meetings with attendee records and complex recurring exceptions. Supported recurring edits and deletes apply to the whole series. Imports report unsupported records and exports can skip malformed provider data. Some detailed diagnostics remain English in the French interface. Back up important calendars before testing changes or imports.\n\nSee [testing](https://github.com/SunSinD/Sunlith/blob/main/docs/TESTING.md), [architecture](https://github.com/SunSinD/Sunlith/blob/main/docs/ARCHITECTURE.md), [calendar research](https://github.com/SunSinD/Sunlith/blob/main/docs/RESEARCH-CALENDAR.md), and [versioning](https://github.com/SunSinD/Sunlith/blob/main/docs/VERSIONING.md).\n\nApache-2.0. See [LICENSE](https://github.com/SunSinD/Sunlith/blob/main/LICENSE) and [third-party notices](https://github.com/SunSinD/Sunlith/blob/main/docs/THIRD-PARTY.md).", "url": "https://wpnews.pro/news/show-hn-sunlith-an-android-calendar-you-can-control-through-mcp", "canonical_source": "https://github.com/SunSinD/Sunlith", "published_at": "2026-11-05 05:33:49+00:00", "updated_at": "2026-11-05 05:50:13.914336+00:00", "lang": "en", "topics": ["ai-agents", "agent-protocols", "ai-tools", "ai-products"], "entities": ["Sunlith", "Codex", "Claude", "Cursor", "Grok", "OpenCode", "Antigravity", "Gemini CLI"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-sunlith-an-android-calendar-you-can-control-through-mcp", "markdown": "https://wpnews.pro/news/show-hn-sunlith-an-android-calendar-you-can-control-through-mcp.md", "text": "https://wpnews.pro/news/show-hn-sunlith-an-android-calendar-you-can-control-through-mcp.txt", "jsonld": "https://wpnews.pro/news/show-hn-sunlith-an-android-calendar-you-can-control-through-mcp.jsonld"}}