SUUR Things: the Things 3 upgrade you stopped waiting for<br>SUUR Things · free & open source · macOS<br>Things 3,<br>meet your agent.<br>An MCP server + local dashboard that gives Claude safe hands on your to-dos, and gives you the views Things never shipped.<br>Get it on GitHubclaude mcp add suurthings -- uvx suur-things-mcpcopyRequires Things 3 on macOS . This is a companion for your existing Things database, not a replacement.<br>MIT · no cloud · no account · your data never leaves your Mac
127.0.0.1:8765 · local only
Why this exists<br>I love Things. Unreasonably.<br>I've run my whole life through Things for a decade: company, races, motorcycle trips, groceries. It's the most beautifully calm piece of software I own. Cultured Code polishes like nobody else on Earth.<br>They also ship major versions on a geological timescale.
2008<br>Things 1<br>iPhone launches. So does Things.
2012<br>Things 2<br>Four years later.
2017<br>Things 3<br>Five more. Worth it, honestly.
20??<br>Things 4<br>Any decade now.
Meanwhile it's 2026. I have an AI agent that writes half my code, and a to-do app that can't hear it. No boards, no time-blocking, no command palette, no natural-language input, and a rounding error of a chance any of it arrives before my next marathon cycle ends.<br>So I stopped waiting and built the update myself, from the outside. No hacks, no database surgery. Things stays exactly as Cultured Code made it. It just gets… more.
The one design decision<br>An agent physically cannot corrupt your database.
Reads<br>Straight from the local SQLite, read-only.<br>Today, Upcoming, Inbox, Logbook, full-text search, every project and tag, instant and complete, opened with mode=ro&immutable=1. The database is never opened writable. Not once, not anywhere.
Writes<br>Only through the official URL Scheme.<br>Every mutation is a things:/// URL, the exact mechanism Cultured Code documents for Shortcuts and AppleScript, and the path their own AI guidance endorses. The worst an agent can do is what Things itself allows.
Boards, priorities, and time-blocks live in a local overlay file, never written into Things. Delete the overlay and Things is exactly as you left it.
The agent side<br>Your to-do app finally<br>answers back.<br>~31 tools and a set of packaged workflows over MCP. Claude Code, Claude Desktop, Codex, anything that speaks MCP can read your lists, plan your day, and file the mess in your Inbox.
Morning, in Claude Code<br>> what should I work on today?<br>overviewget_today<br>Ten in Today, one genuinely overdue: the W-9 . It's a 2-minute send, just clear it.<br>Then the term-sheet redlines while you're fresh. You have the Maria 1:1 at 13:30 and the investor update after.<br>Swim is blocked at 6:30 tomorrow. Want me to push the groceries to Saturday? (y/n)
Things has no natural-language input. It doesn't need one.<br>> add: pick up race bib friday 4pm, tag errand<br>add_todo<br>Created in Ironman 70.3 Otepää . Friday, 16:00 reminder, #errand. ✓
> turn this launch plan into a Things project<br>plan_to_projectbatch<br>Project “Launch v2.0” created: 9 to-dos, sub-steps as checklists, deadline set. One batch call.
Inbox triage, sandboxed<br>The ✨ button spawns your agent headlessly with zero tools and no MCP, and it can only propose titles, tags, and homes. You review every change before it's written.
Sweep code TODOs<br>Point it at a repo: it greps TODO/FIXME and batch-creates to-dos with file:line references. Your codebase's guilt, now with due dates.
“What should I work on in this repo?”<br>Link a Things project to a git repo. From inside that repo, the agent resolves the project, pulls its open to-dos, and starts on the next one.
The dashboard<br>Looks like Things.<br>Does what Things won't.<br>uvx suur-things-mcp dashboard runs a local board at 127.0.0.1. Faithful to the app you love, with the views you've been faking in spreadsheets.
Plan<br>The Eisenhower matrix Things never had.<br>One click turns any list, project, or area into Do First / Schedule / Delegate / Don't Do. Drag tasks between quadrants. Your Things data stays untouched. The matrix is a local overlay.
127.0.0.1:8765 · local only
*:first-child]:order-2">Prioritize<br>P1–P4, powered by your own tags.<br>Map a tag to each level (🔴 is P1, ⚪️ is someday-ish) and every list becomes a ranked 2×2. Drag a task to a new level and the tag is rewritten in Things itself, through the official URL Scheme. Fully bidirectional.
127.0.0.1:8765 · local only
Time-block<br>Drag today onto an actual day.<br>A 6am–11pm timeline for Today. Swim at 6:30, deep work at 9, the 1:1 at 13:30, drag tasks into 15/30/60-minute blocks and see where the day actually goes. Times live in a private overlay; Things never knows.
127.0.0.1:8765 · local only
*:first-child]:order-2">Zoom out<br>A portfolio board where cards are whole projects.<br>Now / Next / Later / Done across the company and your life, each card a project with a progress ring. Link a project to a local git repo and the card grows a pulse: commits this week, open PRs, one-click open in editor, terminal, or GitHub.
127.0.0.1:8765 · local...