Configuração do MCP
Cada conta tem seu próprio endpoint MCP, restrito às tarefas daquela conta. Não existe token compartilhado nem global.
1. Conecte por OAuth (recomendado)
O Done é um servidor de autorização OAuth 2.1 completo para o seu endpoint MCP. Por isso os clientes que falam OAuth — claude.ai, os conectores do ChatGPT e o Claude Desktop — se conectam sozinhos, sem nenhum token para copiar. Adicione o Done como conector personalizado só com a URL:
https://trydone.app/mcp- Vá em Settings → Connectors → Add custom connector.
- Use
https://trydone.app/mcpcomo URL do servidor MCP remoto e clique em Add. - Clique em Connect. O cliente descobre os endpoints OAuth do Done, se registra e leva você ao Done para entrar e aprovar o acesso.
- Aprove, e o conector passa a funcionar, com escopo restrito à sua conta.
2. Ou use um token bearer
Para clientes configurados à mão (ou por um script), gere um token. Abra o painel Conta, no canto inferior esquerdo da barra lateral, e gere um token MCP. Ele é mostrado uma única vez, então copie para um lugar seguro. Você pode criar um token de acesso total, um somente leitura ou um restrito a um único projeto. Depois aponte um cliente para o endpoint:
{
"mcpServers": {
"done": {
"url": "https://trydone.app/mcp",
"headers": { "Authorization": "Bearer <seu-token-mcp-gerado>" }
}
}
}No claude.ai você também pode colar esse mesmo Authorization: Bearer <token> como cabeçalho de solicitação em Advanced settings de um conector personalizado. Nos dois casos, um agente que usa o token só vê e edita aquilo que o escopo do token permite.
Conecte um agente pessoal
Agentes pessoais que conseguem adicionar um servidor MCP remoto se conectam ao Done do mesmo jeito: aponte o agente para https://trydone.app/mcp e depois entre com OAuth ou entregue a ele um token MCP do passo 2. Um token somente leitura ou restrito a um projeto é um bom começo para um agente que você ainda está conhecendo.
Meta Muse
O Muse adiciona ferramentas novas como conectores personalizados, e você pede um pelo chat. Diga ao Muse: “Crie um conector personalizado para o servidor MCP do Done em https://trydone.app/mcp.” Quando ele pedir credenciais, informe o seu token MCP pelo prompt seguro de credenciais, não no chat em si.
Hermes Agent (Nous Research)
Adicione o Done a ~/.hermes/config.yaml, depois execute hermes mcp login done para aprovar o acesso no Done e hermes mcp test done para conferir se ele lista as ferramentas do Done:
mcp_servers:
done:
url: "https://trydone.app/mcp"
auth: oauthPara usar um token, troque auth: oauth por headers: { Authorization: "Bearer <seu-token-mcp>" }.
OpenClaw (antes Clawdbot)
Adicione o Done como servidor streamable-HTTP, entre e faça o teste:
openclaw mcp add done --url https://trydone.app/mcp --transport streamable-http
openclaw mcp login done
openclaw mcp doctor done --probeUse o login com OAuth em vez de um cabeçalho Authorization fixo: algumas versões do OpenClaw não encaminham cabeçalhos personalizados em servidores streamable-HTTP.
Poke
No Poke, abra Integrations → New, dê o nome Done, use https://trydone.app/mcp como MCP Server URL, cole o seu token MCP como API Key e clique em Create Integration.
Instinct
O Instinct ainda não publica um passo a passo para conectar ferramentas externas. Se o seu consegue adicionar uma conexão MCP personalizada, informe a URL https://trydone.app/mcp e um token MCP, enviado como Authorization: Bearer <token>.
Qualquer outro agente que consiga adicionar um servidor MCP remoto também funciona: use os passos de OAuth do item 1 se ele tiver suporte a OAuth, ou um token do item 2 se não tiver. Nos dois casos ele aparece em Configurações → Acesso de agentes, onde você pode revogá-lo com um clique.
3. Ferramentas disponíveis para o agente
O servidor MCP expõe ferramentas pensadas para fluxos de trabalho, não um CRUD cru:
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 e recursos
Além das ferramentas, o servidor é totalmente nativo de MCP: ele também expõe prompts e recursos, para que um cliente possa oferecer fluxos de trabalho prontos e anexar dados ao vivo como contexto.
- prompts/list · modelos de uma linha que correspondem a fluxos de trabalho reais, para que um cliente possa mostrá-los como comandos de barra:
- plan_my_day — Monta um plano realista e priorizado para hoje a partir das minhas tarefas abertas.
- work_next — Assume a tarefa pronta de maior prioridade e trabalha nela.
- daily_review — Resume o que foi concluído, o que está atrasado e no que focar em seguida.
- groom_board — Encontra o trabalho aberto que morreu em silêncio e propõe o que fazer com cada item. Só propõe.
- answer_backlog — Retoma as tarefas cujas perguntas pendentes eu já respondi.
- prep_meetings — Relaciona os eventos de calendário de hoje às tarefas de que eles tratam e prepara cada um.
- triage_task — Avalia uma tarefa e a planeja ou aponta o que a está bloqueando.
- resources/list · visões somente leitura que um cliente pode anexar: done://digest, done://queue e um done://task/<id> para cada tarefa aberta. Tokens com escopo só veem o próprio projeto.
Uma execução típica de um agente
get_digest → list_open_decisions → next_task → get_task → trabalho, marcando check_criterion conforme cada condição é cumprida → comment_on_task uma vez com o relato → propose_completion. Você revisa os resultados na conversa da tarefa e continua sendo o responsável final.
Perguntar sem travar
Um agente que chega a uma decisão de verdade — gastar dinheiro, qualquer coisa voltada para fora, qualquer coisa irreversível — não deve chutar, mas também não deve ficar parado. Ele chama ask_decision e segue em frente: a tarefa sai da fila dele como needs_input, você responde em Precisa de você ou direto por uma mensagem direta no Slack, e a tarefa volta para a fila com a sua resposta anexada. Assim a próxima execução lê a resposta, em vez de chegar de novo à mesma pergunta.
Toda pergunta traz a recomendação do próprio agente e o raciocínio por trás dela, então responder costuma ser um clique, não um trabalho de redação. Responder não é aprovar: devolve a tarefa ao agente e nunca fecha nada. Só pode haver uma pergunta bloqueante aberta por tarefa, o que impede que uma caixa de decisões vire o feed de comentários que ela substituiu.
É isso que faz valer a pena deixar uma rotina noturna rodando. Sem isso, a primeira ambiguidade às 3h da manhã para a noite inteira; com isso, aquela tarefa fica em espera e o agente continua trabalhando no resto.
Execute com agendamento
O Done não roda nenhum agente nos próprios servidores. Para que suas tarefas sejam trabalhadas sem supervisão, alguma coisa precisa chamá-lo, como o agendador do cliente MCP que você já usa. Todos os clientes MCP se conectam do mesmo jeito; só o agendamento muda:
Claude — Rotinas
Roda na nuvem da Anthropic em horários programados, com o Done ligado como conector.
- Adicione o Done como conector em claude.ai/customize/connectors, com a URL do servidor MCP https://trydone.app/mcp. Ele precisa estar na sua conta do claude.ai: uma rotina não enxerga servidores MCP que você adicionou localmente na CLI.
- Abra claude.ai/code/routines e clique em New routine, ou execute /schedule na CLI do Claude Code e descreva o que você quer com suas palavras.
- Cole um dos prompts do Done como instruções. Uma rotina roda sem ninguém olhando, então o prompt precisa se sustentar sozinho. É exatamente para isso que os da visualização Prompts foram escritos.
- Defina um gatilho de horário: de hora em hora, diário, em dias úteis ou semanal. O menor intervalo permitido é de uma hora.
- Em Connectors, deixe o Done incluído e tire os que esta rotina não tem por que tocar. Crie a rotina e clique em Run now uma vez, para acompanhar a primeira execução do começo ao fim.
Antes de começar: As rotinas exigem um plano pago do Claude (Pro, Max, Team ou Enterprise) com o Claude Code na web ativado.
ChatGPT — Tarefas agendadas
Uma tarefa acionada por horário que chega ao Done por um conector personalizado.
- Adicione o Done como conector personalizado no modo de desenvolvedor, apontando para https://trydone.app/mcp, e faça login quando for solicitado.
- Comece uma conversa, cole um dos prompts do Done e peça que ele rode em horários programados: "execute isto todo dia útil às 8h".
- Gerencie o que você criou em Tasks, no menu do seu perfil. As tarefas disparam só por horário, no máximo mais ou menos de hora em hora, e se pausam sozinhas se você as ignorar por tempo suficiente.
Antes de começar: No ChatGPT Plus e Pro, os conectores MCP personalizados são somente leitura: um agente consegue ler sua fila, mas não consegue assumir, comentar nem concluir nada. Para escrever de volta é preciso um plano ChatGPT Business, Enterprise ou Edu.
Qualquer outro — Seu próprio agendador
Qualquer cliente MCP, acionado pelo que você já usa para rodar coisas em horários programados.
- Aponte o cliente para https://trydone.app/mcp, enviando seu token em um cabeçalho Authorization: Bearer.
- Faça o cron, um agendamento de CI, um executor de fluxos (o que você já confia para rodar em horários programados) iniciar esse cliente com um dos prompts do Done como instruções.
- Dê à execução um lugar para prestar contas. Todo prompt da biblioteca termina escrevendo de volta no Done, então o quadro é o registro e você não precisa de um segundo lugar para olhar.
Seja qual for o caminho escolhido, este é o prompt para entregar ao agente (está em inglês; copie como está):
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.A cada execução, ele propõe um plano para qualquer tarefa substancial e espera, e executa tudo o que você aprovou em Precisa de você desde a última vez. Você aprova; o agente faz o trabalho. Você nunca precisa iniciar uma execução à mão. A mesma configuração está a um clique no painel Conta (“Coloque um agente de IA para trabalhar na sua fila”).
Observações
- Conecte por OAuth (clientes que descobrem
/.well-known/oauth-authorization-server) ou com um token bearer de longa duração, por conta, gerado no app. Os dois funcionam no mesmo endpoint. - Todo token e toda autorização têm escopo restrito a uma única conta; não existe token entre contas nem global. Os tokens bearer podem ser restringidos ainda mais, a somente leitura ou a um único projeto.
- Gerar um token de novo ou revogá-lo o invalida imediatamente.
- O plano Grátis inclui 100 chamadas de agente (MCP) por mês; Pro e Teams são ilimitados. Veja os preços.