使用说明

项目简介

本项目 'zcaceres_gtasks-mcp' 是一个基于 Model Context Protocol (MCP) 构建的服务器,它将 Google Tasks 功能集成到 MCP 框架中。通过此服务器,LLM 客户端可以利用预定义的工具来管理 Google Tasks 中的任务,例如搜索、创建、更新、删除和列出任务。同时,任务本身也被视为资源,可以被 LLM 客户端读取和利用。

主要功能点

  • 任务管理工具: 提供 'search', 'list', 'create', 'update', 'delete', 'clear' 等工具,允许 LLM 客户端通过调用这些工具来操作 Google Tasks。
  • 任务资源访问: 将 Google Tasks 中的任务抽象为资源,LLM 客户端可以通过资源 URI ('gtasks:///<task_id>') 读取任务的详细信息,如标题、状态、到期日期、备注等。
  • 标准化 MCP 接口: 遵循 MCP 协议,通过 JSON-RPC 与客户端通信,使用标准的请求和响应格式。
  • Stdio 传输协议: 使用 Stdio 作为默认的传输协议,方便集成到各种 LLM 应用环境中。

安装步骤

  1. 创建 Google Cloud 项目并启用 Google Tasks API:
  2. 配置 OAuth 同意屏幕:
    • OAuth 同意屏幕配置 中,配置 OAuth 同意屏幕。对于测试目的,选择 “内部” 用户类型即可。
    • 添加 'https://www.googleapis.com/auth/tasks' 范围。
  3. 创建 OAuth 客户端 ID:
  4. 下载 OAuth 密钥 JSON 文件:
    • 下载创建好的 OAuth 客户端的 JSON 密钥文件。
    • 将下载的文件重命名为 'gcp-oauth.keys.json' 并放置到仓库根目录下。
  5. 安装依赖并构建项目:
    • 确保已安装 Node.js 和 npm。
    • 克隆或下载此仓库到本地。
    • 在仓库根目录下打开终端,运行 'npm install' 安装项目依赖。
    • 运行 'npm run build' 或 'npm run watch' 构建项目。

服务器配置

以下 JSON 配置信息可用于 MCP 客户端配置此服务器连接:

{
  "mcpServers": {
    "gtasks": {
      "command": "/path/to/node",  // 替换为你的 Node.js 执行路径,例如 /opt/homebrew/bin/node
      "args": [
        "/path/to/zcaceres_gtasks-mcp/dist/index.js" // 替换为你的项目 dist/index.js 文件的绝对路径
      ]
    }
  }
}

参数说明:

  • 'server name': 'gtasks' (服务器名称,客户端使用此名称引用该服务器)
  • 'command': Node.js 的可执行文件路径,用于启动服务器进程。
  • 'args': 启动服务器进程的参数数组,这里指向编译后的 'dist/index.js' 文件。请务必替换为实际的绝对路径。

基本使用方法

  1. 认证并保存凭据:
    • 在终端中,导航到仓库根目录。
    • 运行命令 'npm run start auth' 启动服务器并进入认证流程。
    • 按照提示在浏览器中完成 Google 账号认证。
    • 认证成功后,凭据将保存到仓库根目录下的 '.gtasks-server-credentials.json' 文件中。
  2. 启动 MCP 服务器:
    • 确保已完成认证步骤并生成凭据文件。
    • 在终端中,导航到仓库根目录。
    • 运行命令 'npm run start' 启动 MCP 服务器。
    • 服务器成功启动后,将通过 Stdio 监听 MCP 客户端的请求。
  3. 在 MCP 客户端中使用:
    • 在 MCP 客户端的服务器配置中,添加上面提供的 JSON 配置信息,并根据实际情况修改 'command' 和 'args' 中的路径。
    • 客户端启动后,即可通过 "gtasks" 这个服务器名称来调用 Google Tasks 相关的工具和访问任务资源。 例如,可以使用 'gtasks:search' 工具搜索任务,或使用 'gtasks:///task_id' 资源 URI 读取特定任务的详细信息。

信息

分类

生产力应用