Connect your AI Agents to Google Tasks in minutes

Merge lets you securely connect your agents to Google Tasks and thousands of tools instantly

Available tools

list_tasks

List tasks in a Google task list. Supports pagination and filters by completion, due date, or last update. Use list_tasklists to find valid tasklist_id. All _min/_max params use ISO 8601 (e.g. '2026-04-21T00:00:00Z').

get_task

Get a task from a Google task list. Use list_tasks to find valid IDs.

create_task

Create a new task on a Google task list. Use parent to create a subtask, and previous to position it after a sibling. Due dates use ISO 8601.

update_task

Update fields on a Google task. Set status to 'completed' to mark it done. Use list_tasks to find valid IDs.

delete_task

Delete a task from a Google task list permanently. This cannot be undone. Use list_tasks to find valid IDs.

move_task

Move a task to a new position, parent, or task list. Omit parent and previous to move to the top-level first position. Recurring tasks cannot be moved between lists.

clear_completed_tasks

Hide all completed tasks from the specified task list. Hidden tasks can still be retrieved by passing show_hidden=true to list_tasks.

list_tasklists

List the authenticated user's Google task lists. Supports pagination via page_token. A user can have up to 2000 lists.

get_tasklist

Get a Google task list by ID. Use list_tasklists to find valid IDs.

create_tasklist

Create a new Google task list with the given title.

update_tasklist

Update a Google task list's title. Use list_tasklists to find valid IDs.

delete_tasklist

Delete a Google task list permanently. All tasks inside are also deleted. This cannot be undone. Use list_tasklists to find valid IDs.

validate_credential

Validate the Google Tasks access token by listing one task list. Returns success and a short message describing what failed, if anything.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Google Tasks  MCP server

FAQs on using Merge's Google Tasks  MCP server

What is a Google Tasks MCP?

It's an MCP server that lets your agents interact with Google Tasks through tools. Your agents can invoke these tools to list and create tasks, update due dates and status, organize tasks across lists, mark items complete, and more.

Google doesn't offer an MCP server purpose built for Google Tasks, but you can use one from a third-party platform, like Merge Agent Handler.

How can I use the Google Tasks MCP server?

The use cases naturally depend on the agent you've built, but here are a few common ones:

  • Task creation from assigned tickets: When a Linear issue is assigned to a developer, an agent creates a corresponding Google Task in their personal task list with the issue title, priority, and due date, keeping personal to-dos in sync with team work without manual copying
  • Daily standup prep: Each morning, an agent lists all tasks due that day across a user's Google Task lists and posts a prioritized summary to their Slack DM, so they have a clear picture of the day before the standup starts
  • Completion sync from GitHub: When a developer merges a pull request, an agent marks the corresponding Google Task as complete, keeping the task list current without requiring the developer to manually close it
  • Escalation routing: When a Zendesk ticket is escalated to engineering, an agent creates a Google Task for the assigned engineer with the ticket title, customer name, and a direct link, ensuring the action item lands in their personal workflow rather than getting lost in email

What are popular tools for Google Tasks's MCP server?

Here are some of the most commonly used tools:

  • list_tasks: retrieves all tasks within a specified task list, with optional filters for status and due date. Useful for agents that need a snapshot of a user's pending work before generating a summary or taking action
  • create_task: adds a new task to a specified task list with a title, optional notes, and due date. Call this when an agent needs to land an action item in a user's personal workflow from an external trigger
  • update_task: modifies an existing task's title, notes, due date, or status. Good for workflows that keep Google Tasks in sync as conditions change in other systems.
  • complete_task: marks a task as completed. Use this when an agent detects that the underlying work is done in another tool and needs to close the corresponding task without user intervention
  • list_task_lists: returns all task lists for the authenticated user. Helpful when an agent needs to identify which list to create a task in before writing to it
  • delete_task: removes a task from a list permanently. Call this when an agent handles cleanup, such as removing tasks tied to cancelled projects or resolved incidents

What makes Merge Agent Handler's Google Tasks MCP server better than alternative Google Tasks MCP servers?

Building directly against the Google Tasks API is straightforward for a single user, but several things make Merge Agent Handler the better choice at team scale:

  • Enterprise-grade security and DLP: Merge Agent Handler includes built-in data loss prevention controls that let you block or redact sensitive fields before they reach an agent. For Google Tasks, this means you can prevent task notes containing sensitive project details, customer names, or internal identifiers from being surfaced to agents that don't need that context
  • Managed authentication and credentials: Merge handles Google OAuth token storage and refresh on your behalf. You never expose credentials to an agent or deal with tokens expiring mid-workflow
  • Real-time observability and audit trail: Every tool call is logged with the timestamp, tool name, inputs, and response. You can see exactly which tasks an agent created, updated, or deleted across any user's list without adding instrumentation to your own code
  • Tool Packs and controlled access: Tool Packs let you scope exactly which Google Tasks tools each agent can use. A read-only standup agent gets list_tasks and list_task_lists. It never gets access to delete_task or write tools it doesn't need

How can I start using Merge Agent Handler's Google Tasks MCP server?

You can take the following steps:

1. Create or log into your Merge Agent Handler account.

2. Install the Merge CLI by running pipx install merge-api, then run merge configure to link the CLI to your Merge account and merge login to authenticate your session.

3. Register the Agent Handler MCP server with Claude Code by running claude mcp add --transport http agent-handler https://ah-api.merge.dev/mcp, then open Claude Code and run /mcp to confirm agent-handler appears with a connected status.

4. Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose Google Tasks and complete the Google OAuth flow. Merge stores and manages the credentials going forward.

5. Open a Claude Code session and start querying Google Tasks data directly. The first time you use a Google Tasks tool, a Magic Link may appear to complete connector authentication.

If you want to connect Merge Agent Handler's Google Tasks MCP with internal or customer-facing agentic products, you can follow the steps in our docs.

Explore other MCP servers built and managed by Merge

activecampaign
ActiveCampaign
ahrefs
Ahrefs
airtable
Airtable
amadeus
Amadeus
amazon_s3
Amazon S3
amplitude
Amplitude
anaplan
Anaplan
apollo
Apollo
arize
Arize
articulate
Articulate Reach 360
asana
Asana
attio
Attio
aviationstack
Aviationstack
bamboohr
BambooHR
basecamp
Basecamp
biorxiv
bioRxiv
bitbucket
Bitbucket
bitly
Bitly
box
Box
calendly
Calendly
canva
Canva
clickup
ClickUp
clinicaltrials
ClinicalTrials.gov
cloudflare
Cloudflare

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now