google-tasks-mcp-server
Provides tools for managing Google Tasks, including creating, listing, updating, deleting, and completing tasks, as well as managing task lists, moving tasks, and hiding completed tasks.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@google-tasks-mcp-serverWhat tasks are due today?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
google-tasks-mcp-server
An MCP server (stdio) for operating Google Tasks. It provides CRUD for task lists and tasks, completion toggling, reordering/moving, and batch-hiding of completed tasks.
Google's official Workspace MCP servers (Gmail / Calendar / Drive, etc.) do not include Tasks, so I built this to fill that gap.
Design principles
Credentials are passed via a file. You specify the path to the
client_secret_*.jsondownloaded from GCP in an environment variable, so you do not have to write the client secret in plain text in the MCPconfiguration file.First-time authentication is done in a separate CLI. Because the MCP server occupies stdout with JSON-RPC, mixing in browser launches or logs would break the protocol. Pulling authentication into
npm run authavoids that conflict and makes failures easier to isolate.Tasks-Only scope. It only requests
https://www.googleapis.com/auth/tasks.Updates use
patch.updatewould erase unspecified fields, so partial updates always usepatch.
Related MCP server: Mini Task MCP Server
Setup
1. Prepare GCP
Enable Google Tasks API in APIs & Services → Library
Create an OAuth 2.0 Clientes ID in Credentials, and use Desktop app as the application type.
Because a Desktop app can use any loopback port as its configured redirect target, you do not need to register a redirect URI.
Downloade the JSON (
client_secreat_xxx.json).If the OAuth consent screen is in “Testing” status, add your own Google account as a test user.
2. Build
npm install
npm run build3. First-time authentication
Authenticate by specifying the path to the client_secret_*.json. A browser will open, so approve it.
GOOGLE_TASKS_CLIENT_SECRET_PATH=~/path/to/client_secret_xxx.json npm run authThe token are saved to ~/.config/google-tasks-mcp-server/token.json with permissions 0600. From then on, the refresh token refreshes it automatically, so this step is required only the first time.
4. Register with the MCP client
For Claude Code:
claude mcp add google-tasks \
-e GOOGLE_TASKS_CLIENT_SECRET_PATH=$HOME/path/to/client_secret_xxx.json \
-- node /absolute/path/to/google-tasks-mcp-server/dist/index.jsIf you write it directly in .mcp.json:
{
"mcpServers": {
"google-tasks": {
"command": "node",
"args": ["/absolute/path/to/google-tasks-mcp-server/dist/index.js"],
"env": {
"GOOGLE_TASKS_CLIENT_SECRET_PATH": "/absolute/path/to/client_secret_xxx.json"
}
}
}
}Environment variables
Variable | Required | Default | Description |
| Yes | — | Path to the |
|
| Location where auth token is saved |
Tools
When omitted, the tasklist defaults to @not (the default task list).
Tasks lists
Tool | Description |
| Lists task lists. Get the IDs to pass to other tools from here. |
| Gets a single task list. |
| Creates a task list. |
| Renames a task list. |
| Deletes a task list (and its tasks). |
Tasks
Tool | Description |
| Lists tasks. Supports by due date and update timestamp. |
| Gets a single task. |
| Creates a task. When |
| Partially updates a task (only the specified items are changed). |
| Tooggle between complete/incomplete. |
| Reorders, turns into a subtask, or moves to another list. |
| Deletes a task. |
| Batch-hides completed tasks. |
Notes on usage
No time is stored in the due value.
dueis passed as RFC 3339, but Google Tasks retains only the date portion.Retrieving completed tasks requires
showHidden.showCompleted: truealone does not return tasks completed by other clients, so this server automatically addsshowHiddenwhenshowCompleted: trueis used.clear-completed-tasksis not a deletion. It only hides them, and they can be retrieved withshowHidden: true.Due-date filters are corrected to be inclusive of the specified date. Google Tasks API’s
dueMaxis exclusive on date basis; even if you pass the day at 23:59:59, zero tasks due that day are returned (you need to pass the next day at 0:00). Because that is counterintuitive, this server normalizesdueMinanddueMaxto date boundaries so both filters include the specified date.
Development
npm run typecheck # 型チェックのみ
npm run build # dist/ に出力
npm run auth # 初回認証License
MIT
Setup script
After completing the GCP console steps (enabling Google Tasks API, creating an OAuth 2.0 desktop app client, and downloadeing the JSON), you can run everything else at once.
./scripts/setup.shIt automatically searches ~/Downloads for client_secret*.json , verifies its type, places it in ~/.config/google-tasks-mcp-server/ with permission 600, then runs to build, authenticates the first time, and registers the MCP server. If the file is elsewhere, pass its path.
./scripts/setup.sh /path/to/client_secret.jsonThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceIntegrates with Google Tasks to enable searching, listing, creating, updating, and deleting tasks through MCP tools. It provides a comprehensive interface for managing task lists and individual task details via the Google Tasks API.MIT
- FlicenseBqualityCmaintenanceEnables task management via MCP tools for creating, listing, updating, completing, and deleting tasks with JSON file storage.6
- AlicenseNot gradedqualityCmaintenanceEnables managing Google Tasks through natural language, including listing, creating, completing, deleting, and updating tasks.251MIT
- AlicenseNot gradedqualityBmaintenanceProvides an MCP interface to Google Tasks, enabling reading, creating, updating, and completing tasks and task lists, with support for date filtering to generate weekly reports.25MIT
Related MCP Connectors
Tailscale device, route, DNS, key, user, and ACL management over MCP and CLI.
Project management MCP for AI agents with safe task reads and writes.
ClickUp MCP — wraps the ClickUp REST API v2 (BYO API key)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kouta-i5/google-tasks-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server