mcpField
G
Google Tasks MCP Server

Google Tasks MCP Server

本地服务
github.com/ktmage生产力280 周前更新

关于 Google Tasks MCP Server

Google Tasks MCP Server 将 Google Tasks 任务管理功能提供给 MCP 客户端,面向希望通过 AI 助手操作任务的用户。它支持查看任务列表、创建任务、标记完成和删除任务。

主要功能

  1. 01列出任务列表
  2. 02查看列表中的任务
  3. 03创建含可选备注和截止时间的任务
  4. 04标记任务完成
  5. 05删除任务

适用场景

  1. 01查看 Google Tasks 中的任务
  2. 02为指定任务列表添加带截止时间的任务
  3. 03完成或删除已有任务

MCP 相关

该 MCP 服务将 Google Tasks API 操作作为工具提供给兼容 MCP 的客户端,例如 Cursor。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Google Tasks MCP Server

通过 Model Context Protocol 集成 AI 助手与 Google Tasks。

AI 助手与 Google Tasks 的 Model Context Protocol 实现。

目次 / 目录

English

Google Tasks MCP Server

通过 Model Context Protocol(MCP)与 Google Tasks API 交互的实现。此服务可让你通过 Cursor 等兼容 MCP 的客户端使用 Google Tasks 任务管理功能。

本项目旨在练习实现 MCP 服务,以便 AI 助手能够通过 MCP 协议使用 Google Tasks 的任务管理功能。

潜在问题

本项目仅用于学习,由于我的知识有限,可能存在我尚未发现的问题。

使用风险由你自行承担。开发者不对可能发生的任何问题负责。

如果你发现任何问题,请创建 Issue,或通过 Pull Request 提出修复建议。详情请参阅下方的“贡献”部分。

贡献

欢迎为本项目贡献。非常感谢提交错误报告、功能建议、拉取请求或以任何其他形式参与。

详情请参阅 CONTRIBUTING.md。

功能

此 MCP 服务提供以下功能:

  • 获取任务列表集合
  • 获取指定任务列表中的任务
  • 创建新任务
  • 将任务标记为已完成
  • 删除任务
设置指南
1. 前置条件
  • Node.js 16 或更高版本
  • npm(随 Node.js 一同安装)
  • Google Cloud Project 账号
2. 项目准备
# Clone the repository (or obtain the project by any method)
git clone <repository URL>
cd mcp-google-tasks

# Install dependencies
npm install
3. 配置 Google Cloud Project
  1. 访问 Google Cloud Console
  2. 创建新项目(或选择现有项目)
  3. 从左侧菜单中选择“APIs & Services” → “Library”
  4. 在搜索框中搜索“Tasks API”
  5. 选择“Google Tasks API”,然后点击“Enable”
4. 创建 OAuth 2.0 凭据
  1. 从左侧菜单中选择“APIs & Services” → “Credentials”
  2. 点击“Create Credentials” → “OAuth client ID”
  3. 选择“Desktop app”作为应用类型
  4. 输入名称(例如“Google Tasks MCP Client”),然后点击“Create”
  5. 下载显示的凭据(JSON 文件)
5. 放置凭据
  1. 将下载的 JSON 文件重命名为 credentials.json
  2. 将此文件放在项目的根目录中(与 package.json 同级)
mcp-google-tasks/
├── src/
├── package.json
├── credentials.json  <- place here
└── ...
6. 构建并运行
# Build TypeScript
npm run build

# Run the server
node build/index.js

首次运行时,会打开浏览器窗口,要求你验证 Google 账号。验证完成后,将生成 token.json 文件,后续运行时会自动使用此令牌。

与 Cursor 集成

要在 Cursor 等兼容 MCP 的 IDE 中使用此服务,请按以下方式配置:

对于 Cursor
  1. 前往 Cursor 的配置目录(通常为 ~/.cursor)
  2. 创建或编辑 mcp.json 文件
{
  "mcpServers": {
    "gtasks": {
      "command": "node",
      "args": [
        "/full/path/mcp-google-tasks/build/index.js"
      ]
    }
  }
}

将 /full/path/ 替换为项目的实际完整路径。 示例:/home/username/projects/mcp-google-tasks/build/index.js

可用工具
list_tasklists

列出所有任务列表。

参数:无

示例:

list_tasklists()
=> Task list collection (JSON format)
list_tasks

列出指定任务列表中的任务。

参数:

  • taskListId:任务列表 ID(可通过 list_tasklists 获取)

示例:

list_tasks(taskListId: "YOUR_TASK_LIST_ID")
=> Tasks in the specified task list (JSON format)
create_task

创建新任务。

参数:

  • taskListId:要添加任务的任务列表 ID
  • title:任务标题
  • notes(可选):任务详细说明
  • due(可选):截止日期/时间(RFC 3339 格式,例如 2023-12-31T23:59:59Z)

示例:

create_task(
  taskListId: "YOUR_TASK_LIST_ID",
  title: "New Task",
  notes: "Task details",
  due: "2023-12-31T23:59:59Z"
)
=> Created task information (JSON format)
complete_task

将任务标记为已完成。

参数:

  • taskListId:任务所属任务列表的 ID
  • taskId:要标记为已完成的任务 ID(可通过 list_tasks 获取)

示例:

complete_task(
  taskListId: "YOUR_TASK_LIST_ID", 
  taskId: "YOUR_TASK_ID"
)
=> Updated task information (JSON format)
delete_task

删除任务。

参数:

  • taskListId:任务所属任务列表的 ID
  • taskId:要删除的任务 ID(可通过 list_tasks 获取)

示例:

delete_task(
  taskListId: "YOUR_TASK_LIST_ID", 
  taskId: "YOUR_TASK_ID"
)
=> Operation success message
故障排除
身份验证错误
Error: Cannot find module '/path/to/mcp-google-tasks/credentials.json'
  • 确认 credentials.json 文件已正确放置在项目根目录中
  • 确认文件名准确无误,为 credentials.json
访问权限错误
Error: invalid_grant
  • 删除 token.json 并重新进行身份验证
  • 检查 Google Cloud Console 中是否已为该项目启用 Google Tasks API
其他错误

详细的错误消息会显示在控制台中,可据此排查问题。

日语

Google Tasks MCP 服务

这是一个使用 Model Context Protocol(MCP)操作 Google Tasks 的服务实现。使用此服务,可通过 Cursor 等兼容 MCP 的客户端使用 Google Tasks 的任务管理功能。

本项目旨在练习实现 MCP(Model Context Protocol)服务。项目目标是利用 MCP 协议,让 AI 助手能够操作 Google Tasks 的任务管理功能。

关于潜在问题

本项目为学习目的而创建,由于我自身知识不足,可能存在尚未发现的问题。

使用本项目时请自行承担风险。对于使用过程中发生的任何问题,开发者概不负责,敬请谅解。

如果发现问题,欢迎创建 Issue,或通过拉取请求提出修复方案。详情请参阅下文的“贡献”部分。

贡献

欢迎为本项目作出贡献。无论是报告错误、提出功能建议,还是提交拉取请求,我们都非常欢迎。

详情请参阅 CONTRIBUTING.md。

功能

此 MCP 服务提供以下功能:

  • 获取任务列表
  • 获取特定任务列表中的任务
  • 创建新任务
  • 将任务标记为已完成
  • 删除任务
设置步骤
1. 前提条件
  • Node.js 16 或更高版本
  • npm(随 Node.js 附带)
  • Google Cloud Project 帐户
2. 准备项目
# リポジトリのクローン(または任意の方法でプロジェクトを取得)
git clone <リポジトリURL>
cd mcp-google-tasks

# 依存パッケージのインストール
npm install
3. 设置 Google Cloud Project
  1. 访问 Google Cloud Console
  2. 创建新项目(或选择现有项目)
  3. 从左侧菜单中选择“API 和服务”→“库”
  4. 在搜索框中输入“Tasks API”,搜索“Google Tasks API”
  5. 选择“Google Tasks API”,然后点击“启用”
4. 创建 OAuth 2.0 凭据
  1. 从左侧菜单中选择“API 和服务”→“凭据”
  2. 点击“创建凭据”→“OAuth 客户端 ID”
  3. 选择“桌面应用”作为应用类型
  4. 输入任意名称(例如:"Google Tasks MCP Client"),然后点击“创建”
  5. 下载显示的凭据(JSON 文件)
5. 放置凭据
  1. 将下载的 JSON 文件重命名为 credentials.json
  2. 将此文件放置在项目根目录中(与 package.json 位于同一层级)
mcp-google-tasks/
├── src/
├── package.json
├── credentials.json  <- ここに配置
└── ...
6. 构建和运行
# TypeScriptのビルド
npm run build

# サーバーの実行
node build/index.js

首次运行时会打开浏览器窗口,提示你使用 Google 帐户进行身份验证。身份验证完成后,会生成 token.json 文件;之后运行时将自动使用此令牌。

配置与 Cursor 的集成

要在 Cursor 等兼容 MCP 的 IDE 中使用此服务,请进行以下设置。

Cursor
  1. 转到 Cursor 的设置目录(通常为 ~/.cursor)
  2. 创建或编辑 mcp.json 文件
{
  "mcpServers": {
    "gtasks": {
      "command": "node",
      "args": [
        "/フルパス/mcp-google-tasks/build/index.js"
      ]
    }
  }
}

请将 /フルパス/ 部分替换为项目的实际完整路径。 例如:/home/username/projects/mcp-google-tasks/build/index.js

可用工具
list_tasklists

列出所有任务列表。

参数:无

示例:

list_tasklists()
=> タスクリスト一覧(JSONフォーマット)
list_tasks

列出特定任务列表中的任务。

参数:

  • taskListId:任务列表的 ID(可通过 list_tasklists 获取)

示例:

list_tasks(taskListId: "YOUR_TASK_LIST_ID")
=> 指定したタスクリスト内のタスク(JSONフォーマット)
create_task

创建新任务。

参数:

  • taskListId:要添加任务的任务列表的 ID
  • title:任务标题
  • notes(可选):任务的详细说明
  • due(可选):截止日期和时间(RFC 3339 格式,例如:2023-12-31T23:59:59Z)

示例:

create_task(
  taskListId: "YOUR_TASK_LIST_ID",
  title: "新しいタスク",
  notes: "タスクの詳細説明",
  due: "2023-12-31T23:59:59Z"
)
=> 作成されたタスクの情報(JSONフォーマット)
complete_task

将任务标记为已完成。

参数:

  • taskListId:任务所属任务列表的 ID
  • taskId:要标记为已完成的任务 ID(可通过 list_tasks 获取)

示例:

complete_task(
  taskListId: "YOUR_TASK_LIST_ID", 
  taskId: "YOUR_TASK_ID"
)
=> 更新されたタスクの情報(JSONフォーマット)
delete_task

删除任务。

参数:

  • taskListId:任务所属任务列表的 ID
  • taskId:要删除的任务 ID(可通过 list_tasks 获取)

示例:

delete_task(
  taskListId: "YOUR_TASK_LIST_ID", 
  taskId: "YOUR_TASK_ID"
)
=> 操作の成功メッセージ
故障排除
身份验证错误
Error: Cannot find module '/path/to/mcp-google-tasks/credentials.json'
  • 确认 credentials.json 文件已正确放置在项目根目录中
  • 确认文件名准确无误,为 credentials.json
访问权限错误
Error: invalid_grant
  • 删除 token.json 并重新进行身份验证
  • 检查 Google Cloud Console 中是否已为该项目启用 Google Tasks API
其他错误

详细的错误消息会显示在控制台中,请根据消息内容进行处理。

评论

支持 Markdown

第一次接触 MCP?

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

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