
G2N MCP Google Calendar SSE Server
MCP server with SSE for Google Calendar API integration
What is G2N MCP Google Calendar SSE Server?
The G2N MCP Google Calendar SSE Server is a Model Context Protocol (MCP) server that integrates with the Google Calendar API using Server-Sent Events (SSE). It allows AI models and applications to interact with Google Calendar functionalities seamlessly.
How to use G2N MCP Google Calendar SSE Server?
To use the server, set up a Google Cloud project with the Calendar API enabled, configure the necessary environment variables, and start the server using Docker. You can then connect to the server using the appropriate URL format for your deployment scenario.
Key features of G2N MCP Google Calendar SSE Server?
- List, get, create, update, and delete calendar events.
- List available calendars and their colors.
- Supports Docker and Docker Swarm for easy deployment.
- Provides robust integration with MCP-compatible applications like Cursor and n8n.
Use cases of G2N MCP Google Calendar SSE Server?
- Automating calendar event management through AI applications.
- Integrating Google Calendar functionalities into workflows in n8n.
- Enhancing productivity tools with calendar features via AI commands.
FAQ from G2N MCP Google Calendar SSE Server?
-
What is required to run the server?
You need Docker, a Google Cloud project with Calendar API enabled, and OAuth 2.0 credentials. -
Can I use this server with any AI model?
Yes, it is designed to work with MCP-compatible models like Cursor and Claude. -
Is there any support for deployment?
Yes, the server includes guidelines for Docker deployment and Traefik configuration.
G2N MCP Google Calendar SSE Server
🌎 This README is available in multiple languages:
- 🇺🇸 English
- 🇧🇷 Portuguese
Overview
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). This server exposes Google Calendar functionality as tools that can be used by AI models and applications like Cursor, Claude, and n8n to interact with Google Calendar.
Built with the latest MCP SDK version, this server provides robust integration between MCP-compatible models and Google Calendar services.
Features
The server provides the following MCP tools for Google Calendar management:
list-calendars
: List all available calendarsget-calendar
: Get details of a specific calendarlist-events
: List events from a calendar with filtering optionsget-event
: Get detailed information about a specific eventcreate-event
: Create a new calendar eventupdate-event
: Update an existing calendar eventdelete-event
: Delete a calendar eventlist-colors
: List available colors for events and calendars
What's New in v1.1.0
- Comprehensive logging system with configurable log levels
- Request/response logging middleware for better monitoring
- SSE heartbeat implementation for stable connections
- Enhanced error handling and debugging capabilities
- Improved Docker configuration with proper data directory permissions
- Enhanced OAuth flow with better token management
- Code refactoring for better maintainability
What's New in v1.0.1
- First stable release
- Production-ready with Docker and Docker Swarm support
- Enhanced environment variables configuration
- Improved connection URLs for different deployment scenarios
- Better documentation for n8n integration
- Traefik configuration guidelines
- Multi-platform Docker images (amd64, arm64, arm/v7)
Getting Started
Prerequisites
- Docker and Docker Compose installed
- Google Cloud project with Calendar API enabled
- OAuth 2.0 Client ID and Client Secret
Environment Variables
The server uses the following environment variables:
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)
Important Notes:
- When using Traefik, make sure to configure it to point to the port specified in the
PORT
environment variable - This is crucial for successfully receiving the Google refresh token
- The
PUBLIC_URL
must be internet-accessible for OAuth callbacks to work
Authentication Flow
- Start the server using Docker or directly
- Navigate to the
/auth
endpoint in your browser - Grant permissions to the application using your Google account
- After authorization, the server will store refresh tokens for continuous access
- The server will automatically refresh tokens when needed
To revoke access, use the /revoke
endpoint:
curl -X POST https://your-domain.com/revoke
Usage with MCP-Compatible Applications
Connection URLs
Depending on your deployment scenario, use the appropriate URL format:
-
Docker Swarm / n8n internal access:
http://[stack-service-name]:3001/sse
Example: If your service is named
g2n-mcp-gcal-sse
in the stack, use:http://g2n-mcp-gcal-sse:3001/sse
-
External access (Cursor, Claude, etc.):
https://your-domain.com/sse
-
Local development:
http://localhost:3001/sse
Cursor AI
You can use this server with Cursor AI by configuring the MCP connection in your settings:
- Open Cursor settings
- Configure the MCP server URL using your public domain:
https://your-domain.com/sse
- Start using Google Calendar features through AI commands
Claude Desktop
For Claude Desktop:
- Navigate to Settings > MCP
- Add a new MCP connection with your public URL:
https://your-domain.com/sse
- Access Google Calendar functionality through your conversations
n8n
- In n8n, add a new MCP node
- Configure the MCP node with the internal service URL:
http://[stack-service-name]:3001/sse
- Use the exposed calendar tools in your workflows
License
This project is licensed under the MIT License - see the LICENSE file for details.
About G2NTech
This project is developed and maintained by Gabriel Augusto at G2NTech.
Support the Project 💜
If you find this project useful, consider supporting it via PIX:
- PIX Key:
gabriel@g2ngroup.com