life

Your own AI, on your own weekly log

life speaks the Model Context Protocol, so Claude, ChatGPT, Cursor, VS Code or Gemini can read the weeks you've written, the goals you set and the map you're living them against — behind the Google sign-in you already use. There is no API key to paste, and therefore none to leak. Your model, your tokens, your bill.

Server https://life.rasoi.io/mcp

That is the whole configuration. No key, no header, no client id — life registers your client itself the first time it asks.

What it can read, and what it can write

You approve this on one screen, on life, when you connect. Reading is the default and every write is a box you tick yourself — and anything that deletes still describes what it is about to remove and waits for you to say yes, every time.

PermissionName
See your weekly log
The weeks you've written — how each one went, what you counted, and what you didn't get to.
life:weeks.readRead
See your goals
What you're working towards this year, how far along each one is, and the notes you've kept beside them.
life:goals.readRead
See your life map
The chapter you're in, the stages you've planned, and the things you've already done.
life:map.readRead
See how your account is set up
Your pillars, the habits a week records, your reflection prompts, and how much you've logged.
life:account.readRead
See your day
The block you're in, and anything from the calendars and task lists you've linked. It can never change them.
life:today.readRead
Write and edit your weeks
Record a week, tick a habit, correct one you already wrote. Deleting a week asks you first.
life:weeks.writeWrite
Add and change goals
Set a goal, move its number along, write a note beside it. Deleting asks you first.
life:goals.writeWrite
Change your life map
Start a chapter, plan a stage, record something you did. Deleting asks you first.
life:map.writeWrite
Change which year you're looking at
The year the app opens on, and nothing else. It cannot touch your pillars, your habits, your linked accounts or your reminders.
life:account.writeWrite
What no connection can do, at any permission:

Setting it up

Six clients, and the steps for all of them are on this page. Vendors move their connector menus about; if a step isn't where this says, check their own documentation.

Claude — web and desktop

Free, Pro, Max, Team and Enterprise accounts can all add one, though a free account is limited to a single connector. On a Team or Enterprise workspace an owner adds it once and everyone else presses Connect.

  1. In Settings → Connectors, choose Add custom connector. The button above goes straight to that screen.
  2. Paste the address. There is no key, no header and no client id to fill in — life registers your client itself.
  3. Press Connect. A browser window opens on life's ordinary Google sign-in. Use the account you use for the app.
  4. Approve what it may do. Reading your weekly log is already ticked; adding and changing things is not.
  5. Ask it something: “Read this year back to me — what kept happening?”

There is no add a connector screen on the phone, and that is fine: connections belong to your account rather than to a device, so one set up on a computer is already there when you pick your phone back up. Switch life on from the tools menu in the chat.

ChatGPT

Custom connectors are on Plus, Pro, Business, Enterprise and Edu, and they sit behind developer mode; on a managed workspace an admin has to allow them first. Which plans qualify, and whether a connector may do more than read, changes often — if the option isn't where this says, check OpenAI's own connector documentation.

  1. Open Settings → Apps → Advanced settings and switch on Developer mode.
  2. Open Settings → Connectors and choose Create.
  3. Name it life, and paste the address above as the MCP server URL.
  4. Connect, and approve in the browser window it opens.
  5. Switch life on for the conversation from the apps menu.

Cursor

  1. Press the button. Cursor opens on its MCP settings with life and this address already filled in — confirm to add it.
  2. Cursor then asks you to sign in to life. That opens a browser on the ordinary Google sign-in and the approval.
  3. By hand instead: Settings → MCP → Add custom MCP, and give it this:
    {
      "mcpServers": {
        "life": {
          "url": "https://life.rasoi.io/mcp"
        }
      }
    }

VS Code

Needs a recent VS Code, used in agent mode.

  1. Press the button. VS Code opens, asks you to confirm the server, and writes it into your user mcp.json.
  2. Start it when prompted. A browser opens for the Google sign-in and the approval.
  3. By hand instead, in mcp.json:
    {
      "servers": {
        "life": {
          "type": "http",
          "url": "https://life.rasoi.io/mcp"
        }
      }
    }

Claude Code

  1. Add the server:
    claude mcp add --transport http life https://life.rasoi.io/mcp
  2. Run /mcp and pick life to authenticate. A browser opens for the sign-in and the approval.
  3. Run /mcp again to check it took.

Gemini CLI

The Gemini CLI and Google's agent surfaces speak MCP. Support in the Gemini chat app is the least settled thing on this page — check Google's current documentation before assuming it works.

  1. Add the server:
    gemini mcp add --transport http life https://life.rasoi.io/mcp
  2. Start gemini and authenticate. It opens a browser for the sign-in and the approval.
    /mcp auth life
  3. Or write it into ~/.gemini/settings.json yourself:
    {
      "mcpServers": {
        "life": {
          "httpUrl": "https://life.rasoi.io/mcp"
        }
      }
    }

Taking it back

In life, Settings → AI connections. Every assistant you have connected is listed with what it may do and when it last did anything, and everything it has done is listed underneath — which action, on what, and whether it changed anything, with an Undo beside the ones that can be taken back. Disconnect ends it immediately: the tokens stop working on the next call rather than when they would have expired.

Nothing you write here trains anything, and an assistant connected this way reads what you can read and writes what you ticked, and nothing else.