mcp-google-tasks
Servidor MCP para la API de Google Tasks: gestiona listas de tareas, crea y organiza tareas con fechas de vencimiento, notas y subtareas, realiza un seguimiento de la finalización y sincroniza cambios. Para Claude, Cursor, Codex y otros clientes de IA.
Documentación
Google Tasks MCP
Español | Русский
A1 Google Tasks MCP permite que una aplicación de IA gestione Google Tasks en lenguaje natural. Planifica un proyecto como una lista de tareas, divide el trabajo en subtareas con fechas de vencimiento y notas, marca las cosas como completadas y mantén todo en orden.
Utiliza la API de Google Tasks con tu cuenta de Google. Separa la finalización reversible de la eliminación permanente y hace explícitos los límites de la API de Tasks en lugar de dar a entender que todas las funciones de tareas pendientes son posibles.
- 21 herramientas. Lista, crea y actualiza listas de tareas y tareas, mueve tareas, gestiona la finalización, limpia el trabajo completado y accede a la API sin procesar cuando falta una herramienta dedicada.
- Se conecta desde la conversación. Di "conectar Google Tasks": el servidor te guía a través del cliente OAuth, captura la redirección de Google en
127.0.0.1con PKCE y guarda los tokens él mismo — sin archivos de configuración, sin reinicios. - La finalización es reversible, la eliminación no.
complete_tasktiene deshacer (reopen_task); las herramientas de eliminación están separadas y marcadas como destructivas. - Las fechas de vencimiento son honestas. La API almacena solo la fecha del calendario — el servidor nunca finge programar una hora del día; las horas pertenecen a las notas.
- Alcance mínimo de Google. Un único alcance
tasks, sin acceso a Drive, Calendar o Gmail.
Comienza con una pregunta de solo lectura:
Muéstrame mis listas de tareas y todo lo que vence antes del viernes en mi lista predeterminada.
Conectar el servidor · Explorar casos de uso · Abrir documentación técnica
Véalo funcionar en un minuto
Tú: ¿Qué sigue abierto en la lista "Lanzamiento del sitio web" y qué vence esta semana?
Asistente: Muestra las tareas abiertas con sus fechas de vencimiento, notas y subtareas. No cambia nada.
Tú: Agrega una tarea "Enviar el anuncio de lanzamiento" con vencimiento el viernes como subtarea de "Marketing".
Asistente: Muestra la lista de destino, la tarea principal y la tarea propuesta, luego pide confirmación antes de crearla.
Tú: Confirmar.
Asistente: Crea la subtarea con fecha de vencimiento el viernes. No completa ni elimina nada a menos que lo pidas por separado.
Contenido
- Inicio rápido
- Qué puedes pedirle que haga
- Cómo cambia una tarea
- Qué puede cambiar
- Obtener acceso
- Configuración
- Datos, límites y trabajo en segundo plano
- Documentación técnica
- Soporte
Inicio rápido
Necesitas Node.js 20+ y una cuenta de Google. No se requieren credenciales al momento de la instalación — el servidor se conecta desde la conversación.
- Agrega el servidor a tu aplicación de IA.
- Di "conectar Google Tasks": el asistente te guía para crear el cliente OAuth y aprobar el acceso sin editar archivos de configuración.
- Haz la pregunta de solo lectura anterior.
Codex
En la aplicación: abre Configuración → Servidores MCP, selecciona Agregar servidor, elige STDIO, ingresa el comando npx -y mcp-google-tasks@latest y las variables de entorno GOOGLE_TASKS_CLIENT_ID, GOOGLE_TASKS_CLIENT_SECRET, GOOGLE_TASKS_REFRESH_TOKEN, luego selecciona Guardar y Reiniciar.
Desde la línea de comandos:
codex mcp add google-tasks \
-- npx -y mcp-google-tasks@latest
codex mcp list
Claude Code
claude mcp add \
--transport stdio --scope user google-tasks \
-- npx -y mcp-google-tasks@latest
claude mcp list
Claude Desktop
La ruta oficial actual es Configuración → Extensiones. Para una extensión de escritorio personalizada, abre Configuración avanzada → Desarrollador de extensiones → Instalar extensión…, selecciona un archivo .mcpb y sigue las indicaciones.
Este repositorio actualmente publica un paquete npm stdio y no contiene un paquete .mcpb. Para compilaciones de Claude Desktop que aún admiten configuración local, usa la siguiente configuración JSON stdio como alternativa:
{
"mcpServers": {
"google-tasks": {
"command": "npx",
"args": ["-y", "mcp-google-tasks@latest"]
}
}
}
En esas compilaciones, guárdalo en ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.
Cursor
Agrega esto a ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:
{
"mcpServers": {
"google-tasks": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tasks@latest"]
}
}
}
VS Code
Ejecuta MCP: Abrir configuración de usuario y agrega:
{
"servers": {
"google-tasks": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tasks@latest"]
}
}
}
Verifícalo con MCP: Listar servidores.
Qué puedes pedirle que haga
Ver tus listas y planificar el día
- Muestra mis listas de tareas y las tareas abiertas en cada una.
- ¿Qué vence esta semana en la lista predeterminada? Incluye subtareas.
- ¿Qué cambió desde ayer? Incluye tareas completadas y ocultas.
Crear y organizar trabajo
- Crea una lista "Lanzamiento del sitio web" con tareas para diseño, contenido y control de calidad.
- Agrega una tarea con vencimiento el viernes con notas, anidada bajo la tarea "Marketing".
- Mueve una tarea al principio de la lista, debajo de otra tarea o a una lista diferente.
Seguimiento de finalización
- Marca la tarea de revisión como completada — y reábrela si el trabajo vuelve.
- Limpia todas las tareas completadas de la vista de la lista de una sola vez.
- Muestra las tareas ocultas que se limpiaron anteriormente.
Cómo cambia una tarea
- Las tareas viven en listas de tareas. Cada cuenta tiene una lista predeterminada integrada, identificada por el id especial
@default;create_tasklistagrega más. - Una tarea lleva un título, notas y una fecha de vencimiento solo de fecha — la API descarta la parte de la hora, por lo que una hora del día pertenece a las notas.
- El orden y el anidamiento cambian solo a través de
move_task; el campopositionde la API es de solo lectura. - Completar una tarea es reversible:
reopen_taskla trae de vuelta. Eliminar una tarea o una lista es permanente, y eliminar una lista elimina todas las tareas que contiene.
Las tareas recurrentes no se pueden crear a través de la API. Las tareas asignadas desde Google Docs o Chat se pueden leer pero no crear ni mover a otra lista, y eliminarlas también las elimina en el documento de origen. No hay búsqueda ni ordenamiento del lado del servidor — el servidor lista las tareas y el cliente de IA las filtra.
Qué puede cambiar
| Operación | Qué sucede | Límite de confirmación |
|---|---|---|
| Leer listas de tareas y tareas | Lee listas, tareas y sus filtros | Sin cambios |
| Crear una lista de tareas o una tarea | Agrega una lista o una tarea abierta | Cambia Google Tasks |
| Actualizar una tarea o renombrar una lista | Cambia un título, notas o fecha de vencimiento | Cambia una tarea |
| Mover una tarea | Cambia el orden, el anidamiento o la lista contenedora | Cambia una tarea |
| Completar o reabrir una tarea | Alterna el estado de finalización | Cambio reversible |
| Limpiar tareas completadas | Elimina todas las tareas completadas de una lista de la vista | Destructivo |
| Eliminar una tarea o una lista de tareas | Elimina la tarea, o la lista con todo lo que contiene | Destructivo |
| Solicitud de API sin procesar | Puede llamar métodos de API sin una herramienta dedicada | Potencialmente destructivo |
El cliente de IA controla los avisos de confirmación. El servidor marca las herramientas de lectura, escritura y destructivas para que el cliente pueda distinguir una inspección de un cambio en vivo.
Obtener acceso
Google Tasks requiere OAuth 2.0; una clave de API no es suficiente. Hay dos formas de acceder, y la primera no necesita archivos de configuración.
Conectar desde el chat (recomendado)
Di "conectar Google Tasks" y el asistente ejecuta el flujo contigo:
setup_instructionsimprime la lista de verificación: crea o selecciona un proyecto de Google Cloud, habilita Google Tasks API, configura la pantalla de consentimiento y crea un cliente OAuth de Aplicación de escritorio.- Descarga el JSON de ese cliente ("Descargar JSON") y dale al asistente su ruta —
set_clientlo almacena solo para el propietario. El secreto nunca pasa por la conversación. start_logindevuelve un enlace de consentimiento de Google. Ábrelo en esta máquina y aprueba; el código vuelve a un listener de un solo uso en127.0.0.1(PKCE), nunca a través del chat.finish_loginintercambia el código y guarda los tokens en~/.config/mcp-google-tasks/credentials.json(modo 0600) y los verifica con una llamada real a la API de Google Tasks — así, una API que aún está desactivada se detecta allí mismo.
Los tokens se releen en cada llamada, por lo que la conexión funciona de inmediato — sin reiniciar la aplicación de IA. auth_status muestra qué está conectado, logout revoca y elimina.
Variables de entorno (CI, instalaciones desatendidas)
-
Crea o selecciona un proyecto de Google Cloud y habilita Google Tasks API.
-
Configura la pantalla de consentimiento OAuth y crea un cliente OAuth de Aplicación de escritorio.
-
Autoriza la cuenta de Google que posee las tareas. El OAuth 2.0 Playground puede obtener el token de actualización cuando Usar tus propias credenciales OAuth está habilitado.
-
Solicita el alcance:
https://www.googleapis.com/auth/tasks
Los tokens de actualización OAuth en modo de prueba pueden expirar después de siete días. Publica la aplicación OAuth, o usa una aplicación Interna en un dominio de Workspace, cuando necesites acceso de larga duración. Trata el secreto del cliente y el token de actualización como contraseñas.
Configuración
Cada variable es opcional — sin ninguna de ellas, el servidor se conecta desde el chat.
| Variable | Requerida | Descripción |
|---|---|---|
GOOGLE_TASKS_CLIENT_ID | No* | ID de cliente OAuth. |
GOOGLE_TASKS_CLIENT_SECRET | No* | Secreto de cliente OAuth. |
GOOGLE_TASKS_REFRESH_TOKEN | No* | Token de actualización OAuth. |
GOOGLE_TASKS_ACCESS_TOKEN | No* | Alternativa de corta duración al trío OAuth. |
GOOGLE_TASKS_OAUTH_PORT | No | Puerto de loopback fijo para el inicio de sesión en el chat; útil con reenvío de puertos SSH. |
GOOGLE_TASKS_API_BASE | No | Anulación de la URL base de la API de Google Tasks. |
GOOGLE_TASKS_TIMEOUT_MS | No | Tiempo de espera por solicitud; predeterminado 60000 ms. |
GOOGLE_TASKS_MAX_RETRIES | No | Reintentos de errores temporales; predeterminado 3. |
* Proporciona el trío OAuth o un token de acceso.
Sin credenciales, el servidor aún se inicia y completa el protocolo de enlace MCP; la primera llamada a una herramienta falla con un mensaje que nombra las variables a configurar y pide un reinicio.
Datos, límites y trabajo en segundo plano
- Las solicitudes van a Google Tasks. El servidor local actualiza los tokens OAuth de Google y llama a la API de Tasks. Su telemetría anónima contiene un ID de instalación, versión del paquete, cliente de IA y versiones de plataforma, y nombres de herramientas — nunca tokens OAuth, contenido de tareas, argumentos de herramientas o avisos. Configura
ASKADS_TELEMETRY=0para optar por no participar. - Google aplica una cuota diaria. La API de Tasks tiene un límite de cortesía de 50,000 consultas por día por proyecto. En
429, el servidor usa retroceso; las lecturas también reintentan después de errores de red y5xx, mientras que las escrituras no se reproducen después de una falla incierta — verifica el resultado conget_tasken su lugar. - No hay sondeo en segundo plano. El servidor solo se ejecuta cuando se le llama.
list_tasksadmite sincronización incremental a través del filtroupdated_min, por lo que una aplicación de IA con tareas programadas puede verificar cambios periódicamente sin releer todo.
Documentación técnica
- Catálogo de capacidades MCP — páginas orientadas a tareas para cada herramienta.
- Todas las herramientas y entradas
- Documentación de desarrollo
- Documentación de publicación
- Referencia de la API de Google Tasks
Soporte
¿Encontraste un error o necesitas un escenario? Crea un problema o escribe en Telegram.
¡Llegaste al final!