Enables management of Google Tasks including listing task lists, creating, updating, deleting, and completing tasks, setting due dates and notes, and organizing subtasks.
Google Tasks MCP Server
A Model Context Protocol (MCP) server that provides access to your Google Tasks. This server enables LLMs (like Claude) to list, create, update, complete, and delete your Google Tasks.
Features
List Task Lists: View all your task lists.
Manage Tasks: Create, update, delete, and complete tasks.
Task Details: Set due dates, notes, and move tasks (subtasks).
FastMCP: Built using the
fastmcplibrary for easy integration.
Setup
Prerequisites
Python 3.10 or higher
A Google Cloud Platform (GCP) Project
uv(recommended) orpip
Installation
Clone this repository:
git clone https://github.com/yourusername/gtasks-mcp.git cd gtasks-mcpCreate a virtual environment and install dependencies:
# Using uv (faster) uv venv source .venv/bin/activate uv pip install -r requirements.txt # OR using pip python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
Google Cloud Setup
To use this server, you need to set up a Google Cloud project and enable the Tasks API.
Create a Project: Go to the Google Cloud Console and create a new project.
Enable API:
Go to APIs & Services > Library.
Search for "Google Tasks API" and click Enable.
Configure Consent Screen:
Go to APIs & Services > OAuth consent screen.
Select External (unless you are a Google Workspace user and want Internal).
Fill in the required App Information (App name: "GTasks MCP", User support email, Developer contact email).
Click Save and Continue.
Scopes: Click Add or Remove Scopes. Filter for
tasks. Selecthttps://www.googleapis.com/auth/tasks(Access to your tasks).Click Update and then Save and Continue.
Test Users: Add your own email address as a test user. This is critical while the app is in "Testing" mode.
Create Credentials:
Go to APIs & Services > Credentials.
Click Create Credentials > OAuth client ID.
Application type: Desktop app.
Name: "GTasks MCP User".
Click Create.
Download Client Secret:
Download the JSON file for your new OAuth client.
Rename the file to
client_secret.json.Move it to the root directory of this project.
Usage with Claude for Desktop
Add the following to your claude_desktop_config.json:
Note: Replace
Authentication
When you first run the server (or when Claude tries to use it), it will open a browser window asking you to log in with your Google account.
Select the account you added as a Test User.
You will likely see a "Google hasn't verified this app" warning. This is expected for personal testing apps.
Click Advanced > Go to GTasks MCP (unsafe).
Click Continue to grant access.
The browser will show "The authentication flow has completed". You can close it.
A token.json file will be created to store your credentials for future use.
License
MIT