返回市场
谷歌日历-MCP

谷歌日历-MCP

作者:thisnick2 星标更新:2025-03-08

项目介绍

Google Calendar MCP Server

通过Claude Desktop使用模型上下文协议(MCP)与您的Google日历进行交互。

这是一个基于TypeScript的MCP服务器,实现了Google日历集成。它展示了核心的MCP概念,并提供了:

  • 通过MCP URI管理日历事件
  • 创建和修改事件的工具
  • 生成日历洞察的提示

功能

资源

  • 通过MCP URI访问日历事件
  • 每个事件包含标题、时间、描述和参与者
  • 使用正确的MIME类型结构化事件数据

工具

  • create_event - 创建新的日历事件
    • 接收标题、时间和其他事件详情作为参数
    • 直接与Google日历API接口
  • list_events - 查看即将到来的日历事件
  • [添加您实现的其他工具]

提示

  • analyze_schedule - 生成关于您日历的洞察
    • 包括嵌入资源中的即将到来的事件
    • 返回用于LLM分析的结构化提示
  • [添加您实现的其他提示]

预备条件

  • Node.js(v14或更高版本)
  • 启用了日历API的Google云项目
  • OAuth 2.0客户端凭证

开发

按照devbox.sh中的说明安装devbox:

curl -fsSL https://get.jetpack.io/devbox | bash

在项目目录中初始化devbox:

devbox init

启动devbox shell:

devbox shell

安装依赖项:

npm install

构建服务器:

npm run build

开发时自动重建:

npm run watch

安装

要在Claude Desktop中使用,请添加服务器配置:

在MacOS上:~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "Google Calendar": {
      "command": "/path/to/Google Calendar/build/index.js"
    }
  }
}

首次设置

  1. 设置Google云凭证:

    • 访问Google Cloud控制台
    • 创建新项目或选择现有项目
    • 启用Google日历API
    • 创建OAuth 2.0凭证(桌面应用程序类型)
    • 下载客户端密钥JSON文件
    • 将其重命名为.client_secret.json并放置在项目根目录下
  2. 初始认证:

    • 第一次运行服务器时,它会提供一个认证URL
    • 在浏览器中访问该URL
    • 授予请求的权限
    • 复制提供的授权代码
    • 将代码粘贴回CLI提示符

调试

由于MCP服务器通过stdio通信,调试可能会很困难。我们推荐使用MCP Inspector,它作为一个包脚本可用:

npm run inspector

Inspector将提供一个URL,以便在浏览器中访问调试工具。