Because it goes at the on-disk database rather than a cloud API, there is nothing to authorise and no sync to wait for — but you see the last state Chrome or the app flushed to disk, not necessarily this second's. The server opens those files read-only and caches for 30 seconds; it cannot modify your data.
A read-only reader for Focus To-Do's local storage. It finds and parses the app's IndexedDB — Chrome's LevelDB format, used by both the Windows Store app and the browser extension — decodes the records, and serves your tasks and sessions as tools. Nothing goes to a server.
- Projects listed, with the app's own system projects hidden by default — `list_projects`
- Tasks filtered by project and by status: `active`, `completed` or `all` — `list_tasks`
- Tasks found by name — `search_tasks`
- One task in full, subtasks included — `get_task`, `list_subtasks`
- Pomodoro statistics broken down by day over the last N days — `get_pomodoro_stats`
- Auto-detection of the database across Chrome, Chromium, Brave, Edge and Vivaldi profiles including Flatpak and Snap, plus the Windows Store app; override it with `FOCUS_TODO_IDB_PATH`
Focus To-Do installed on the same machine, either as the Chrome extension or the Microsoft Store app, on Linux, macOS or Windows. Node.js 18+. No account login, no API key, no export step. Registered with `claude mcp add --scope user focus-todo node "/path/to/focus-todo-mcp/index.mjs"`.
One command — claude mcp add --scope user focus-todo node "/path/to/focus-todo-mcp/index.mjs"
