G2N MCP Google Calendar SSE Server

G2N MCP Google Calendar SSE Server

使用 SSE 的 MCP 服务器,用于 Google 日历 API 集成。 (Alternatively, more literally: 用于 Google 日历 API 集成的、带有 SSE 的 MCP 服务器)

gabriel-g2n

云平台
访问服务器

README

G2N MCP Google Calendar SSE 服务器

🌎 此 README 提供多种语言版本:

概述

G2N MCP Google Calendar SSE 服务器是一个模型上下文协议 (MCP) 服务器实现,它通过服务器发送事件 (SSE) 提供 Google Calendar 集成。此服务器将 Google Calendar 功能公开为工具,供 AI 模型和应用程序(如 Cursor、Claude 和 n8n)使用,以与 Google Calendar 交互。

此服务器使用最新的 MCP SDK 版本构建,可在 MCP 兼容模型和 Google Calendar 服务之间提供强大的集成。

功能

该服务器为 Google Calendar 管理提供以下 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
  • 启用了 Calendar API 的 Google Cloud 项目
  • OAuth 2.0 客户端 ID 和客户端密钥

环境变量

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

PORT=3001                                # 服务器端口(默认:3001)
PUBLIC_URL=https://your-domain.com       # OAuth 回调的公共 URL
GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}     # Google OAuth 客户端 ID
GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET} # Google OAuth 客户端密钥
OAUTH_REDIRECT_PATH=/oauth/callback      # OAuth 回调路径(默认:/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
    

Cursor AI

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

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

Claude Desktop

对于 Claude Desktop:

  1. 导航到 Settings > MCP
  2. 使用您的公共 URL 添加新的 MCP 连接:
    https://your-domain.com/sse
    
  3. 通过您的对话访问 Google Calendar 功能

n8n

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

许可证

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

关于 G2NTech

该项目由 G2NTech 的 Gabriel Augusto 开发和维护。

支持项目 💜

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

  • PIX 密钥: gabriel@g2ngroup.com

推荐服务器

contentful-mcp

contentful-mcp

在你的 Contentful Space 中更新、创建、删除内容、内容模型和资源。

精选
TypeScript
Supabase MCP Server

Supabase MCP Server

一个模型上下文协议(MCP)服务器,它提供对 Supabase 管理 API 的编程访问。该服务器允许 AI 模型和其他客户端通过标准化的接口来管理 Supabase 项目和组织。

精选
JavaScript
Azure MCP Server

Azure MCP Server

通过 Claude Desktop 实现与 Azure 服务的自然语言交互,支持资源管理、订阅处理和租户选择,并提供安全身份验证。

官方
本地
TypeScript
Settlemint

Settlemint

利用 SettleMint 的模型上下文协议服务器,无缝地与企业区块链基础设施交互。通过人工智能驱动的助手构建、部署和管理智能合约,从而简化您的区块链开发工作流程,实现最高的效率。

官方
本地
TypeScript
Brev

Brev

在云端运行、构建、训练和部署机器学习模型。

官方
本地
Python
Story Protocol SDK MCP

Story Protocol SDK MCP

这个服务器提供 MCP(模型上下文协议)工具,用于与 Story 的 Python SDK 交互。 功能: * 获取许可条款 * 使用 PIL 条款铸造和注册 IP 资产 * 铸造许可代币 * 向钱包发送 $IP * 通过 Pinata [外部] 上传图像到 ipfs * 通过 Pinata [外部] 上传 IP 和 NFT 元数据

官方
Python
Tembo MCP Server

Tembo MCP Server

一个 MCP 服务器,它使 Claude 能够与 Tembo Cloud 平台 API 交互,从而允许用户通过自然语言管理 Tembo Cloud 资源。

官方
TypeScript
Workers MCP

Workers MCP

一个连接 Claude Desktop 和其他 MCP 客户端到 Cloudflare Workers 的软件包,从而可以通过模型上下文协议,使用自然语言访问自定义功能。

官方
TypeScript
Appwrite MCP Server

Appwrite MCP Server

一个模型上下文协议服务器,允许 AI 助手与 Appwrite 的 API 交互,从而提供管理 Appwrite 项目中数据库、用户、函数、团队和其他资源的工具。

官方
Python
MCP2Lambda

MCP2Lambda

通过 MCP 协议,人工智能模型能够与 AWS Lambda 函数交互,从而在安全的环境中访问私有资源、实时数据和自定义计算。

官方
Python