Enumera los elementos abiertos antes de añadir otro
Leer primero evita TODO duplicados cuando varios agentes trabajan en el mismo alcance del proyecto.
todo({ action: "list" })Herramienta MCP pública
todo
Propósito
Crea, actualiza, completa, lista o elimina explícitamente en bloque los TODO del proyecto, conservando el estado de la tarea junto al contexto de proyecto autorizado.
Cuándo usar
- Un usuario necesita estado de tarea duradero, fechas límite, prioridad, finalización o una lista de traspaso.
- Un espacio de trabajo de proyecto necesita una mutación de TODO sujeta a control con su mount_capability firmada.
- El llamador necesita listar elementos abiertos, en curso, completados o todos los autorizados.
Cuándo NO usar
- No uses TODO para hechos o decisiones duraderos generales; usa remember.
- No guardes transacciones financieras como contenido de TODO; usa ledger.
- No llames a delete_all sin una solicitud explícita del usuario y confirm_delete_all=true.
- La API REST acepta un conjunto de campos más amplio que la herramienta MCP pública; consulta /docs/api/memory para los filtros de scope, bucket, team y provenance.
Ámbito requerido
- List usa memory:read; create, update, complete y delete_all usan memory:write en la superficie pública de chat.
- Las mutaciones de Project Workspace también requieren un mount_capability y un project_id válidos.
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
action | create | update | complete | list | delete_all · obligatorio | Operación del dispatcher. |
todo_id | string | ID exacto del elemento para actualizarlo o completarlo. |
content / title | string | Texto de la tarea; cuando se proporcionan ambos deben coincidir. |
project_id | string | Identificador del espacio de trabajo de proyecto autorizado. |
priority / due_at / status / note | string | Prioridad de la tarea, marca temporal de vencimiento, transición de estado y nota de traspaso. |
item_status / due_before / search / query | string | Filtros de lista; search y query solo se usan en list y deben coincidir si se proporcionan ambos. |
limit / cursor / owner_timezone | integer / string · predeterminado: 20 / empty / configured timezone | Controles de paginación e interpretación de fechas. |
client_mutation_id / expected_version | string / integer | Clave de idempotencia para create/update y versión de concurrencia optimista para update. |
confirm_delete_all | boolean · predeterminado: false | Se requiere true para una eliminación explícita y recuperable en bloque. |
Esquema de retorno
La salida estructurada identifica la acción y devuelve los elementos afectados, el cursor de paginación, el estado de la mutación y metadatos seguros de la tarea. La eliminación en bloque siempre es una eliminación lógica recuperable.
Ejemplos
todo({
action: "create",
content: "Review the MCP scope matrix",
client_mutation_id: "task-review-scope-001",
due_at: "2026-08-25T09:00:00Z"
})todo({ action: "list", item_status: "open", limit: 10 })Errores
- Error de autorización: a list le falta memory:read o a una mutación le falta memory:write/capacidad de proyecto.
- Error de validación: create no tiene client_mutation_id, update no tiene un expected_version positivo o hay conflicto entre campos de la acción.
- Rechazo de seguridad: delete_all requiere confirmación explícita y no está disponible para llamadores de widget/mount-capability.
- Los errores de zona horaria, proyecto o concurrencia optimista se devuelven explícitamente; el dispatcher no ignora campos en silencio.
Herramientas relacionadas
- remember — Guarda la decisión o el hecho duradero que sustenta una tarea.
- recall_context — Restaura el contexto de tarea y proyecto antes de continuar.
- forget — Elimina un TODO revisado por su ID exacto cuando sea necesario.
Fuente: Superficie de herramientas MCP