Documents · Subscriptions · Contracts · Other

The date that matters is not the expiry date.

A broadband contract ending 12 March with 30 days' notice has to be cancelled by 10 February. Reminded does that subtraction for every record you add, then reminds you against the date you can still act on — not the one printed on the paperwork.

Email reminders at 90, 30, 7 and 1 days by default. Keep a scan of the document beside its dates. Export everything as CSV or JSON whenever you like. Or ask Claude or ChatGPT what is due — the app connects to both.

ACT BY 10 Feb EXPIRES 12 Mar Today 30 days' notice
The notice period moves the real deadline a month earlier. Reminded sorts, counts down and emails against 10 February.

How it works

Three steps, one idea. Everything else in the app is a consequence of it.

  1. Add the expiry date and the notice period

    One form covers documents, subscriptions, contracts and everything else — the fields that do not apply to what you are adding stay hidden. A passport needs a date and nothing else.

  2. Reminded subtracts one from the other

    Ordering, days remaining and every reminder are measured against the result, so a contract with a month's notice outranks a passport expiring on the same day.

    action_by = expiry_date - notice_period_days

  3. One email, at your hour, in your timezone

    90, 30, 7 and 1 days ahead by default; change that globally or for a single record. Everything due arrives as one grouped digest rather than four separate emails.

Model Context Protocol

Or just ask Claude and ChatGPT

Reminded runs an MCP server, so the assistant you already talk to can read your renewals and add new ones — in the conversation where the renewal actually came up.

You What have I got coming up in the next month?

Assistant

Two things, and one of them is tighter than it looks:

  • Broadband — act by 10 Feb (expires 12 Mar, 30 days' notice)
  • Passport — act by 22 Feb (no notice period)

The broadband is the one to move on — miss 10 February and it re-contracts for another year.

You Add my car insurance too — Aviva, £42.10 a month, renews 14 June, 30 days' notice.

Assistant Tracking it. Your deadline is 15 May, and you'll be emailed before then.

Six tools: list, read, summarise costs, create, update, archive. The notice-period subtraction is done by Reminded, not guessed by the model.

Connect it once

mcp.getreminded.app/mcp

In Claude Code that is a single claude mcp add; in Claude and ChatGPT it goes in as a custom connector, where your plan offers them. Anything else that speaks MCP over HTTP works from the same URL — Cursor, VS Code, Zed and the rest.

Sign in, don't paste a key

The client registers itself and opens a browser for you to approve it — OAuth 2.1 with PKCE. There is no API key to copy, and no token that reaches anyone else's records.

  • Read-only unless you grant writing as well.
  • No tool can delete anything — archive is as far as it goes.
  • Nothing is cancelled on your behalf. Reminded tells you in time; the act is still yours.
  • Disconnect any assistant from Settings, effective immediately.

Four kinds of thing, one list

They differ only in which fields matter, so they live in one place and one ordering.

Documents

Passports, driving licences, visas, the MOT. No notice period and no cost fields — just the expiry date.

Subscriptions

The annual renewals that go through before you remember them. Auto-renewing records roll forward to their next cycle overnight instead of going stale and stopping.

Contracts

Broadband, insurance, mobile, the gym. This is where the notice period earns its keep: 30 days' notice moves your deadline a month earlier than the end date.

Other

Bonus miles, warranties, trials, gift cards — anything with a date that does not fit the other three. Same reminder engine, same action-by logic.

See what the renewals actually cost

Monthly and annual totals across everything you track, held in integer pence so the figures cannot drift by a penny the way floating-point money does.

GBP, USD and EUR are subtotalled separately and never added together at a guessed exchange rate.

Expired records are archived rather than deleted, so last year's spending stays where you can see it.

  • Recurring spend (GBP) £64.99 /month £779.88 a year
  • Recurring spend (USD) $11.00 /month $132.00 a year — kept apart, not converted

Built for data you would not want leaked

Tracking your documents means holding dates — and optionally scans. That shaped the design rather than being bolted on afterwards.

  • Isolation is enforced by the database, not by app code

    Every read and write is scoped to the signed-in owner by the database's own API rules, so there is no endpoint that could forget to filter by owner.

  • The app itself is not indexable

    The app and database hostnames answer with X-Robots-Tag: noindex. This page is the only part of Reminded meant to turn up in a search engine.

  • Backups are encrypted, and refuse to run otherwise

    Backups are age-encrypted and the script stops rather than quietly writing a plaintext copy of your documents. The data directory is chmod 700.

  • Export or delete whenever you like

    Download CSV or JSON from Settings, or delete your account and all records in one step. See the privacy policy for details.

Questions

What is an action-by date?
The expiry date minus the notice period. A contract ending 12 March with 30 days' notice has an action-by date of 10 February, and that is the date Reminded sorts, counts down and emails against. A passport has no notice period, so its two dates are the same.
What can I track?
Documents such as passports, driving licences and the MOT; subscriptions; contracts like broadband, insurance and mobile; and anything else with an expiry date — bonus miles, warranties, trials, gift cards.
When do the reminders arrive?
90, 30, 7 and 1 days before the action-by date by default. You can change those offsets for your whole account or for a single record.
Can I use it with Claude or ChatGPT?
Yes. Reminded runs a Model Context Protocol server at mcp.getreminded.app/mcp, so any assistant that speaks MCP over HTTP — Claude, ChatGPT, Cursor, VS Code, Zed — can read your records and add new ones once you connect it. You approve the connection in a browser, it starts read-only, no tool can delete anything, and you can disconnect it from Settings at any time.
Does it add up different currencies?
No. GBP, USD and EUR are subtotalled separately.
What happens to a record once it expires?
It is archived, not deleted. Expired records are your cost history, and an auto-renewing one rolls forward to its next cycle overnight instead of going stale.
Can I delete my account?
Yes. Settings → Delete account removes your user, records and reminder history. Export first if you want a copy.

Start with the one you nearly missed last time

Add a single contract with its notice period and the app will tell you, immediately, how long you actually have.

You confirm your email address before signing in for the first time.