Totask plugs into Claude, Codex, Cursor, and every other MCP-aware client. Add, schedule, and finish work right from chat — one structured inbox across every tool you already use.
This is the web review surface, mocked with real interactions. Approve sends the task into your active list. Reject drops it, no record kept. The gate is never bypassed.
Your AI client reads your inboxes with its own connectors. Totask holds the structured place where its proposals live until you approve, reject, or reprioritize them.
The AI reads gmail, slack, linear, calendar through its own MCP
connectors. When it spots an actionable signal, it calls propose_tasks on totask.
The proposal lives in totask, preserved verbatim, with source references and detected priority. Nothing has changed in your world yet.
Approve and it enters your active list. Approved tasks can be scheduled to Google Calendar with one more approval. The gate is never bypassed.
The wire schema is the product. Your AI client renders proposals as inline approve / reject / reprioritize interactions — the schema travels with you when you switch from Claude to Codex to Gemini.
Totask itself stores objective task facts and AI-set deterministic values. It does not reason at request time. The AI client does.
// Your AI client, via MCP, when it spots a task. { "tool": "propose_tasks", "tasks": [ { "title": "Review Q3 forecast deck", "source": { "kind": "gmail", "ref": "msg_8H9a..." }, "due": "2026-05-14", "priority" : 1, "participants": ["mark@acme.com"] } ] } // → returns a proposal_id, awaiting human approval.
The architectural bet is that AI should be the operator and the human should be the gate — not the other way around. Most of what totask does well is what it deliberately does not do.
totask lives inside the AI of your choice. No new app, no new place to check, no chat window to keep open.
Totask has no AI capability of its own. No inference, no classification, no generation. The schema is the surface; the AI client is the brain.
Totask does not connect to gmail, slack, or linear. Your AI client already does. Google Calendar write is the one deliberate exception.
If you maintain a manual list and love it, you don't need totask. This is for people who've tried that and watched it collapse.
The product's principles are the contract. If a future feature can only ship by breaking one of these, the feature doesn't ship.
Every state change goes through an explicit human approval. The gate is never bypassed, even for trivial cases.
The wire schema travels with you. Your AI client renders the UI; we don't lock you to one chat.
Totask has no inference of its own. Whatever AI you pay for is the AI you operate with.
Proposals are stored exactly as the AI sent them, with source refs. No mutation, no enrichment behind your back.
No badges nagging you. No push notifications. The web is for review only — open when you want to triage.
Exportable JSON, account delete actually deletes, Apache 2.0, self-hostable. No lock-in by design.
Manual lists collapse when you fall behind. Chat is great for proposals but terrible for state. Totask is the slim layer between them.
Cheap enough to install without thinking, expensive enough to tell you we intend to keep the lights on. Apache 2.0, self-hostable. Your data is yours, exportable any time.
Hosted MCP server, web review inbox, calendar integration, account.
The AI itself. You bring your own client and your own API quota.
Add totask to your AI client of choice. The first time it spots an actionable signal in your inbox, you'll see a proposal show up in chat, waiting at the gate.
claude mcp add totask
https://mcp.totask.ai/mcp
--transport http