日历事件管理服务

通过Model Context Protocol (MCP)与Google Calendar交互,提供日历事件管理、创建和修改工具以及生成日历洞察的提示功能。

  • by thisnick
  • JavaScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 thisnick/google-calendar-mcp

使用说明

谷歌日历MCP服务器

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

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

  • 通过MCP URI进行日历事件管理
  • 用于创建和修改事件的工具
  • 生成日历见解的提示

特性

资源

  • 通过MCP URI访问日历事件
  • 每个活动都有标题、时间、描述和参与者
  • 具有适当mime类型的结构化事件数据

工具

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

鼓励

  • analyze_schedule -生成有关日历的见解
    • 将即将举行的活动作为嵌入式资源
    • 返回LLM分析的结构化提示
  • [添加您已实现的其他提示]

先决条件

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

发展

按照以下说明安装devbox: devbox.sh

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 Cloud凭据:

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

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

调试

由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员,可作为包脚本使用:

npm run inspector

检查器将提供一个URL,用于访问浏览器中的调试工具。