Record a Decision
record_decision is one of the 32 MCP tools in Weft, the AI task manager you run by talking to Claude, Cursor, Codex or ChatGPT through one MCP endpoint. One tool, two uses, one table of record. (1) Relay a verdict you gave in conversation about finished work waiting on you — approved, send it back, drop it, later — clearing the card from the review queue; the entry is stored as relayed rather than as you acting in the app, and that difference is kept visible on purpose. (2) Record a standalone decision worth remembering — 'chose Neon over Supabase', a lesson learned — as an immutable MADR-lite record with the options weighed and the condition to revisit under. Records are never edited: a new decision with supersedesId replaces an old one, and the old one stays readable as what it said the day it was made. These records are what get_context serves back to every agent next week.
Weft is the AI task manager for solo founders and small teams.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
| id | uuid | no | Verdict relay: task id the decision is about. |
| decision | 'accepted' | 'rework' | 'dropped' | 'deferred' | no | Verdict relay: what you said. |
| note | string | no | Your words — needed in substance for rework, since the executor acts on it. |
| title | string | no | Standalone record: the decision, named. Required with outcome. |
| outcome | string | no | Standalone record: the choice, stated as a sentence. |
| kind | 'madr' | 'lesson' | no | Defaults to 'madr'; 'lesson' for a lesson learned. |
| status | 'proposed' | 'accepted' | 'rejected' | 'deprecated' | no | Defaults to 'accepted'. |
| context | string | no | What was true that forced a choice. |
| options | { title, pros?, cons? }[] | no | The options actually weighed — not a retrofit. |
| consequences | string | no | What follows from the choice, good and bad. |
| confirmation | string | no | The condition under which to revisit this decision. |
| supersedesId | uuid | no | A prior decision this one replaces. The old record stays, marked superseded. |
| project | string | no | Project this decision belongs to — name or id. |
| taskId | uuid | no | A task a standalone decision is about, if any. |
Returns
The verdict path: the task with the decision recorded and the queue size after it. The record path: the immutable decision entry.
Annotations
Default write tool. The tool mutates state; MCP clients are free to call it once they know what the user wants.
Example
What the user says:
"We're going with Neon over Supabase — write that down with the reasoning."Related
- All 32 MCP tools — the catalog view.
- Shuttle — how the AI client uses these tools.
- Call this tool through your own client: see setup guides, or hit
https://letsweft.com/api/mcpdirectly.