# Google Tasks — Pipedream Connect

> Use Google Tasks to keep track of important to-dos that sync across all your devices.

- API slug: `google_tasks` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: Productivity
- Website: https://developers.google.com/tasks
- Managed OAuth scopes: `https://www.googleapis.com/auth/tasks` · `email` · `profile`
- This page (HTML): https://pipedream.com/apps/google-tasks
- Tools: 12 actions · 2 triggers

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: google_tasks`

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "google_tasks",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// e.g. run Complete Task:
const result = await mcp.callTool({
  name: "google_tasks-complete-task",
  arguments: {
    taskListId: "Task List",
    taskId: "Task",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Google Tasks endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://www.googleapis.com/tasks/v1/users/@me/lists

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vdGFza3MvdjEvdXNlcnMvQG1lL2xpc3Rz?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "google_tasks-complete-task",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    google_tasks: { authProvisionId: "apn_xxxxxxx" },
    taskListId: "Task List",
    taskId: "Task",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (12)

### `google_tasks-complete-task` — Complete Task (Write)

Marks an existing task as completed by setting its status to completed. Use this action when you want to complete a task without changing its title, notes, due date, or other properties. To modify those fields, use the Update Task action instead. See the documentation

Full schema: https://pipedream.com/apps/google-tasks/actions/complete-task.md

### `google_tasks-create-subtask` — Create Subtask (Write)

Creates a new subtask under an existing parent task. Use this action when you want to organize related work into a task hierarchy while keeping the parent task unchanged. To create a top-level task instead, use the Create Task action. See the documentation

Full schema: https://pipedream.com/apps/google-tasks/actions/create-subtask.md

### `google_tasks-create-task` — Create Task (Write)

Creates a new task and adds it to the authenticated user's task lists. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/create-task.md

### `google_tasks-create-task-list` — Create Task List (Write)

Creates a new task list and adds it to the authenticated user's task lists. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/create-task-list.md

### `google_tasks-delete-task` — Delete Task (Write)

Deletes the authenticated user's specified task. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/delete-task.md

### `google_tasks-delete-task-list` — Delete Task List (Write)

Deletes the authenticated user's specified task list. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/delete-task-list.md

### `google_tasks-list-task-lists` — List Task Lists (Read-only)

Lists the authenticated user's task lists. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/list-task-lists.md

### `google_tasks-list-tasks` — List Tasks (Read-only)

Returns all tasks in the specified task list. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/list-tasks.md

### `google_tasks-move-task` — Move Task (Write)

Moves an existing task to a different position, parent task, or task list. Use this action to reorganize your task hierarchy or reorder tasks without modifying the task's title, notes, due date, or completion status. To update those properties, use the Update Task action instead. See the…

Full schema: https://pipedream.com/apps/google-tasks/actions/move-task.md

### `google_tasks-search-tasks` — Search Tasks (Read-only)

Searches tasks across all task lists using a keyword, due date, or both - at least one of Keyword or Due Date must be provided. Keyword matches against both the task title and notes. Completed and deleted tasks are excluded unless Show Completed / Show Deleted are set. Use this action to find tasks…

Full schema: https://pipedream.com/apps/google-tasks/actions/search-tasks.md

### `google_tasks-update-task` — Update Task (Write)

Updates the authenticated user's specified task. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/update-task.md

### `google_tasks-update-task-list` — Update Task List (Write)

Updates the authenticated user's specified task list. See the docs here

Full schema: https://pipedream.com/apps/google-tasks/actions/update-task-list.md

## Triggers (2)

### `google_tasks-new-task-added` — New Task Added (Polling)

Emit new event for each task added to Google Tasks. See the documentation

Full schema: https://pipedream.com/apps/google-tasks/triggers/new-task-added.md

### `google_tasks-new-task-updated` — New Task Updated (Polling)

Emit new event for each task added or updated to Google Tasks. See the documentation

Full schema: https://pipedream.com/apps/google-tasks/triggers/new-task-updated.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
