Tabs

A calm to-do app for the Mac, with a built-in MCP server so your AI agent can plan, add and tick off to-dos too.

Download

v0.1.1 · macOS 15+

Your agent calls Tabs's MCP tools. It adds to-dos to Today, links a pull request and ticks off what's done, and each change lands in the list while you watch. ⌘Z undoes it like any edit of your own.

This is my to-do app.

There are many like it, but this one is mine.

I wanted the calm of Things with one change: my AI agents use the list as much as I do. So Tabs runs its own MCP server. Claude reads my day, plans to-dos, links the pull request it just opened and ticks off what it finished, without AppleScript or URL-scheme workarounds.

What's in it

Everything below is in the current build. There's no iCloud sync and no iPhone app yet: your to-dos live on one Mac.

MCP server

Twelve tools for your agent

The server runs inside the app on 127.0.0.1, behind a token in your Keychain. Agents can read, add, plan, move and complete to-dos, but never delete one for good, and ⌘Z undoes their changes like your own.

GitHub

Pull requests, with their checks

When your agent links an issue or pull request to a to-do, a badge shows its state and CI. Turn on auto-complete and the to-do ticks itself off once its issues are closed and its PRs merged.

Quick Entry

Capture from any app

⌃Space opens Quick Entry over whatever you're doing. ⌃⌥Space fills it from the front app: the page and URL from Safari, Chrome, Arc, Brave or Edge, or the subject, sender and a link back to the message from Mail.

Lists

Things-style, on purpose

Inbox, Today, Upcoming, Anytime, Someday and Logbook. One click opens a to-do in place, Escape saves and closes it, and ticked items stay struck through until you leave the list.

Menu bar

Closed, not gone

Close the last window and Tabs moves to the menu bar, where the MCP server and the hotkeys keep running. With a window open, the Dock icon counts today's to-dos. Tabs can start at login too.

Local

On your Mac, nowhere else

No account, no sync, no analytics. Tabs only goes online to check GitHub, once you add a token, and to look for updates.

Connect your agent

Install Tabs in /Applications and keep it running, then add its MCP server to Claude Code.

Claude Code (CLI)
claude mcp add --transport http tabs http://127.0.0.1:4820/mcp --header "Authorization: Bearer <token>"

Settings › Agents has the same command with your own token filled in, and a Copy button. Any MCP client that speaks streamable HTTP can connect to http://127.0.0.1:4820/mcp with that token; the port is yours to change.

Changelog

Every release, newest first.

  1. 0.1.1

    Changed

    • New app icon: a stack of index cards whose tabs sit side by side, with the Today star on the front tab and a check on the card.
  2. 0.1.0

    Initial release

    • Things-style lists: Inbox, Today, Upcoming, Anytime, Someday, Logbook and Trash, with areas and projects to group your to-dos.
    • Plan a to-do for Today, a date, Anytime or Someday, and give it a deadline that turns red once it is overdue. Hover a row to reschedule it without opening it.
    • One click opens a to-do inline as a card with notes, tags, when and deadline. Notes render simple markdown: headings, bold, italic and links.
    • Ticked to-dos stay struck through until you leave the list; finished work moves to the Logbook.
    • Search across every list, including Logbook and Trash, drag to reorder, and duplicate with ⌘D. Undo covers every change, including the ones your agent makes.
    • Built-in MCP server on localhost with 12 tools, so AI agents such as Claude Code can read your lists and create, plan, complete and trash to-dos and projects. Token in the Keychain; agents cannot delete anything permanently.
    • Settings › Agents: server status, port, token and a one-click copy of the `claude mcp add` command.
    • Link GitHub issues and pull requests to a to-do and see their state and CI checks as a badge in the list. Optionally tick the to-do off once every issue is closed and every PR merged.
    • Quick Entry over any app with a global hotkey (⌃Space). ⌃⌥Space prefills it with the page from Safari, Chrome, Arc, Brave or Edge, or the subject, sender and a link back to the message from Mail.
    • Keeps running in the menu bar after you close the window, so agents, hotkeys and GitHub checks stay available. Dock badge with today's count, and launch at login.
    • tabs:/// links open a to-do from anywhere; drag to-dos onto a list to move them, or out to another app as title plus link.
    • Updates itself through Sparkle.