What it does
Fast, frictionless capture: create a task from raw text. Understands natural-language cues — due dates (today/tomorrow/next friday/in 3 days/YYYY-MM-DD; prefix with "by" e.g. "by friday" to mark it a hard deadline, or "when:"/"due:" to pin a date the title would otherwise swallow), times of day ("at 3pm", "9:30am", "at 17:30"), priority (p1/p2/p3, or urgent/asap, low priority/whenever), @agent (also @claude/@chatgpt/@ai) to assign it to an AI agent, ~30m/2h/1d or "est: 45m" estimates, #project, and @tag for each existing tag — and strips them from the title. A cue that matches no project or tag is left in the title rather than creating one. Anything unmatched is left as plain text.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
text | string | Required | |
idempotency_key | string | Optional | Optional. One key per operation: pass the same key only when retrying this exact call, so a retry after a timeout replays the first result (a key already used on a different tool is refused, and keys expire after 48 hours) instead of creating a duplicate task. |
Annotations
The hints the server sends with this tool. A host reads them to decide whether to ask you before a call.
- Read-only
readOnlyHint: false - Changes data in your Done account.
- Destructive
destructiveHint: false - Only adds or reads; nothing already there is removed or overwritten.
- Idempotent
idempotentHint: false - Each call can add something new, such as a comment, a run or a task.
- Open world
openWorldHint: false - Touches only your own Done account.
Which tokens can call it
A connection made with OAuth has full access. A token from Settings → Agent access → Extra MCP tokens can be narrowed, and a narrowed token never sees beyond its project or workspace.
- Full accessAllowed
- Read-only tokenRefused
- Single-project tokenRefused
- Single-workspace tokenAllowed
Try it
With Done connected, ask your assistant something like:
“Add: call the dentist tomorrow at 3pm p1 #personal”
Connect Done to your assistant
One MCP endpoint per account, over OAuth or a token. Step-by-step setup for each client: