Conecte agentes de IA (Cursor, VS Code Copilot) diretamente ao Chronos. Gerencie tarefas, quadros, sprints e mais — tudo via linguagem natural.
rezumme://, @rezumme/mcp-bridge)
deixaram de funcionar. Atualize para chronos:// e conecte por HTTP em
https://chronos.com.pt/mcp.
Autenticação: API (Bearer rzm_...)
ou Auth (OAuth 2.1 / login no browser — Codex e ChatGPT).
API — Bearer token (rzm_*)
Gere um token em Configurações → Conexão MCP e envie Authorization: Bearer rzm_... em cada POST https://chronos.com.pt/mcp. Ideal para Cursor, VS Code, Claude e Codex com bearer_token_env_var.
Auth — OAuth 2.1 (login no browser)
Sem colar token: Codex/ChatGPT recebem 401 com WWW-Authenticate, leem https://chronos.com.pt/.well-known/oauth-protected-resource, fazem login Chronos (usuário/PIN/senha) com PKCE e usam o access token. Comandos: codex mcp login; ChatGPT connector com Authentication = OAuth.
Busca inteligente na documentação
Pergunte sobre conexão com IDE, tools, erros ou playbooks. Mesma base usada pelo MCP (mcp_docs_search).
O Model Context Protocol (MCP) é um padrão aberto que permite a agentes de IA
se comunicarem diretamente com sistemas externos. O Chronos expõe um servidor MCP completo
em https://chronos.com.pt/mcp,
permitindo que agentes como Cursor e
VS Code Copilot operem todas as suas tarefas via linguagem natural.
Paridade total com a UI
83+ operações disponíveis, mesmas regras de acesso da interface web.
Autenticação segura
Token pessoal (rzm_...) gerado por você, revogável a qualquer momento.
HTTP direto
POST /mcp com Bearer token, sem instalar nada. Clientes só stdio (Claude Desktop) usam npx mcp-remote.
Crie sua conta
Se ainda não tem conta no Chronos, registre-se gratuitamente.
Gere um token MCP
Em Configurações → Conexão MCP para IDEs, insira um nome (ex: "Cursor pessoal") e clique em Gerar token. Copie o token — ele é exibido uma única vez. →
Configure sua IDE
Cole a configuração HTTP na sua IDE (Cursor, VS Code, Claude Code ou Claude Desktop). Veja os exemplos na seção Formas de conexão abaixo. →
Recarregue o servidor MCP
No Cursor: Command Palette → "MCP: Reload". No VS Code: reabra o workspace. O agente agora enxerga as tools do Chronos.
Teste com o agente
Peça ao agente: "Liste minhas tarefas de hoje" ou "Faça meu standup". Ele chamará automaticamente tools/call e resources/read.
{
"mcpServers": {
"chronos": {
"url": "https://chronos.com.pt/mcp",
"headers": {
"Authorization": "Bearer rzm_SEU_TOKEN_AQUI"
}
}
}
}
Adicione em ~/.cursor/mcp.json ou nas configurações do Cursor (Settings → MCP). Modo API: Bearer rzm_*.
{
"servers": {
"chronos": {
"type": "http",
"url": "https://chronos.com.pt/mcp",
"headers": {
"Authorization": "Bearer rzm_SEU_TOKEN_AQUI"
}
}
}
}
Adicione em .vscode/mcp.json no workspace. Para todos os projetos, use o comando "MCP: Open User Configuration".
claude mcp add --transport http chronos https://chronos.com.pt/mcp --header "Authorization: Bearer rzm_SEU_TOKEN_AQUI"
Rode no terminal. Adicione --scope user para usar em todos os projetos.
{
"mcpServers": {
"chronos": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://chronos.com.pt/mcp",
"--header",
"Authorization:${CHRONOS_AUTH}"
],
"env": {
"CHRONOS_AUTH": "Bearer rzm_SEU_TOKEN_AQUI"
}
}
}
}
O arquivo de configuração do Claude Desktop só aceita servidores stdio; o pacote mcp-remote (Node.js 18+) faz a ponte para o endpoint HTTP.
[mcp_servers.chronos]
url = "https://chronos.com.pt/mcp"
bearer_token_env_var = "CHRONOS_MCP_TOKEN"
# export CHRONOS_MCP_TOKEN=rzm_SEU_TOKEN_AQUI
Modo API: token rzm_* via variável de ambiente. Sem login OAuth.
[mcp_servers.chronos]
url = "https://chronos.com.pt/mcp"
# auth = "oauth" # default quando não há bearer_token_env_var
# Depois rode:
# codex mcp login chronos
Modo Auth: sem Bearer no config. O cliente descobre OAuth via /.well-known e abre o login Chronos no browser (codex mcp login). ChatGPT connector: Authentication = OAuth.
Importante:
Substitua rzm_SEU_TOKEN_AQUI pelo token gerado em
Configurações → Conexão MCP.
O token só é exibido uma vez após a criação.
O protocolo MCP define três primitivas distintas. Entenda quando usar cada uma.
URIs disponíveis
chronos://profile
chronos://tasks
chronos://tasks/unified
chronos://boards
chronos://platforms/connections
chronos://mcp/docs
chronos://tasks/description-tips
chronos://task/{ref}
Exemplo — Ler tarefas pessoais
{
"jsonrpc": "2.0",
"id": 1,
"method": "resources/read",
"params": {
"uri": "chronos://tasks"
}
}
O agente normalmente faz isso automaticamente ao precisar de contexto.
Exemplo leitura — Listar tarefas de hoje
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "tasks_list",
"arguments": {
"filter": "today"
}
}
}
Exemplo escrita — Concluir uma tarefa
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "tasks_update",
"arguments": {
"task_id": "uuid-da-tarefa",
"status": "done"
}
}
}
Tools de escrita (write) consomem writes_per_day. Tools dos grupos lousa_write e automations_write exigem plano Pro.
Standup diário
{
"jsonrpc": "2.0",
"id": 4,
"method": "prompts/get",
"params": {
"name": "daily_standup",
"arguments": []
}
}
Status de um quadro
{
"jsonrpc": "2.0",
"id": 5,
"method": "prompts/get",
"params": {
"name": "board_status",
"arguments": {
"board_id": "uuid-do-quadro"
}
}
}
O agente usa o prompt como sistema de mensagem e depois chama as tools necessárias para buscar os dados.
Exemplos acionáveis — o agente normalmente executa essas chamadas automaticamente ao receber um pedido em linguagem natural.
prompts/get → daily_standup
{
"jsonrpc": "2.0",
"id": 1,
"method": "prompts/get",
"params": {
"name": "daily_standup",
"arguments": []
}
}
tools/call → tasks_search → tasks_get
{
"jsonrpc": "2.0",
"id": 6,
"method": "tools/call",
"params": {
"name": "tasks_search",
"arguments": {
"query": "revis\u00e3o API"
}
}
}
tools/call → tasks_list
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "tasks_list",
"arguments": {
"filter": "today"
}
}
}
tools/call → tasks_update
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "tasks_update",
"arguments": {
"task_id": "<uuid>",
"status": "done"
}
}
}
boards_list → board_tasks_list ou prompts/get → board_status
{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "board_tasks_list",
"arguments": {
"board_id": "<uuid-de-boards_list.board_id>"
}
}
}
tools/call → bridge_promote
{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "bridge_promote",
"arguments": {
"task_id": "<uuid>",
"board_id": "<uuid>",
"sync": true
}
}
}
tools/call → export_tasks_ics
{
"jsonrpc": "2.0",
"id": 6,
"method": "tools/call",
"params": {
"name": "export_tasks_ics",
"arguments": []
}
}
tools/call → tasks_search → board_tasks_update
{
"jsonrpc": "2.0",
"id": 8,
"method": "tools/call",
"params": {
"name": "board_tasks_update",
"arguments": {
"board_id": "<uuid-de-boards_list>",
"task_id": "<uuid-da-tarefa>",
"status_summary": "**Em andamento**\n\n- API pronta\n- Testes pendentes"
}
}
}
tools/call → tasks_search → board_tasks_update
{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "board_tasks_update",
"arguments": {
"board_id": "<uuid-de-boards_list>",
"task_id": "<uuid-da-tarefa>",
"status_summary": "## Conclus\u00e3o\n\nResumo do que foi investigado/implementado."
}
}
}
tools/call → board_tasks_attachments_list / board_tasks_attachment_add
{
"jsonrpc": "2.0",
"id": 8,
"method": "tools/call",
"params": {
"name": "board_tasks_attachment_add",
"arguments": {
"board_id": "<uuid-de-boards_list>",
"task_id": "<uuid-da-tarefa>",
"filename": "relatorio.md",
"text_content": "# Relat\u00f3rio\n\nConte\u00fado do arquivo."
}
}
}
| Limite | Gratuito | Pro ⭐ |
|---|---|---|
| Requisições por dia | 300 | 10,000 |
| Escritas por dia | 30 | 2,000 |
| Burst por minuto | 20 | 120 |
| Itens por resultado | 50 | 500 |
| Grupos desabilitados |
lousa_write
automations_write
|
Nenhum |
Causa: O cabeçalho Authorization não foi enviado, o token está mal formatado ou o token não existe. No modo Auth, o 401 inclui WWW-Authenticate com resource_metadata para iniciar OAuth.
Solução: Modo API: token rzm_ completo em headers.Authorization. Modo Auth (Codex/ChatGPT): rode codex mcp login ou conclua o OAuth do connector; confira /.well-known/oauth-protected-resource.
Causa: O token foi revogado em Configurações → Conexão MCP.
Solução: Gere um novo token em Configurações e atualize a configuração da IDE.
Causa: Você tentou chamar uma tool dos grupos lousa_write ou automations_write com o plano Gratuito.
Solução: Faça upgrade para Pro em /planos para desbloquear esses grupos.
Causa: Muitas requisições em menos de 1 minuto (20/min no Free, 120/min no Pro).
Solução: Aguarde o tempo indicado no campo meta.retry_after_seconds da resposta de erro. A resposta inclui {"ok":false,"error":{...},"meta":{"retry_after_seconds":N}}.
Causa: Você atingiu o limite de requests_per_day ou writes_per_day do seu plano.
Solução: O contador reseta à meia-noite UTC. Considere fazer upgrade para Pro (10.000 req/dia).
Causa: board_id incorreto: uso de owner_id (inteiro), token pessoal, ou confusão entre id de tarefa pessoal (tasks_list) e tarefa de quadro (board_tasks_list).
Solução: Use tasks_search para encontrar tarefas em qualquer escopo. Para detalhes use tasks_get com ref (personal:{uuid} ou board:{board_uuid}:{task_uuid}). Para listar por quadro: boards_list → board_tasks_list com board_id (UUID). Não use owner_id.
Causa: Cursor conectou ao Chronos (verde) e lista resources/prompts, mas mostra 0 tools. Causa frequente no servidor: inputSchema.properties vazio serializado como [] (array JSON) em vez de {} (objeto) — clientes estritos descartam o catálogo inteiro. Outra causa no Cursor: race ao gravar mcps/user-chronos/tools/*.json.
Solução: 1) Confirme no servidor que tools/list não contém "properties":[]. 2) GET /mcp/health. 3) Token rzm_ válido (não use placeholder). 4) Em Customize, o Chronos deve mostrar N tools > 0 após reconnect. 5) Se a UI ainda mostrar 0 tools: php artisan mcp:sync-cursor-cache e abra chat Agent novo (sem toggle). 6) Fallback: chronos tasks list.
83 tools · 7 resources · 4 prompts
chronos://profile
User profile, plan, AI and MCP quotas.
chronos://tasks
Personal dashboard tasks only (not board tasks). For unified search across personal and boards use chronos://tasks/unified or tasks_search.
chronos://tasks/unified
Active tasks snapshot across personal dashboard and all accessible boards (overdue, due today, recently updated).
chronos://boards
Owned and member boards.
chronos://platforms/connections
Connected external platforms (Trello, Notion, GitHub, etc.).
chronos://mcp/docs
Metadata and categories of the MCP documentation index. Use mcp_docs_search for semantic lookup.
chronos://tasks/description-tips
Per-platform description patterns (BBCode, HTML, Markdown) for parsing and writing task descriptions.
ide_connection_help
Get IDE/MCP connection help from documentation RAG. Answers setup, config snippets, tool selection and errors.
daily_standup
Generate a daily standup summary from personal and board tasks due today and overdue.
task_lookup
Look up tasks by query and preload context for the agent.
board_status
Generate a board status overview from its tasks.
tasks_search
Unified search for active (non-archived) personal and board tasks. Board results include in_backlog (true = planning backlog, not active sprint) and status_summary/has_status_summary for board tasks. Use FIRST to find onboard work by title, description, assignee name, status_summary, or AI insight. For archived/past tasks use tasks_search_archived.
query
kinds
board_id
status
priority
assignee_id
source
due
page
per_page
tasks_search_archived
Search archived personal and board tasks only. Matches title, description, status_summary (board), and AI insight. Use when the user explicitly asks for past, completed, or archived work — not for day-to-day active task lookup.
query
kinds
board_id
status
priority
assignee_id
source
due
page
per_page
tasks_list
List personal dashboard tasks. Supports filter (all, today, week, overdue, no_date), source, search, pagination. For cross-domain text search prefer tasks_search.
filter
source
search
archived
page
per_page
tasks_list_unified
List all active tasks across personal dashboard and accessible boards, sorted by last update. Supports kinds, board_id, status, priority, due filters and pagination.
kinds
board_id
status
priority
due
page
per_page
tasks_get
Get full task details by ref (personal:{uuid} or board:{board_uuid}:{task_uuid}), or by task_id with optional kind/board_id. Includes insight, assignees, boards, comments, and mutation_tools hints.
ref
task_id
kind
board_id
tasks_create
Create a personal dashboard task (quadro Pessoal).
title
description
due_date
priority
status
source_label
tasks_update
Update a personal task (status, priority, due_date, title).
task_id
status
priority
due_date
title
tasks_archive
Archive a completed personal task.
task_id
tasks_unarchive
Unarchive a personal task.
task_id
tasks_delete
Delete a personal task (soft delete).
task_id
tasks_comment_add
Add a comment to a personal task.
task_id
body
tasks_comment_edit
Edit a comment on a personal task.
comment_id
body
tasks_comment_delete
Delete a comment on a personal task.
comment_id
boards_list
List all boards the user owns or is a member of. Use board_id (UUID) from the response for board_tasks_list — not owner_id. board_token from /quadros/ URL also works as board_id.
boards_get
Get a board by ID including members.
board_id
boards_create
Create a new shared board (Free plan: 1 owned shared board; Pro: unlimited).
name
description
theme
boards_update_settings
Update board settings (name, description, theme). Requires admin/owner role.
board_id
name
description
theme
boards_invite_generate_link
Generate a board invite link.
board_id
role
boards_kick_member
Remove a member from a board. Requires admin/owner role.
board_id
user_id
board_tasks_list
List active sprint/Kanban tasks in a board (excludes backlog by default). Pass backlog:true to list backlog tasks instead. For cross-board text search prefer tasks_search (check in_backlog on results).
board_id
status
archived
backlog
search
page
per_page
board_tasks_get
Get a board task with full details (assignees, checklist, comments, blocking dependencies, ai_insight, status_summary, status_summary_format). Prefer tasks_get with ref from tasks_search for unified lookup.
board_id
task_id
board_tasks_create
Create a task in a board. Pass in_backlog:true to create in the backlog instead of the active sprint.
board_id
title
description
status
priority
due_date
assignee_ids
in_backlog
board_tasks_update
Update an active sprint/Kanban task (title, description, status, priority, due_date, tags, status_summary). Use status_summary for visible progress/conclusion (markdown, max 10000 chars) — preferred over comments for status updates. Rejects backlog tasks — use backlog_tasks_update when in_backlog=true.
board_id
task_id
title
description
status
priority
due_date
status_summary
tags
board_tasks_assign
Assign users to a board task.
board_id
task_id
assignee_ids
board_tasks_archive
Archive a completed board task.
board_id
task_id
board_tasks_unarchive
Unarchive a board task.
board_id
task_id
board_tasks_delete
Delete a board task.
board_id
task_id
board_tasks_checklist_add
Add an item to a board task checklist.
board_id
task_id
title
board_tasks_checklist_toggle
Toggle a checklist item done/undone.
board_id
item_id
board_tasks_checklist_delete
Delete a checklist item.
board_id
item_id
board_tasks_dependency_add
Add a dependency between board tasks (task depends on another).
board_id
task_id
depends_on_id
board_tasks_dependency_remove
Remove a task dependency.
board_id
dependency_id
board_tasks_attachments_list
List every file attached to a board task (and, by default, to its comments) with a direct download_url (pre-signed, no login needed, expires). Use it to read/download the task file archive.
board_id
task_id
include_comments
link_minutes
board_tasks_attachment_get
Get one task attachment with a fresh direct download_url. With include_text=true, text files (txt, md, csv, json) up to 200 KB also return their content inline.
board_id
attachment_id
include_text
link_minutes
board_tasks_attachment_add
Attach a file to a board task (max 10 MB; images, PDF, Office, txt/md/csv/json, zip). Send exactly ONE of: content_base64 (file bytes, data URI accepted), text_content (plain text/markdown/csv written as the file) or source_url (public http(s) file to download). For large local files prefer board_tasks_attachment_upload_start.
board_id
task_id
filename
content_base64
text_content
source_url
mime_type
board_tasks_attachment_upload_start
Start a direct upload of a file to a board task (S3/MinIO storage). Returns upload_url + headers: PUT the raw file there (e.g. curl -X PUT -H "Content-Type: ..." --upload-file file "<upload_url>"), then call board_tasks_attachment_upload_complete with upload_id. Best for local files and anything too big for base64.
board_id
task_id
filename
mime_type
board_tasks_attachment_upload_complete
Confirm a direct upload started with board_tasks_attachment_upload_start, after the PUT succeeded. Registers the file on the task and returns it with download_url.
board_id
upload_id
board_tasks_attachment_delete
Delete a task attachment (uploader or board admins only).
board_id
attachment_id
board_tasks_comment_add
Add a discussion comment to a board task (thread/history). Do NOT use for progress updates or task status — use board_tasks_update with status_summary instead.
board_id
task_id
body
board_tasks_comment_edit
Edit a comment on a board task.
board_id
comment_id
body
board_tasks_comment_delete
Delete a comment on a board task.
board_id
comment_id
board_saved_views_list
List saved filter views for a board.
board_id
board_saved_views_delete
Delete a saved view.
board_id
view_id
bridge_promote
Promote a personal task to a shared board task.
task_id
board_id
sync
bridge_link
Link a personal task to an existing board task.
task_id
board_task_id
sync
bridge_unlink
Remove a personal task ↔ board task link.
link_id
bridge_toggle_sync
Toggle bidirectional sync on a task-board link.
link_id
chat_list_messages
List recent board chat messages.
board_id
limit
chat_send_message
Send a message to the board general chat.
board_id
content
chat_send_dm
Send a direct message to another board member.
board_id
target_user_id
content
lousa_list
List whiteboards (lousas) in a board.
board_id
lousa_get_scene
Get the current scene (elements) of a whiteboard.
board_id
lousa_id
lousa_save_snapshot
Save a snapshot of the whiteboard scene. Requires board Pro plan.
board_id
lousa_id
scene
automations_list
List board automations.
board_id
automations_create_from_template
Create a board automation from a predefined template.
board_id
template
automations_toggle
Enable or disable a board automation.
board_id
automation_id
automations_delete
Delete a board automation.
board_id
automation_id
sprint_close
Close the current sprint (archives done tasks, marks overdue). Requires admin role.
board_id
sprint_list_reports
List sprint reports for a board.
board_id
sprint_get_report
Get a specific sprint report.
board_id
report_id
backlog_tasks_list
List backlog tasks for a board (planning tasks outside the active sprint).
board_id
search
priority
assignee_id
page
per_page
backlog_tasks_create
Create a planning task in the backlog. Backlog tasks are not counted as pending in the active sprint.
board_id
title
description
priority
due_date
assignee_ids
tags
backlog_tasks_update
Update a backlog task (title, description, priority, due_date, tags, status_summary). status_summary accepts markdown (max 10000 chars) for visible task progress.
board_id
task_id
title
description
priority
due_date
status_summary
tags
backlog_tasks_promote
Promote a backlog task to the active sprint (sets status to pending). Optionally set a due_date on promotion.
board_id
task_id
due_date
backlog_tasks_move
Move an active sprint task into the backlog (task must not be done).
board_id
task_id
backlog_generate_report
Trigger an AI analysis of the board backlog (prioritization, risks, sprint readiness). Dispatched asynchronously.
board_id
backlog_list_reports
List backlog AI analysis reports for a board (most recent first).
board_id
backlog_get_report
Get a specific backlog AI analysis report.
board_id
report_id
notices_list
List announcements/notices for a board.
board_id
notices_publish
Publish an announcement to a board. Requires admin role.
board_id
title
body
notices_toggle_pin
Pin or unpin a board announcement.
board_id
announcement_id
notices_update
Update a board announcement. Requires admin role.
board_id
announcement_id
title
body
notices_mark_read
Mark a board announcement as read for the current user.
board_id
announcement_id
notices_react
Toggle a heart reaction on a board announcement.
board_id
announcement_id
notices_comment
Add a comment to a board announcement.
board_id
announcement_id
body
notices_delete
Delete a board announcement.
board_id
announcement_id
platforms_list_connections
List connected external platforms (Trello, Notion, GitHub, etc.).
platforms_trigger_sync
Trigger a manual sync for a connected platform.
platform
platforms_list_email_accounts
List configured email accounts (Gmail OAuth + IMAP Hostinger/custom).
export_tasks_csv
Export personal tasks as CSV. Returns base64-encoded content.
export_tasks_ics
Export personal tasks as iCalendar (.ics). Returns base64-encoded content.
profile_get
Get the authenticated user's profile, plan info and MCP quotas.
mcp_docs_search
Search MCP integration documentation (IDE setup, tools, playbooks, troubleshooting). Does not search user tasks or boards — use other tools for live data.
query
limit
Parâmetros em vermelho são obrigatórios. Grupos marcados Pro exigem plano Pro.