← Tous les outils MCP

Create task

create_task
Écriture

Ce qu’il fait

Create a task. Break work into subtasks via parent_id, or file a follow-up. Set assignee='claude' to add it to the AI agent queue. Optional: project_id, due_date (YYYY-MM-DD), due_time (local "HH:MM" on that date — a task with one is scheduled AT that time rather than fitted into a free slot), estimate_minutes, acceptance_criteria (what "done" means — the bar the result is checked against), description (long-form write-up, HTML), references (URLs/paths for context — a Google Doc, a repo file — fetch them yourself via whatever connectors you have; Done just stores the pointer), horizon. A task you create starts gated: close it with propose_completion (only a human can mark a task agent_ok). Not settable here, because they are the human's to grant: notes_for_agent (the human's one-way instructions — put your own context in notes or description) and budget_tool_calls/budget_minutes.

Paramètres

NomTypeObligatoireDescription
titlestringObligatoire
notesstringFacultatif
acceptance_criteriastringFacultatif

What "done" means for this task — the checkable bar the result is judged against, not instructions. Write it as conditions someone can verify ("tests pass on the branch tip", "page loads under 200ms"). Read it before you start and check your work against it before proposing completion.

descriptionstringFacultatif

Long-form write-up for the task, as HTML — this is what the rich-text editor reads and writes, so send HTML, not markdown. Send the tags raw — do not HTML-escape them (<p>x</p>, never &lt;p&gt;x&lt;/p&gt;), or the write-up renders as literal text. Supported: <h1>-<h3>, <p>, <strong>, <em>, <ul>/<ol>/<li>, <a>, <code>, <pre>, <blockquote>, <table>/<tr>/<th>/<td>, and checklists as <ul data-type="taskList"><li data-type="taskItem" data-checked="false">. Use notes instead for a short one-liner.

prioritystringFacultatif
Valeurs autoriséesurgentmediumlow
parent_idstringFacultatif
project_idstringFacultatif
goal_idstringFacultatif

File this task under a goal (North Star) as an action step toward it. Get ids from list_goals.

start_datestringFacultatif

YYYY-MM-DD. Optional: the day work is meant to begin. With due_date it is the task's span on the human's Gantt chart; nothing schedules or reminds off it.

due_datestringFacultatif

YYYY-MM-DD

due_timestringFacultatif

Optional local wall-clock time on due_date, 24-hour "HH:MM". A task with one is scheduled AT that time instead of being packed into a free slot.

due_hardbooleanFacultatif

true = hard deadline (must finish on/before due_date); false (default) = soft, a suggested date

waitingbooleanFacultatif

true = parked, waiting on someone else. A parked task stays on the board under "Waiting" but leaves the human's calendar feed, Plan my day and Today until its resurface_date arrives (or indefinitely, with none) — so it stops being time-blocked into every day while the ball is in someone else's court.

resurface_datestringFacultatif

YYYY-MM-DD. The day a parked (waiting) task comes back onto the human's calendar and into Today. Only meaningful alongside waiting=true.

assigneestring | nullFacultatif
Valeurs autoriséesclaudenull
agentstringFacultatif

Only on an account with an agent roster (list_agents): pins the task to a named agent. Must be your OWN lane — a task you create lands in your queue, never another agent's; use handoff_task to pass work on. Implies assignee=claude. Without it, an assignee=claude task you create is pinned to your lane anyway.

estimate_minutesnumberFacultatif

Task length in minutes

horizonstring | nullFacultatif
Valeurs autoriséestodaythis_weekthis_monthbacklogparking_lotnull
impactnumberFacultatif

1–5 rating of how much this moves the needle (feeds the Value/priority ranking)

valuenumberFacultatif

Optional payout/value of this task (dollars, points, etc.); boosts its priority ranking

referencesstring[]Facultatif

URLs/paths the agent should read for context

deliverablesobject[]Facultatif

Structured outputs you produced — {label, url, kind, content}. content is the document itself so a human can read and approve it without leaving Done; url is for something that genuinely lives elsewhere. kind says what the document is — markdown (the default), html, or pdf as base64. The output-side counterpart to references.

deliverables[].labelstringObligatoire
deliverables[].urlstring | nullFacultatif
deliverables[].kindstringFacultatif

What this deliverable holds. Omit for markdown, which is the default and the right answer for a draft, summary, report or plan. Use "html" only for a page you actually generated as HTML — it is rendered in a locked-down sandbox that cannot run scripts or reach the network, so a page that depends on either will look wrong. Use "pdf" with base64 in content for a small PDF, or with artifact_id for a large one. Use "binary" for anything else you uploaded — a screenshot, a spreadsheet, a zip — which is always an artifact_id and has no inline form.

Valeurs autoriséesmarkdownhtmlpdfbinary
deliverables[].contentstring | nullFacultatif

The document itself, so a human can read it without leaving Done. Markdown or HTML as text, capped at 10,000 characters each (40,000 across the task). A pdf goes here as base64, capped at 800,000 base64 characters (about 600 kB, and 1,200,000 across the task). Put anything larger behind a url rather than truncating it.

deliverables[].artifact_idstring | nullFacultatif

An artifact you uploaded, instead of inline content (the two are mutually exclusive). Upload first: call create_artifact_upload with {task_id, label, filename, kind, size_bytes}, then PUT the raw bytes to the one-time upload_url it returns — no Authorization header, the link itself is the credential, and it expires 15 minutes after you request it. Use the artifact_id it returned here. To revise the document later, call create_artifact_upload again with the SAME artifact_id — this pointer keeps working and starts resolving to the new file as soon as its bytes land. Done keeps only that latest file: the previous one is queued for deletion once the replacement is safely stored, so don't rely on being able to fetch an earlier upload back.

deliverables[].filenamestring | nullFacultatif

What the downloaded file should be called. Ignored for the text kinds, and sanitised before use — the extension comes from an allow-list, not from you.

idempotency_keystringFacultatif

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

Les indications que le serveur envoie avec cet outil. Un client les lit pour décider s’il doit vous demander avant un appel.

Lecture seulereadOnlyHint: false
Modifie des données de votre compte Done.
DestructifdestructiveHint: false
Ajoute ou lit seulement ; rien de ce qui existe n’est supprimé ni écrasé.
IdempotentidempotentHint: false
Chaque appel peut ajouter quelque chose de nouveau : un commentaire, une exécution, une tâche.
Monde ouvertopenWorldHint: false
Ne touche que votre propre compte Done.

Quels jetons peuvent l’appeler

Une connexion établie avec OAuth a un accès complet. Un jeton créé dans Réglages → Accès des agents → Jetons MCP supplémentaires peut être restreint, et un jeton restreint ne voit jamais au-delà de son projet ou de son espace de travail.

  • Accès completAutorisé
  • Jeton en lecture seuleRefusé
  • Jeton limité à un projetAutorisé
  • Jeton limité à un espace de travailAutorisé

Essayez

Une fois Done connecté, demandez à votre assistant quelque chose comme :

“Ajoutez une tâche urgente pour renouveler le nom de domaine d’ici vendredi, et assignez-la à Claude.”

Connectez Done à votre assistant

Un point d’accès MCP par compte, via OAuth ou un jeton. La configuration pas à pas pour chaque client :

Vue d’ensemble de la configuration MCP →