Google日历SSE服务器

一个通过服务器发送事件(SSE)提供Google日历集成的模型上下文协议(MCP)服务器,使AI模型和应用程序能够与Google日历交互。

  • by gabriel-g2n
  • TypeScript
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 gabriel-g2n/g2n-mcp-gcal-sse

使用说明

G2N MCP谷歌日历SSE服务器

🌎 此README有多种语言版本:

概述

G2N MCP谷歌日历SSE服务器是一种模型上下文协议(MCP)服务器实现,通过服务器发送事件(SSE)提供谷歌日历集成。该服务器将Google日历功能作为工具公开,可供Cursor、Claude和n8n等AI模型和应用程序用于与Google日历交互。

该服务器采用最新的MCP SDK版本构建,在MCP兼容模型和Google日历服务之间提供了强大的集成。

特性

服务器为Google日历管理提供以下MCP工具:

  • list-calendars:列出所有可用日历
  • get-calendar:获取特定日历的详细信息
  • list-events:使用筛选选项列出日历中的事件
  • get-event:获取特定事件的详细信息
  • create-event:创建新的日历事件
  • update-event:更新现有日历事件
  • delete-event:删除日历事件
  • list-colors:列出活动和日历的可用颜色

v1.1.0的新增功能

  • 具有可配置日志级别的综合日志记录系统
  • 用于更好监控的请求/响应日志中间件
  • SSE心跳实现,实现稳定连接
  • 增强的错误处理和调试功能
  • 通过适当的数据目录权限改进了Docker配置
  • 通过更好的令牌管理增强OAuth流
  • 代码重构以提高可维护性

v1.0.1的新增功能

  • 首次稳定发布
  • 支持Docker和Docker Swarm的生产就绪
  • 增强的环境变量配置
  • 针对不同部署场景改进了连接URL
  • 更好的n8n集成文档
  • Traefik配置指南
  • 多平台Docker镜像(amd64、arm64、arm/v7)

入门指南

先决条件

  • 已安装Docker和Docker Compose
  • 启用日历API的谷歌云项目
  • OAuth 2.0客户端ID和客户端密钥

环境变量

服务器使用以下环境变量:

PORT=3001                                # Server port (default: 3001)
PUBLIC_URL=https://your-domain.com       # Public URL for OAuth callbacks
GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}     # Google OAuth Client ID
GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET} # Google OAuth Client Secret
OAUTH_REDIRECT_PATH=/oauth/callback      # OAuth callback path (default: /oauth/callback)

重要提示:

  • 使用Traefik时,请确保将其配置为指向 PORT 环境变量
  • 这对于成功接收Google刷新令牌至关重要
  • 这 PUBLIC_URL 必须可访问互联网,OAuth回调才能工作

身份验证流程

  1. 使用Docker或直接启动服务器
  2. 导航到 /auth 浏览器中的端点
  3. 使用您的Google帐户授予应用程序权限
  4. 授权后,服务器将存储刷新令牌以供连续访问
  5. 服务器将在需要时自动刷新令牌

要撤销访问权限,请使用 /revoke 端点:

curl -X POST https://your-domain.com/revoke

与MCP兼容的应用程序一起使用

连接URL

根据您的部署场景,使用适当的URL格式:

  1. Docker Swarm/n8n内部访问:

    http://[stack-service-name]:3001/sse
    

    示例:如果您的服务被命名 g2n-mcp-gcal-sse 在堆栈中,使用:

    http://g2n-mcp-gcal-sse:3001/sse
    
  2. 外部访问(Cursor、Claude等):

    https://your-domain.com/sse
    
  3. 地方发展:

    http://localhost:3001/sse
    

光标AI

您可以通过在设置中配置MCP连接,将此服务器与Cursor AI一起使用:

  1. 打开光标设置
  2. 使用您的公共域配置MCP服务器URL:
    https://your-domain.com/sse
    
  3. 通过AI命令开始使用Google日历功能

克劳德桌面

对于Claude Desktop:

  1. 导航到“设置”>“MCP”
  2. 使用您的公共URL添加新的MCP连接:
    https://your-domain.com/sse
    
  3. 通过对话访问谷歌日历功能

n8n

  1. 在n8n中,添加一个新的MCP节点
  2. 使用内部服务URL配置MCP节点:
    http://[stack-service-name]:3001/sse
    
  3. 在工作流中使用公开的日历工具

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

关于G2NTech

该项目由以下人员开发和维护 加布里埃尔·奥古斯托 在G2NTech。

支持项目💜

如果你觉得这个项目有用,可以考虑通过PIX支持它:

  • PIX密钥: gabriel@g2ngroup.com