返回市场
二网关-麦普-日历-服务器扩展

二网关-麦普-日历-服务器扩展

作者:gabriel-g2n7 星标更新:2025-04-05

项目介绍

技术文档摘要

G2N MCP Google Calendar SSE Server

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

概述

G2N MCP Google Calendar SSE Server 是一个通过 Server-Sent Events (SSE) 实现 Google 日历集成的 Model Context Protocol (MCP) 服务器实现。此服务器将 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
  • 启用了 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

您可以使用此服务器与 Cursor AI 配合,通过设置 MCP 连接来配置:

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

Claude Desktop

对于 Claude Desktop:

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

n8n

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

许可证

本项目采用 MIT 许可证 - 详情见 LICENSE 文件。

关于 G2NTech

本项目由 Gabriel Augusto 在 G2NTech 开发和维护。

支持项目 💜

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

  • PIX Key: gabriel@g2ngroup.com