t

thisnick

app-automationcalendar-management

317 查看 · 2026-07-07 更新

Google Calendar MCP 服务器

通过 Claude Desktop 使用 Model Context Protocol (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 Cloud 项目
  • OAuth 2.0 客户端凭据

开发

按照 devbox.sh 上的说明安装 devbox bash curl -fsSL https://get.jetpack.io/devbox | bash

在项目目录中初始化 devbox: bash devbox init

启动 devbox shell: bash devbox shell

安装依赖项: bash npm install

构建服务器: bash npm run build

开发时自动重建: bash npm run watch

安装

要与 Claude Desktop 一起使用,请添加服务器配置:

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

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

首次设置

  1. 设置 Google Cloud 凭据:

    • 前往 Google Cloud Console
    • 创建一个新项目或选择一个现有项目
    • 启用 Google 日历 API
    • 创建 OAuth 2.0 凭据(桌面应用程序类型)
    • 下载客户端密钥 JSON 文件
    • 将其重命名为 .client_secret.json 并放置在项目根目录中
  2. 初始身份验证:

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

调试

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

bash npm run inspector

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

服务配置

[{'mcpServers': {'Google Calendar': {'command': '/path/to/Google Calendar/build/index.js'}}}]

来源