mcpField
G
gtasks-mcp

gtasks-mcp

本地服务
github.com/alvinjchoi生产力1015 周前更新

关于 gtasks-mcp

gtasks-mcp 是面向 MCP 客户端的 Google Tasks 管理服务,可处理任务列表和任务。它提供分页、层级浏览及跨列表移动等操作。

主要功能

  1. 01搜索与分页列出任务
  2. 02创建、更新和删除任务
  3. 03列出任务列表
  4. 04查看任务父子层级
  5. 05排序、嵌套及跨列表移动
  6. 06清除已完成任务

适用场景

  1. 01查找特定标题或备注的任务
  2. 02批量浏览大型任务列表
  3. 03整理父子任务和顺序
  4. 04将任务移至其他列表

MCP 相关

它作为 MCP 服务向 MCP 客户端提供 Google Tasks 的任务与列表管理工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"alvinjchoi-gtasks": {
"command": "npx",
"args": [
"-y",
"@alvincrave/gtasks-mcp"
],
"env": {
"GOOGLE_CLIENT_ID": "<GOOGLE_CLIENT_ID>",
"GOOGLE_CLIENT_SECRET": "<GOOGLE_CLIENT_SECRET>",
"GOOGLE_REFRESH_TOKEN": "<GOOGLE_REFRESH_TOKEN>"
}
}
}
}
启动命令npx -y @alvincrave/gtasks-mcp
需要配置的环境变量
GOOGLE_CLIENT_IDGoogle OAuth client ID
GOOGLE_CLIENT_SECRET密钥Google OAuth client secret
GOOGLE_REFRESH_TOKEN密钥Google OAuth refresh token with Tasks scope

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@alvincrave/gtasks-mcp0.2.0

工具

9

收录的工具列表 · 更新于 2 周前

参数类型必填说明
querystring是搜索查询
taskListIdstring否要搜索的任务列表 ID。省略时,将搜索所有列表。

详细介绍

Google Tasks MCP 服务

适用于 Google Tasks 的 Model Context Protocol(MCP)服务。通过 Claude Desktop 和其他 MCP 客户端,使用自然语言管理任务列表和任务。

从 zcaceres/gtasks-mcp 分叉而来,提供更完善的身份验证选项、多列表支持、分页和层级工具。

MCP Server npm version MCP Registry License: MIT

注册表名称: io.github.alvinjchoi/gtasks-mcp
npm: @alvincrave/gtasks-mcp

功能

  • 列出和搜索任务(可限定在一个任务列表中)
  • 分页浏览所有任务(不会悄悄限制为 100 个任务)
  • 创建、更新、删除任务,以及清除已完成的任务
  • 查找任务列表(list_task_lists)
  • 查看父子层级(list_with_tree)
  • 重新排序、嵌套任务,或在不同列表间移动任务(move)
  • 通过环境变量、凭据文件或交互式 auth 进行 OAuth2 身份验证
  • 支持 Docker

安装

推荐(Claude Desktop / 任意 MCP 客户端)——运行最新发布的 npm 包:

npx -y @alvincrave/gtasks-mcp

或全局安装:

npm install -g @alvincrave/gtasks-mcp
从源代码安装
git clone https://github.com/alvinjchoi/gtasks-mcp.git
cd gtasks-mcp
npm install
npm run build

设置

选项 A — 环境变量(Claude Desktop)
  1. 创建 Google Cloud 项目并启用 Google Tasks API。
  2. 创建 OAuth 2.0 桌面应用凭据并获取刷新令牌(使用 https://www.googleapis.com/auth/tasks 作用域的 OAuth Playground 即可)。
  3. 配置 Claude Desktop(macOS 上的路径为 ~/Library/Application Support/Claude/claude_desktop_config.json):
{
  "mcpServers": {
    "gtasks": {
      "command": "npx",
      "args": ["-y", "@alvincrave/gtasks-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your_client_id_here",
        "GOOGLE_CLIENT_SECRET": "your_client_secret_here",
        "GOOGLE_REFRESH_TOKEN": "your_refresh_token_here"
      }
    }
  }
}
选项 B — 凭据文件(本地使用 / 与其他 Google MCP 服务共用)
  1. 下载 OAuth 客户端 JSON(gcp-oauth.keys.json)。
  2. 进行一次身份验证:
export GTASKS_CREDENTIALS_PATH=/path/to/gcp-oauth.keys.json
export GTASKS_TOKEN_PATH=/path/to/.gtasks-server-credentials.json
node dist/index.js auth
  1. 使用相同的环境变量运行服务(或将 gcp-oauth.keys.json 放在项目根目录并使用默认值)。

也接受以下别名:

用途首选项别名
OAuth 客户端密钥GTASKS_CREDENTIALS_PATHGOOGLE_OAUTH_KEYS_PATH
已保存的令牌GTASKS_TOKEN_PATHGOOGLE_TASKS_CREDENTIALS_PATH
选项 C — 主目录配置文件

创建 ~/.gtasks-credentials.json:

{
  "clientId": "your_client_id",
  "clientSecret": "your_client_secret",
  "refreshToken": "your_refresh_token"
}

工具

工具描述
search按标题/备注搜索任务。可选参数 taskListId。
list列出任务(所有列表,或通过 taskListId 指定一个列表)。支持完整分页。
list_task_lists列出任务列表的名称和 ID。
list_with_tree显示一个列表的树状视图(父子关系、按位置排序)。
move重新排序、嵌套/取消嵌套任务,或在不同列表间移动任务。
create创建任务(必需参数为 title;可选参数为备注、截止日期/taskListId)。
update更新任务(仅修改已提供的字段)。
delete删除任务。
clear清除列表中的已完成任务。

使用示例

show my task lists
list tasks in list <id>
search for tasks containing "meeting"
create a task named "Prepare presentation" due 2026-07-20
show the task tree for list <id>
move task <id> under parent <parentId>
mark task <id> completed

Docker

docker build -t gtasks-mcp .
docker run -i \
  -e GOOGLE_CLIENT_ID=your_client_id \
  -e GOOGLE_CLIENT_SECRET=your_client_secret \
  -e GOOGLE_REFRESH_TOKEN=your_refresh_token \
  gtasks-mcp

开发

npm install
npm run build
npm start

身份验证检查 / 交互式登录:

npm run build
node dist/index.js auth

安全说明

  • 将刷新令牌视同密码保管
  • 优先使用环境变量或已忽略的凭据文件——切勿提交凭据
  • 如果凭据泄露,请轮换凭据

贡献者

  • ArtyMcLabin — 分页、taskListId 筛选、list_task_lists、list_with_tree、move 和基于文件的身份验证(#1)
  • zcaceres — 原始 Google Tasks MCP 服务
  • alvinjchoi — 分叉项目维护、Smithery/npm 打包

参见 CONTRIBUTORS.md。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。