MCP einrichten
Jedes Konto bekommt einen eigenen MCP-Endpunkt, der nur auf die Aufgaben dieses Kontos zugreift. Es gibt kein gemeinsames oder globales Token.
1. Per OAuth verbinden (empfohlen)
Done ist für seinen MCP-Endpunkt ein vollwertiger OAuth-2.1-Autorisierungsserver. Clients, die OAuth sprechen – claude.ai, ChatGPT-Konnektoren und Claude Desktop –, verbinden sich deshalb selbst, ohne dass du ein Token kopieren musst. Füge Done als benutzerdefinierten Konnektor hinzu, nur mit der URL:
https://trydone.app/mcp- Geh zu Settings → Connectors → Add custom connector.
- Trag
https://trydone.app/mcpals URL des Remote-MCP-Servers ein und klick auf Add. - Klick auf Connect. Der Client findet die OAuth-Endpunkte von Done, registriert sich und schickt dich zu Done, wo du dich anmeldest und den Zugriff freigibst.
- Gib frei, und der Konnektor ist aktiv, beschränkt allein auf dein Konto.
2. Oder ein Bearer-Token verwenden
Für Clients, die von Hand (oder per Skript) eingerichtet werden, erzeugst du stattdessen ein Token. Öffne unten links in der Seitenleiste den Bereich Konto und erzeuge ein MCP-Token. Es wird nur einmal angezeigt, also kopier es an einen sicheren Ort. Du kannst ein Token mit Vollzugriff erstellen, ein Nur-Lese-Token oder eines, das auf ein einzelnes Projekt beschränkt ist. Richte dann einen Client auf den Endpunkt:
{
"mcpServers": {
"done": {
"url": "https://trydone.app/mcp",
"headers": { "Authorization": "Bearer <your-generated-mcp-token>" }
}
}
}Auf claude.ai kannst du dasselbe Authorization: Bearer <token> auch als Request-Header in den Advanced settings eines benutzerdefinierten Konnektors eintragen. So oder so sieht und bearbeitet ein Agent mit diesem Token immer nur das, worauf das Token beschränkt ist.
Einen persönlichen Agenten verbinden
Persönliche Agenten, die einen Remote-MCP-Server hinzufügen können, verbinden sich auf dieselbe Weise mit Done: Richte sie auf https://trydone.app/mcp und melde dich dann per OAuth an oder gib ihnen ein MCP-Token aus Schritt 2. Für einen Agenten, den du erst kennenlernst, ist ein Nur-Lese-Token oder ein Token für ein einzelnes Projekt ein guter Anfang.
Meta Muse
Muse fügt neue Tools als Custom Connectors hinzu, und du bittest im Chat darum. Sag Muse: „Create a custom connector for Done's MCP server at https://trydone.app/mcp.“ Wenn es nach Zugangsdaten fragt, gib dein MCP-Token über die sichere Abfrage für Zugangsdaten ein, nicht im Chat selbst.
Hermes Agent (Nous Research)
Trag Done in ~/.hermes/config.yaml ein. Führe dann hermes mcp login done aus, um den Zugriff in Done freizugeben, und hermes mcp test done, um zu prüfen, ob die Tools von Done aufgelistet werden:
mcp_servers:
done:
url: "https://trydone.app/mcp"
auth: oauthUm stattdessen ein Token zu verwenden, ersetze auth: oauth durch headers: { Authorization: "Bearer <your-mcp-token>" }.
OpenClaw (früher Clawdbot)
Füge Done als Streamable-HTTP-Server hinzu, melde dich an und teste dann die Verbindung:
openclaw mcp add done --url https://trydone.app/mcp --transport streamable-http
openclaw mcp login done
openclaw mcp doctor done --probeNutze die OAuth-Anmeldung statt eines festen Authorization-Headers: Manche OpenClaw-Versionen leiten eigene Header bei Streamable-HTTP-Servern nicht weiter.
Poke
Öffne in Poke Integrations → New, nenn die Integration Done, trag https://trydone.app/mcp als MCP Server URL ein, füge dein MCP-Token als API Key ein und klick auf Create Integration.
Instinct
Instinct veröffentlicht noch keine Einrichtungsschritte für externe Tools. Wenn dein Instinct eine eigene MCP-Verbindung hinzufügen kann, gib ihm die URL https://trydone.app/mcp und ein MCP-Token, gesendet als Authorization: Bearer <token>.
Jeder andere Agent, der einen Remote-MCP-Server hinzufügen kann, funktioniert ebenfalls: Nutze die OAuth-Schritte aus 1, wenn er OAuth unterstützt, oder andernfalls ein Token aus 2. In beiden Fällen erscheint er unter Einstellungen → Agentenzugriff, wo du ihm den Zugriff mit einem Klick entziehen kannst.
3. Tools, die dem Agenten zur Verfügung stehen
Der MCP-Server stellt Tools bereit, die an Arbeitsabläufen ausgerichtet sind, kein rohes CRUD:
list_my_tasksnext_tasklist_tasksget_taskclaim_task / release_taskdecline_taskhandoff_tasklist_agentspause_boardpause_taskcomment_on_taskcheck_criterionask_decisionlist_open_decisions / withdraw_decisioncheck_night_budgetdelete_commentcomplete_taskpropose_completionapprove_task / reject_taskpropose_planapprove_plan / reject_plancreate_task / update_task / delete_taskquick_capturedecompose_taskrender_planset_step_statusblock_task / unblock_taskstart_run / end_run / check_budgetfleet_statusrunner_heartbeatlist_triggers / claim_triggersearch_activitylist_routineschanges_sincelist_claude_shippedlist_stale_tasksget_evidencecreate_artifact_uploadpropose_capture / list_capture_inboxpropose_editpropose_brief_editpropose_grooming / list_grooming_proposalsget_autonomy_ledgerget_agent_rosterget_agent_economicsget_digest / get_weekly_review / get_statslist_projects / create_project / update_project / delete_projectlist_workspaceslist_goals / create_goal / update_goal / delete_goallist_tags / create_tag / delete_tag / tag_task / untag_tasklist_trash / restore_tasklist_connectionssearch_contextread_contextsave_contextlist_calendar_eventssuggest_event_matcheslink_task_to_event / unlink_task_from_eventPrompts & Ressourcen
Über die Tools hinaus ist der Server vollständig MCP-nativ: Er stellt auch Prompts und Ressourcen bereit. Ein Client kann damit fertige Arbeitsabläufe anbieten und Live-Daten als Kontext anhängen.
- prompts/list · einzeilige Vorlagen, die echten Arbeitsabläufen entsprechen, sodass ein Client sie als Slash-Befehle anbieten kann:
- plan_my_day – Entwirft aus meinen offenen Aufgaben einen realistischen, priorisierten Plan für heute.
- work_next – Übernimmt und bearbeitet die eine bereite Aufgabe mit der höchsten Priorität.
- daily_review – Fasst zusammen, was erledigt wurde, was überfällig ist und worauf es als Nächstes ankommt.
- groom_board – Findet offene Arbeit, die still eingeschlafen ist, und schlägt für jede vor, was damit geschehen soll. Schlägt nur vor.
- answer_backlog – Nimmt die Aufgaben wieder auf, deren zurückgestellte Fragen ich bereits beantwortet habe.
- prep_meetings – Ordnet die heutigen Kalendertermine den Aufgaben zu, um die es geht, und bereitet jeden vor.
- triage_task – Bewertet eine Aufgabe und plant sie oder benennt, was sie blockiert.
- resources/list · schreibgeschützte Ansichten, die ein Client anhängen kann: done://digest, done://queue und ein done://task/<id> pro offener Aufgabe. Eingeschränkte Tokens sehen immer nur ihr eigenes Projekt.
Ein typischer Agentenlauf
get_digest → list_open_decisions → next_task → get_task → arbeiten und dabei mit check_criterion jede Bedingung abhaken, sobald sie erfüllt ist → einmal comment_on_task mit dem Bericht → propose_completion. Du prüfst die Ergebnisse im Verlauf der Aufgabe und bleibst verantwortlich.
Fragen, ohne stehen zu bleiben
Ein Agent, der an eine echte Weggabelung kommt – Geld ausgeben, alles, was nach außen geht, alles, was sich nicht rückgängig machen lässt –, sollte nicht raten, aber auch nicht einfach warten. Er ruft ask_decision auf und macht weiter: Die Aufgabe fällt als needs_input aus seiner Warteschlange, du antwortest unter „Wartet auf dich“ oder direkt aus einer Slack-Direktnachricht, und die Aufgabe kehrt mit deiner Antwort in die Warteschlange zurück. Der nächste Lauf liest dann die Antwort, statt die Frage neu herzuleiten.
Jede Frage enthält die Empfehlung des Agenten und seine Begründung, sodass die Antwort meist ein Klick ist und keine Schreibarbeit. Eine Antwort ist keine Freigabe: Sie gibt die Aufgabe zurück und schließt nie etwas ab. Pro Aufgabe kann nur eine blockierende Frage offen sein. Das verhindert, dass aus dem Entscheidungseingang wieder der Kommentarverlauf wird, den er ersetzt hat.
Erst dadurch lohnt es sich, eine Nachtroutine laufen zu lassen. Ohne das beendet die erste Unklarheit um 3 Uhr nachts die ganze Nacht; damit wird nur diese eine Aufgabe zurückgestellt, und der Agent arbeitet den Rest weiter ab.
Nach Zeitplan ausführen
Done führt auf seinen eigenen Servern keinen Agenten aus. Damit deine Aufgaben unbeaufsichtigt bearbeitet werden, muss etwas Done aufrufen, etwa die Zeitplanung des MCP-Clients, den du ohnehin nutzt. Alle MCP-Clients verbinden sich auf dieselbe Weise; nur die Zeitplanung unterscheidet sich:
Claude – Routinen
Läuft nach Zeitplan in der Cloud von Anthropic, mit Done als Konnektor.
- Füge Done unter claude.ai/customize/connectors als Konnektor hinzu, mit der MCP-Server-URL https://trydone.app/mcp. Er muss in deinem claude.ai-Konto liegen. Eine Routine sieht keine MCP-Server, die du lokal in der CLI hinzugefügt hast.
- Öffne claude.ai/code/routines und klick auf „New routine“. Oder führe /schedule in der Claude-Code-CLI aus und beschreib in einfachen Worten, was du willst.
- Füge einen der Prompts von Done als Anweisung ein. Eine Routine läuft, ohne dass jemand zusieht, der Prompt muss also für sich allein funktionieren. Genau dafür sind die in der Ansicht „Prompts“ geschrieben.
- Gib ihr einen Zeitplan als Auslöser: stündlich, täglich, werktags oder wöchentlich. Eine Stunde ist der kürzeste erlaubte Abstand.
- Lass Done unter „Connectors“ aktiviert und entferne die, mit denen diese Routine nichts zu tun hat. Erstelle sie und klick dann einmal auf „Run now“, um den ersten Lauf von Anfang bis Ende zu beobachten.
Bevor du loslegst: Routinen brauchen einen kostenpflichtigen Claude-Tarif (Pro, Max, Team oder Enterprise), in dem Claude Code im Web aktiviert ist.
ChatGPT – Geplante Aufgaben
Eine zeitgesteuerte Aufgabe, die Done über einen eigenen Konnektor erreicht.
- Füge Done im Entwicklermodus als eigenen Konnektor hinzu, der auf https://trydone.app/mcp zeigt, und melde dich an, wenn du dazu aufgefordert wirst.
- Starte einen Chat, füge einen der Prompts von Done ein und bitte um einen Zeitplan, etwa „führe das jeden Werktag um 8 Uhr aus“.
- Was du angelegt hast, verwaltest du unter „Tasks“ in deinem Profilmenü. Aufgaben starten nur zeitgesteuert, höchstens etwa stündlich, und pausieren von selbst, wenn du sie lange genug ignorierst.
Bevor du loslegst: In ChatGPT Plus und Pro können eigene MCP-Konnektoren nur lesen. Ein Agent kann deine Warteschlange lesen, aber nichts übernehmen, kommentieren oder abschließen. Zum Zurückschreiben brauchst du ChatGPT Business, Enterprise oder Edu.
Alles andere – Dein eigener Zeitplaner
Ein beliebiger MCP-Client, gestartet von dem, was du ohnehin für zeitgesteuerte Abläufe nutzt.
- Richte den Client auf https://trydone.app/mcp aus und sende dein Token als Header Authorization: Bearer.
- Lass cron, einen CI-Zeitplan, einen Workflow-Runner oder was immer du für zeitgesteuerte Abläufe schon nutzt diesen Client starten, mit einem der Prompts von Done als Anweisung.
- Gib dem Lauf einen Ort für seinen Bericht. Jeder Prompt in der Bibliothek schreibt am Ende zurück in Done. Das Board ist also das Protokoll, und du musst nirgendwo sonst nachsehen.
Welchen Weg du auch wählst, das ist der Prompt, den du dem Agenten gibst (er ist auf Englisch; kopier ihn unverändert):
You are my Done task runner. Work my queue through the Done MCP connector only — never touch anything outside my Done account.
Each run:
1. Call list_open_decisions first, then get_digest and list_my_tasks, to see what's assigned to me (the AI agent) and ready. A task whose parked question I've since answered is the cheapest work on the board — the context is written down and the blocker just cleared — so start there.
2. For each ready task, decide what to do:
- in_progress with plan_approved_at set → its plan is approved, so DO THE WORK now. Read it with get_task (notes_for_agent, acceptance_criteria, description, references), carry it out, and when it's finished call propose_completion with a summary — or complete_task if the task is agent_ok.
- not_started and small or agent_ok → just do it, then complete_task (agent_ok) or propose_completion.
- not_started and substantial or ambiguous (multi-step, judgment calls, anything I'd want to sign off on the approach for) → do NOT start it. Call propose_plan with a short plan of how you intend to tackle it, then move on. It waits for my approval and comes back to you once I approve it in Needs you.
3. Report progress by ticking the acceptance criteria with check_criterion as you actually meet each one — not by narrating into comments. Post at most ONE dense comment_on_task per task per run: what you did, what you found, what's left. A running commentary is noise.
4. Hit a real fork — spending money, anything outward-facing (an email, a post, a reply to a customer), anything irreversible — and call ask_decision with your own recommendation, then MOVE ON to the next task. Don't guess, and don't sit there waiting. If you later work the answer out yourself, withdraw_decision rather than leaving a stale question in my queue.
5. If a task was assigned to me but shouldn't be — it needs my accounts, my signature, or my judgment — hand it back with decline_task and a one-line reason. Declining is a valid outcome.
6. Respect the gates: never force a non-agent_ok task to done, and never act on a task that isn't assigned to me.
7. For any task that has sub-steps (a plan) — one you decomposed, or that already had subtasks — call render_plan on it so I get the laid-out plan with progress and an "Open in Done" link.
8. If nothing is ready, stop — don't invent work.
If you're running unattended overnight, wrap the run: call start_run at the top and check_night_budget before picking up each task, so you stop at the caps I set in Settings → Where agents run, and call end_run when you finish.
End with a one-line summary: plans proposed, tasks worked, tasks completed, questions parked.Bei jedem Lauf schlägt der Agent für jede umfangreiche Aufgabe einen Plan vor und wartet, und er führt alles aus, was du seit dem letzten Mal unter Wartet auf dich freigegeben hast. Du gibst frei, der Agent erledigt die Arbeit, und du musst nie einen Lauf von Hand anstoßen. Dieselbe Einrichtung ist im Bereich Konto nur einen Klick entfernt („Lass einen KI-Agenten deine Warteschlange abarbeiten“).
Hinweise
- Verbinde dich per OAuth (Clients, die
/.well-known/oauth-authorization-servererkennen) oder mit einem langlebigen Bearer-Token pro Konto, das in der App erzeugt wird. Beides funktioniert mit demselben Endpunkt. - Jedes Token und jede Berechtigung ist auf ein einzelnes Konto beschränkt; kontoübergreifende oder globale Tokens gibt es nicht. Bearer-Tokens lassen sich zusätzlich auf Nur-Lesen oder ein einzelnes Projekt einschränken.
- Wird ein Token neu erzeugt oder widerrufen, ist es sofort ungültig.
- Der Free-Tarif enthält 100 Agenten-Aufrufe (MCP) pro Monat; Pro und Teams sind unbegrenzt. Mehr dazu unter Preise.