MCP-Tools: List Items
Aufgaben („Items") leben in Listen. Zuweisungen stehen in refs ({type:'user',id}) und werden als assignees zurückgegeben.
list_list_items
Items filtern. read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
listId | string | – | Nach Liste filtern |
parent | string | – | Nur die direkten Unterpunkte dieses Items. Mit state=open ergibt das die offenen Teilaufgaben einer Aufgabe |
descendants | boolean | false | Zu parent: den ganzen Teilbaum statt nur die direkten Kinder. Jedes Item trägt dann sein eigenes parent mit |
state | enum open | done | all | all | open = nicht erledigt (Status nicht done/completed) |
status | string | – | Exakter Status (z. B. todo). Für „nicht fertig" lieber state |
priority | number (1–9) | – | Nach Priorität |
assigned_to | string | – | Nach zugewiesenem User (refs, type=user) |
assigned_to_me | boolean | – | Nur mir zugewiesene (kein get_me nötig) |
tag | string | – | Exakter Tag |
search | string | – | Suche in Text und Beschreibung |
due_within_days | number | – | Fällig in N Tagen (inkl. überfällig) |
due_before | string (ISO) | – | Fällig vor Datum |
includeArchived | boolean | false | Archivierte einschließen |
sort | enum default | priority | due_date | created | modified | default | Sortierung |
compact | boolean | false | Nur Kernfelder + assignees |
limit | number | 50 | Anzahl |
offset | number | 0 | Überspringen |
Antwort: { items, total, limit, offset, has_more }.
get_list_item
Ein Item. read · follower
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
get_item_dashboard
Dashboard-Seite einer Aufgabe: Anforderungen, Gliederung, Notizen aus dem Reiter „Dashboard". read · follower
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID der Aufgabe |
get_list_item enthält die Seite nicht: sie hängt als Box über anchor/layer an der Aufgabe und ist aus dem Aufgabenbaum ausgeblendet. Die Antwort liefert dashboard.markdown (die Gliederung) und dashboard.blocks (je Zeile id, type, depth, number, text). Die Nummern entsprechen der Oberfläche („1", „1.3.1"): gezählt werden nur aufeinanderfolgende nummerierte Zeilen, eine nummerierte Zeile gibt ihre Nummer an ihre Unterpunkte weiter. Ohne Dashboard oder bei leerer Seite ist dashboard null, mit Hinweis in note.
create_list_item
Neues Item. write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
listId | string (erforderlich) | UUID oder SID der Liste |
text | string (erforderlich) | Titel (min. 1 Zeichen) |
description | string | Beschreibung |
status | string | Status |
priority | number (1–9) | Priorität (9 = urgent) |
assigned_to | string[] | Zugewiesene User-IDs |
tags | string[] | Tags |
target_date | string (ISO) | Fälligkeitsdatum |
parent | string | Übergeordnetes Item. Ohne parent landet das Item in der Projekt-Inbox — der Zone für Arbeit, die noch niemand in die Projekt-Struktur einsortiert hat. Das ist der ehrliche Standard, wenn der Platz unklar ist; ist er klar, parent setzen. anchor/layer-Items (Boxen der rechten Spalte) gehen nie in die Inbox. |
type | string | Typ (frei wählbar, z. B. Box-Typ-Key für Info-Spalten-Boxen) |
anchor | string | Item, an das dieses Item andockt (Info-/Detail-Spalten-Mechanismus). Zusammen mit parent setzen, wenn das Item auch strukturell ein Kind dieses Items sein soll — anchor steuert nur die Anzeige-Ebene, parent bleibt die Quelle der Wahrheit für den Gesamt-Baum. |
layer | number ≥ 0 | Anzeige-Ebene für den anchor-Mechanismus (0 = Hauptliste). Nur zusammen mit anchor relevant. |
content | object | array | string | Strukturierter Inhalt (z. B. Box-Typ-spezifische Daten). Objekte/Arrays werden als JSON gespeichert. |
update_list_item
Item ändern. write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
text, description, status | string | neue Werte |
priority | number (1–9) | neue Priorität |
assigned_to | string[] | neue Zuweisungen |
tags | string[] | neue Tags |
target_date | string | null | neues Datum |
progress | number (0–100) | Fortschritt |
archived | boolean | archivieren |
type | string | neuer Typ |
anchor | string | null | neues Anker-Item (oder null zum Entfernen) |
layer | number | null | neue Anzeige-Ebene (oder null zum Entfernen) |
content | object | array | string | neuer strukturierter Inhalt |
expectedVersion | integer | Optimistic Lock |
assign_list_item
Personen einem Item hinzufügen oder entfernen. write · user
Das inkrementelle Gegenstück zu update_list_item({assigned_to}), das die gesamte Liste ersetzt — hier bleiben die übrigen Zuweisungen unangetastet.
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
userIds | string[] | User-IDs. Weglassen = der aufrufende User („mir zuweisen") |
unassign | boolean | true = die genannten User entfernen statt hinzufügen |
split_task
Nebenthemen der laufenden Arbeit in eigene Aufgaben auslagern.
write · user| Parameter | Typ | Beschreibung |
|---|---|---|
sourceItemId | string (erforderlich) | Ursprungs-Item (UUID oder SID) |
tasks | object[] (erforderlich) | Je Eintrag: text (erforderlich), description, status, priority (1–9), assigned_to[], target_date |
mode | enum child | sibling | child (Default) = Unteraufgaben des Ursprungs, sibling = gleiche Ebene |
listId | string | Ziel-Liste. Default = Liste des Ursprungs-Items |
Neue Items erben die Sichtbarkeit (scope) des Ursprungs und werden per refs auf ihn zurückverlinkt. Bei einer anderen Ziel-Liste entstehen sie dort als Top-Level-Items (ein Item kann kein Kind eines Items in einer anderen Liste sein) — mode wird dann ignoriert.
Erst bestätigen
Die vorgeschlagene Aufteilung vor dem Aufruf mit dem Nutzer abstimmen.
attach_file_to_list_item
Datei hochladen und an ein Item hängen — z. B. eine vom Agenten erzeugte Markdown-Zusammenfassung oder ein PDF. write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
filename | string (erforderlich) | Dateiname inkl. Endung, z. B. summary.md |
content_text | string | UTF-8-Inhalt (für .md/.txt/.json …) |
content_base64 | string | Base64-Bytes (für PDF/Bilder) |
mime | string | MIME-Typ; ohne Angabe aus der Endung abgeleitet |
target | enum files_box | subitem | item | files_box (Default) = Datei-Box in der rechten Spalte (wird angelegt, falls nicht vorhanden); subitem = als Unteraufgabe; item = Referenz direkt am Item |
Entweder content_text oder content_base64 — nicht beides.
TIP
subitem nur, wenn ausdrücklich danach gefragt wurde: eine Unteraufgabe ist ein Stück Arbeit, kein Ablageort.
complete_list_item
Als erledigt markieren (Status done, Progress 100). write · user
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
itemId | string (erforderlich) | – | UUID oder SID |
reopen | boolean | false | Wieder öffnen (Status open, Progress 0) |
expectedVersion | integer | – | Optimistic Lock |
complete_list_items
Mehrere abhaken/öffnen (Bulk). write · user
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
itemIds | string[] (erforderlich) | – | UUIDs/SIDs (min. 1) |
reopen | boolean | false | Wieder öffnen statt abhaken |
Antwort: { succeeded, failed, results[] } (Per-Item-Ergebnis).
update_list_items
Gleiche Feld-Updates auf mehrere Items (Bulk). write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
itemIds | string[] (erforderlich) | UUIDs/SIDs (min. 1) |
status | string | für alle |
priority | number (1–9) | für alle |
assigned_to | string[] | für alle |
tags | string[] | für alle |
target_date | string | null | für alle |
progress | number (0–100) | für alle |
archived | boolean | für alle |
delete_list_item
In den Papierkorb. destructive · admin
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
expectedVersion | integer | Optimistic Lock |
get_overdue_list_items
Überfällige Items. read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
listId | string | – | Nach Liste |
compact | boolean | false | Kernfelder + days_overdue |
limit | number | 50 | Anzahl |
get_my_open_items
Meine offenen Aufgaben (überfällig → fällig → Priorität). read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
listId | string | – | Auf eine Liste beschränken |
includeUndated | boolean | true | Auch Items ohne Datum |
compact | boolean | false | Kernfelder |
limit | number | 50 | Anzahl |
list_recent_changes
Kürzlich geänderte Items (Sync/Polling). read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
since | string (ISO) | – | Nur ab diesem Zeitpunkt geändert |
listId | string | – | Auf eine Liste beschränken |
compact | boolean | false | Kernfelder + modified |
limit | number | 50 | Anzahl |
search_list_items
Volltextsuche über Items. read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
query | string (erforderlich) | – | Suchbegriff (min. 1 Zeichen) |
compact | boolean | false | Kernfelder |
limit | number | 20 | Anzahl |
post_chat_message
Nachricht in den Chat eines Items (oder einer Liste). write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string | Ziel-Item (UUID/SID) |
listId | string | Ziel-Liste (Alternative zu itemId) |
text | string (erforderlich) | Nachrichtentext |
post_activity_summary
Ein Abschluss-Fazit in den Aktivität-Feed des Items schreiben — ohne den Team-Chat zu stören. write · user
| Parameter | Typ | Beschreibung |
|---|---|---|
itemId | string (erforderlich) | UUID oder SID |
summary | string (erforderlich) | Was getan wurde, in ein paar Sätzen |
Pro Item und Autor gibt es genau einen Eintrag: ein späterer Lauf überschreibt sein eigenes Fazit. Gelesen wird das über get_item_ai_summaries. Bei einer privaten Konversation wird nichts geschrieben.
get_chat_messages
Chat-Verlauf lesen (älteste zuerst). read · follower
| Parameter | Typ | Default | Beschreibung |
|---|---|---|---|
itemId | string | – | Item-Chat |
listId | string | – | Listen-Chat (Alternative) |
limit | number | 50 | Max. Nachrichten |
offset | number | 0 | Überspringen |
get_metadata
Referenz: gültige Status/Priorität/scope/Filter-Werte. read · guest
Keine Parameter. Vor dem Anlegen/Ändern aufrufen, um korrekte Werte zu nutzen.