gtasks-mcp

gtasks-mcp

MCP.Pizza Chef: zcaceres

Seven tools in all: search your to-dos, list them, show your separate lists, create one, change one, delete one, or sweep out everything already ticked off. It works on your real Google Tasks account, so a change made in chat shows up on your phone within seconds. Getting in is the hard part, because you set up your own Google Cloud project, download a sign-in file and build the server yourself before anything works.

Calendar
Notes

Use This MCP server To

Add a to-do with a due date without opening the app Ask what is still unfinished across all my lists Mark something as done mid-conversation Search my to-dos for anything mentioning a person Clear out everything I have already ticked off Turn a paragraph of notes into separate to-dos

README

Google Tasks MCP Server

gtasks mcp logo smithery badge

This MCP server integrates with Google Tasks to allow listing, reading, searching, creating, updating, and deleting tasks.

Components

Tools

  • search

    • Search for tasks in Google Tasks
    • Input: query (string): Search query
    • Returns matching tasks with details
  • list

    • List all tasks in Google Tasks
    • Optional input: cursor (string): Cursor for pagination
    • Returns a list of all tasks
  • create

    • Create a new task in Google Tasks
    • Input:
      • taskListId (string, optional): Task list ID
      • title (string, required): Task title
      • notes (string, optional): Task notes
      • due (string, optional): Due date
    • Returns confirmation of task creation
  • update

    • Update an existing task in Google Tasks
    • Input:
      • taskListId (string, optional): Task list ID
      • id (string, required): Task ID
      • uri (string, required): Task URI
      • title (string, optional): New task title
      • notes (string, optional): New task notes
      • status (string, optional): New task status ("needsAction" or "completed")
      • due (string, optional): New due date
    • Returns confirmation of task update
  • delete

    • Delete a task in Google Tasks
    • Input:
      • taskListId (string, required): Task list ID
      • id (string, required): Task ID
    • Returns confirmation of task deletion
  • clear

    • Clear completed tasks from a Google Tasks task list
    • Input: taskListId (string, required): Task list ID
    • Returns confirmation of cleared tasks

Resources

The server provides access to Google Tasks resources:

  • Tasks (gtasks:///<task_id>)
    • Represents individual tasks in Google Tasks
    • Supports reading task details including title, status, due date, notes, and other metadata
    • Can be listed, read, created, updated, and deleted using the provided tools

Getting started

  1. Create a new Google Cloud project
  2. Enable the Google Tasks API
  3. Configure an OAuth consent screen ("internal" is fine for testing)
  4. Add scopes https://www.googleapis.com/auth/tasks
  5. Create an OAuth Client ID for application type "Desktop App"
  6. Download the JSON file of your client's OAuth keys
  7. Rename the key file to gcp-oauth.keys.json and place into the root of this repo (i.e. gcp-oauth.keys.json)

Make sure to build the server with either npm run build or npm run watch.

Installing via Smithery

To install Google Tasks Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @zcaceres/gtasks --client claude

Authentication

To authenticate and save credentials:

  1. Run the server with the auth argument: npm run start auth
  2. This will open an authentication flow in your system browser
  3. Complete the authentication process
  4. Credentials will be saved in the root of this repo (i.e. .gdrive-server-credentials.json)

Usage with Desktop App

To integrate this server with the desktop app, add the following to your app's server configuration:

{
  "mcpServers": {
    "gtasks": {
      "command": "/opt/homebrew/bin/node",
      "args": [
        "{ABSOLUTE PATH TO FILE HERE}/dist/index.js"
      ]
    }
  }
}

gtasks-mcp FAQ

Do I need a paid key?
No key and no payment, but you do need a free Google Cloud project of your own. You create it, switch on Google Tasks, make a desktop sign-in credential, download the file and sign in once through your browser.
Can it delete my to-dos?
Yes, and there is no confirmation, no read-only mode and no undo. One tool removes a single task, and another wipes every completed task from a list in one go, so be careful how you phrase requests.
How many tools does it really have?
Seven. The readme lists six and leaves out the one that shows your separate task lists, which you generally need first because most other tools want a list identity.
Are there limits on how much it can see?
It reads up to a hundred to-dos per list, and the paging option shown in the readme is accepted but never actually used, so very long lists get cut off silently.
Is the search reliable?
The matching itself is a simple text match on titles and notes, done on your computer. The summary line above the results is buggy and reports how many to-dos you have in total rather than how many matched.
Which apps does it work in?
Claude Desktop and Cursor are documented, and there is a one-line Smithery installer for Claude Desktop. Any app that can start a local MCP server works too.
Can I use this to plan my week out loud?
Yes. You can dictate several to-dos with due dates, then later ask what is outstanding and tick items off, all inside one conversation.
Anything else that trips people up?
The readme names the saved sign-in file incorrectly, calling it a Google Drive file when the code actually writes a Google Tasks one. The change tool also demands a web address value that it then ignores completely. The project is still getting occasional fixes, most recently in June 2026, but has a couple of dozen open issues.