mcpField
G
Google Tasks MCP Server

Google Tasks MCP Server

本地服务
github.com/arpitbatra123生产力515 周前更新

关于 Google Tasks MCP Server

Google Tasks MCP Server 是一个 MCP 服务,将 MCP 客户端与 Google Tasks 连接起来,可直接在 Claude Desktop、Cursor、Codex 等客户端中管理任务列表和任务。它面向需要在 AI 对话中处理待办事项的用户,并提供持久化的 OAuth 凭据存储。

主要功能

  1. 01任务列表的增删改查
  2. 02任务的增删改查与完成标记
  3. 03任务移动与跨列表调整
  4. 04清除已完成任务
  5. 05OAuth 凭据本地保存与自动刷新

适用场景

  1. 01在 Claude Desktop 中创建和整理每日待办
  2. 02通过 AI 对话批量更新或清理任务列表
  3. 03在 Codex 或 Cursor 中查看并标记任务完成

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 list-tasklists、create-task、complete-task 等工具,用于操作 Google Tasks 数据。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Google Tasks MCP 服务

此模型上下文协议(MCP)服务为 MCP 客户端与 Google Tasks 搭建桥梁,让你可以直接通过 Claude Desktop、Cursor 和 Codex 等客户端管理任务列表和任务。

说明

本项目中的所有代码(少量修改除外)都是 "vibe coded" 的——根据我的指示,由 Claude/Copilot 生成。

功能

此 MCP 服务提供以下功能:

任务列表管理
  • list-tasklists - 列出所有任务列表
  • get-tasklist - 获取特定任务列表的详细信息
  • create-tasklist - 创建新的任务列表
  • update-tasklist - 更新现有任务列表
  • delete-tasklist - 删除任务列表
任务管理
  • list-tasks - 列出任务列表中的所有任务,包括分页结果
  • get-task - 获取特定任务的详细信息
  • create-task - 创建新任务
  • update-task - 更新现有任务
  • delete-task - 删除任务
  • complete-task - 将任务标记为已完成
  • move-task - 移动任务(重新排序、更改父级,或在不同任务列表之间移动)
  • clear-completed-tasks - 清除列表中的所有已完成任务

设置说明

1. 创建 Google Cloud 项目并启用 API
  1. 前往 Google Cloud Console
  2. 创建新项目
  3. 前往“APIs & Services” > “Library”
  4. 搜索“Google Tasks API”并启用
  5. 前往“APIs & Services” > “Credentials”
  6. 点击“Create Credentials” > “OAuth Client ID”
  7. 配置 OAuth 同意屏幕(个人使用时选择 External 即可)
  8. 在 Application Type 中选择“Web application”
  9. 添加“http://localhost:3000/oauth2callback”作为授权重定向 URI
  10. 创建客户端 ID 和密钥
2. 配置环境变量

在此项目目录中创建 .env 文件:

GOOGLE_CLIENT_ID=your_client_id_here
GOOGLE_CLIENT_SECRET=your_client_secret_here
GOOGLE_REDIRECT_URI=http://localhost:3000/oauth2callback

环境变量:

  • GOOGLE_CLIENT_ID(必填)- Google OAuth 客户端 ID
  • GOOGLE_CLIENT_SECRET(必填)- Google OAuth 客户端密钥
  • GOOGLE_REDIRECT_URI(可选)- OAuth 重定向 URI(默认为 http://localhost:3000/oauth2callback)

注意: 服务会在启动时验证是否已设置 GOOGLE_CLIENT_ID 和 GOOGLE_CLIENT_SECRET,如果缺失或无效,会显示明确的错误消息并启动失败。

3. 构建服务
  1. 安装依赖:
npm install
  1. 构建服务:
npm run build
4. 配置 MCP 客户端
Codex

将服务添加到 ~/.codex/config.toml:

[mcp_servers.google-tasks]
command = "zsh"
args = ["-lc", "cd /path/to/google-tasks-mcp && exec node build/index.js"]

将 /path/to/google-tasks-mcp 替换为此项目的路径,然后重启 Codex。

验证服务是否已注册:

codex mcp list
codex mcp get google-tasks
Claude for Desktop
  1. 安装 Claude for Desktop
  2. 打开 Claude 配置文件:
    • MacOS:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows:%APPDATA%\Claude\claude_desktop_config.json
  3. 添加 Google Tasks MCP 服务配置:
{
  "mcpServers": {
    "google-tasks": {
      "command": "node",
      "args": ["/path/to/google-tasks-mcp/build/index.js"]
    }
  }
}

将路径替换为你自己的路径,然后重启 Claude for Desktop。

身份验证流程

首次使用 Google Tasks MCP 服务时:

  1. 使用 authenticate 工具获取授权 URL
  2. 在浏览器中访问该 URL,并使用 Google 账号登录
  3. 授权后,你会在浏览器页面上收到一个代码
  4. 使用 set-auth-code 工具并提供此代码,以完成身份验证
  5. 现在,你可以使用所有其他工具与 Google Tasks 交互

注意: 你的身份验证令牌(包括刷新令牌)会自动保存到 ~/.config/google-tasks-mcp/credentials.json,并设置受限权限(600)。这意味着:

  • 只需进行一次身份验证——凭据会在服务重启后保留
  • 自动刷新令牌——访问令牌过期时(通常为 1 小时后),会使用保存的刷新令牌自动刷新
  • 无需重新进行身份验证——完成初始设置后,除非撤销访问权限或删除凭据文件,否则无需再次进行身份验证

要求

  • Node.js 20+(参见 package.json 中的 engines)
  • 兼容 MCP 的客户端
  • 已启用 Tasks API 的 Google Cloud 项目

实现特性

此 MCP 服务包含以下改进:

  • 持久化令牌存储——身份验证凭据会保存到磁盘(~/.config/google-tasks-mcp/credentials.json),并设置受限权限,因此只需进行一次身份验证
  • 环境变量验证——启动时会验证必需的凭据是否已配置,并提供清晰的错误消息
  • 自动刷新令牌——OAuth 令牌过期时会自动刷新,无需在活动会话期间或重启后重新进行身份验证
  • 增强的输入验证——全面验证所有输入,包括 ID 格式、字符串长度和 RFC 3339 日期格式
  • HTML 清理——对 OAuth 回调响应进行清理,以防止 XSS 漏洞
  • 平稳关闭——收到 SIGINT/SIGTERM 信号时妥善清理资源
  • 类型安全——整个代码库均具备完整的 TypeScript 类型安全性,并使用恰当的接口
  • 可配置的重定向 URI——可通过 GOOGLE_REDIRECT_URI 环境变量自定义 OAuth 重定向 URI

截图

Claude Desktop

Claude Desktop 截图

Cursor

Cursor 截图

许可证

此项目仅用于演示。使用风险由你自行承担。

评论

支持 Markdown

第一次接触 MCP?

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

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