Google Tasks

Gestiona tus tareas de Google con un asistente de inteligencia artificial usando lenguaje natural.

Documentación

Servidor MCP de Google Tasks

Un servidor de Model Context Protocol (MCP) para Google Tasks. Gestiona listas de tareas y tareas mediante lenguaje natural en Claude Desktop y otros clientes MCP.

Bifurcado de zcaceres/gtasks-mcp con opciones de autenticación más sólidas, soporte para múltiples listas, paginación y herramientas de jerarquía.

npm version MCP Registry License: MIT

Nombre en el registro: io.github.alvinjchoi/gtasks-mcp
npm: @alvincrave/gtasks-mcp

Características

  • Listar y buscar tareas (opcionalmente limitado a una lista de tareas)
  • Paginación a través de todas las tareas (sin límite silencioso de 100 tareas)
  • Crear, actualizar, eliminar y borrar tareas completadas
  • Descubrir listas de tareas (list_task_lists)
  • Ver jerarquía padre/hijo (list_with_tree)
  • Reordenar, anidar o mover tareas entre listas (move)
  • Autenticación OAuth2 mediante variables de entorno, archivos de credenciales o auth interactivo
  • Soporte para Docker

Instalación

Recomendado (Claude Desktop / cualquier cliente MCP): ejecuta el paquete npm publicado más reciente:

npx -y @alvincrave/gtasks-mcp

O instalar globalmente:

npm install -g @alvincrave/gtasks-mcp

Desde el código fuente

git clone https://github.com/alvinjchoi/gtasks-mcp.git
cd gtasks-mcp
npm install
npm run build

Configuración

Opción A — Variables de entorno (Claude Desktop)

  1. Crea un proyecto de Google Cloud y habilita la API de Google Tasks.
  2. Crea credenciales de escritorio OAuth 2.0 y obtén un token de actualización (OAuth Playground con el alcance https://www.googleapis.com/auth/tasks funciona).
  3. Configura Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en macOS):
{
  "mcpServers": {
    "gtasks": {
      "command": "npx",
      "args": ["-y", "@alvincrave/gtasks-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your_client_id_here",
        "GOOGLE_CLIENT_SECRET": "your_client_secret_here",
        "GOOGLE_REFRESH_TOKEN": "your_refresh_token_here"
      }
    }
  }
}

Opción B — Archivos de credenciales (local / compartidos con otros servidores MCP de Google)

  1. Descarga tu JSON de cliente OAuth (gcp-oauth.keys.json).
  2. Autentícate una vez:
export GTASKS_CREDENTIALS_PATH=/path/to/gcp-oauth.keys.json
export GTASKS_TOKEN_PATH=/path/to/.gtasks-server-credentials.json
node dist/index.js auth
  1. Ejecuta el servidor con las mismas variables de entorno configuradas (o coloca gcp-oauth.keys.json en la raíz del proyecto y usa los valores predeterminados).

También se aceptan alias:

PropósitoPreferidoAlias
Claves de cliente OAuthGTASKS_CREDENTIALS_PATHGOOGLE_OAUTH_KEYS_PATH
Tokens guardadosGTASKS_TOKEN_PATHGOOGLE_TASKS_CREDENTIALS_PATH

Opción C — Archivo de configuración en el directorio personal

Crea ~/.gtasks-credentials.json:

{
  "clientId": "your_client_id",
  "clientSecret": "your_client_secret",
  "refreshToken": "your_refresh_token"
}

Herramientas

HerramientaDescripción
searchBuscar tareas por título/notas. taskListId opcional.
listListar tareas (todas las listas, o una mediante taskListId). Totalmente paginado.
list_task_listsListar nombres e IDs de listas de tareas.
list_with_treeVista de árbol para una lista (padre/hijo, orden de posición).
moveReordenar, anidar/desanidar o mover entre listas.
createCrear una tarea (title requerido; notas/vencimiento/taskListId opcionales).
updateModificar una tarea (solo cambian los campos proporcionados).
deleteEliminar una tarea.
clearBorrar tareas completadas de una lista.

Ejemplos de uso

show my task lists
list tasks in list <id>
search for tasks containing "meeting"
create a task named "Prepare presentation" due 2026-07-20
show the task tree for list <id>
move task <id> under parent <parentId>
mark task <id> completed

Docker

docker build -t gtasks-mcp .
docker run -i \
  -e GOOGLE_CLIENT_ID=your_client_id \
  -e GOOGLE_CLIENT_SECRET=your_client_secret \
  -e GOOGLE_REFRESH_TOKEN=your_refresh_token \
  gtasks-mcp

Desarrollo

npm install
npm run build
npm start

Verificación de autenticación / inicio de sesión interactivo:

npm run build
node dist/index.js auth

Notas de seguridad

  • Trata los tokens de actualización como contraseñas
  • Prefiere variables de entorno o archivos de credenciales ignorados; nunca los subas al repositorio
  • Rota las credenciales si se filtran

Contribuyentes

  • ArtyMcLabin — paginación, filtrado por taskListId, list_task_lists, list_with_tree, move y autenticación basada en archivos (#1)
  • zcaceres — servidor MCP original de Google Tasks
  • alvinjchoi — mantenimiento del fork, empaquetado Smithery/npm

Consulta CONTRIBUTORS.md.

Licencia

MIT