Walk into the call knowing what you promised.
I did the reading.
Two minutes before the call, ask the chat you already have open. Kai reads the last meeting, the thread, and the calendar, and tells you what actually matters.
Kai reads your calendar, the recap of your last meeting with them, and the thread.
I told you what I found. That's all I did.
Brief me before my next call: who is it, what did we agree last time, and what did I promise?
Kai sees who's next
It reads your calendar, finds the next call, and works out who is actually in the room.
Reads your schedule across every calendarlist_eventsKai reads the last meeting
The recap and the action items from the last time you spoke to them, not a summary of a summary.
Reads a meeting's recap and action itemsget_meeting_sessionsKai checks the thread
What has been said in writing since, so you don't walk in asking for something they already sent.
Searches your inboxes when you asksearch_emailsYou read it and walk in
Three sentences: who, what you agreed, what you owe them. Nothing was changed to get you them.
Kai reads what you point it at. It changes nothing.
I can look. I can't touch.
Kai is asking for
- Reads your schedule across every calendar
- Reads a meeting's recap and action items
- Searches your inboxes when you ask
It cannot do these. Not with a prompt, not by mistake.
- Never moves an event you did not ask it to move
- Never invites anyone you did not name
- Never records a meeting on its own
- Never shares a recap with anyone but you
- Never sends anything on its own
- Never files, archives, or deletes your mail
You approve Kai once, for your whole account. That single approval is what lets the other recipes move your calendar and brief you before calls. You can revoke it at any time.
Your AI apps on one side. Your whole day on the other.
I sit in the middle. You approve me once.
ClaudeAsk from Claude. Kai answers with your real day.
ChatGPTAsk from ChatGPT. Kai answers with your real day.
CursorAsk from Cursor. Kai answers with your real day.
- Any MCP appAsk from any app that can add an MCP server. Kai answers the same way.
- Both inboxesKai searches your Gmail and your Outlook in one go, and drafts in your voice.
- Every calendarWork and personal calendars, read together. One question covers both.
- Your meetingsThe recaps and action items from meetings Kai sat through. No connector has these.
- Your tasksKai writes dated tasks straight to your list. Nothing sent, nothing deleted.
You approve Kai once. Every app you ask from reaches everything Kai works with.
One URL. Pasted once. That's the whole setup.
It works in Claude, ChatGPT, Cursor, Claude Code, and any other app that reads MCP. No API key, no plugin, nothing to install. Free with your Kai account.
Kai needs your inbox, calendar and meetings connected first. That is what the connector reaches into.
Copy Kai's connector URL
https://api.morgen.so/mcp-kaiIn Claude, open Settings, then Connectors, then Add custom connector.
Paste the URL and click Connect. Leave the OAuth client ID and secret fields empty, Kai registers itself.
Approve it once on Kai's own screen. Sign in to Kai first if you aren't already.
In any chat, open the + menu, hover Connectors, and switch Kai on.
Copy Kai's connector URL
https://api.morgen.so/mcp-kaiAn admin allows custom connectors in Workspace settings, under Permissions and roles, then Connected data.
Switch on developer mode in your own Settings, under Apps, Advanced settings.
Go to Apps, then Create. Paste the URL, name it Kai, and choose OAuth.
Click Scan tools, sign in to Kai, then Create. On Enterprise and Edu, open Configure actions and tick the Kai tools you want, they arrive switched off.
In a chat, open the + menu, pick Developer mode, and select Kai. You do this per conversation.
Run this in your terminal
claude mcp add --scope user --transport http kai https://api.morgen.so/mcp-kaiStart Claude Code, type /mcp, pick kai, and choose Authenticate. From a plain shell, claude mcp login kai does the same thing.
Approve it once on Kai's own screen. Over SSH, add --no-browser to get a URL you can paste.
Check it with claude mcp list. You want kai, Connected.
Add this to ~/.cursor/mcp.json
{ "mcpServers": { "kai": { "url": "https://api.morgen.so/mcp-kai" } } }Open Customize in the Cursor sidebar, find the kai entry, and switch it on.
Approve it once on Kai's own screen. In the CLI the command is agent mcp login kai.
One Kai. Your Gmail, your Outlook, both calendars, every meeting.
Ask me to act, not just to read.
Knowing what you promised is the first half. The connection that read the meeting also reaches the inbox and the calendar, so the very next message can answer the thread you'd forgotten or move the call you're about to be late for.
You approve it once. After that, the work comes to the chat you were already in.
Getting briefed from your AI app, answered
The honest fine print.
No. This one only reads. It does not draft, send, move, or delete anything: it tells you what it found and stops.
From the meetings Kai has already sat through and summarised. If Kai was not in the meeting, there is nothing for it to recall, which is why the app has to come before the connector.
No. Kai only knows the meetings it captured for you. You decide which ones those are.
Kai says so plainly rather than inventing context. It will still tell you who they are and what the invite says.
In the Claude app, yes. You add the connector once on claude.ai and it shows up in the Claude iOS and Android apps. Tap the mic, say what you need, hit send.
Yes, at any time, from Kai. Access tokens are short lived, and the approval you gave can be pulled back in one click.

You walked into the call knowing what you owed them. That is the whole trick.
Save your spot