G2N MCP Google Calendar SSE Server logo

G2N MCP Google Calendar SSE Server

by gabriel-g2n

The G2N MCP Google Calendar SSE Server provides Google Calendar integration through Server-Sent Events (SSE). It exposes Google Calendar functionality as tools that can be used by AI models and applications to interact with Google Calendar.

View on GitHub

Last updated: N/A

What is G2N MCP Google Calendar SSE Server?

The G2N MCP Google Calendar SSE Server is a Model Context Protocol (MCP) server implementation that provides Google Calendar integration through Server-Sent Events (SSE). It allows AI models and applications to interact with Google Calendar.

How to use G2N MCP Google Calendar SSE Server?

To use the server, you need to have Docker and Docker Compose installed, a Google Cloud project with the Calendar API enabled, and OAuth 2.0 Client ID and Client Secret. Configure the environment variables, start the server, authenticate through the /auth endpoint, and then use the provided connection URLs with MCP-compatible applications like Cursor, Claude, and n8n.

Key features of G2N MCP Google Calendar SSE Server

  • List all available calendars

  • Get details of a specific calendar

  • List events from a calendar with filtering options

  • Get detailed information about a specific event

  • Create a new calendar event

  • Update an existing calendar event

  • Delete a calendar event

  • List available colors for events and calendars

Use cases of G2N MCP Google Calendar SSE Server

  • Integrating Google Calendar with AI models like Cursor and Claude

  • Automating calendar tasks in n8n workflows

  • Building custom applications that interact with Google Calendar

  • Providing a standardized interface for accessing Google Calendar data

FAQ from G2N MCP Google Calendar SSE Server

What is the purpose of the PUBLIC_URL environment variable?

The PUBLIC_URL is the internet-accessible URL of your server. It's crucial for OAuth callbacks to work correctly, allowing Google to redirect the user back to your application after granting permissions.

How do I configure Traefik to work with this server?

When using Traefik, ensure it points to the port specified in the PORT environment variable. This is essential for successfully receiving the Google refresh token.

What are the different connection URLs for?

The connection URLs vary depending on your deployment scenario. Use the internal URL for Docker Swarm/n8n, the external URL for Cursor/Claude, and the local URL for development.

How do I revoke access to my Google Calendar?

You can revoke access by using the /revoke endpoint. Send a POST request to https://your-domain.com/revoke.

What is the purpose of the SSE heartbeat implementation?

The SSE heartbeat implementation ensures stable connections by periodically sending a signal to keep the connection alive. This prevents the connection from timing out, especially in environments with network instability.