Google Calendar MCP Server
by ymello
An implementation of the Model Context Protocol (MCP) for Google Calendar that allows interaction with calendar events through CLI or Server-Sent Events (SSE). It provides functionalities to manage Google Calendar events programmatically.
Last updated: N/A
What is Google Calendar MCP Server?
The Google Calendar MCP Server is a Node.js application that acts as a bridge between MCP clients and the Google Calendar API. It allows users to list, create, update, delete, and find available times in their Google Calendar using a command-line interface (CLI) or Server-Sent Events (SSE).
How to use Google Calendar MCP Server?
To use the server, you need to configure your Google OAuth 2.0 credentials in the .env
file. You can then run the server in HTTP/SSE mode or CLI mode using npm run start:http
or npm run start:stdio
, respectively. For integration with MCP clients like Claude Desktop, you need to configure the client to point to the server's endpoints or execute the CLI commands.
Key features of Google Calendar MCP Server
List calendar events
Create new events
Update existing events
Delete events
Find available times
Use cases of Google Calendar MCP Server
Automating calendar event management
Integrating Google Calendar with MCP clients
Building custom calendar applications
Scheduling meetings programmatically
Retrieving calendar information via CLI
FAQ from Google Calendar MCP Server
How do I get a Google Refresh Token?
How do I get a Google Refresh Token?
You can use the provided script getToken.js
to obtain a refresh token from Google. Run the script with node getToken.js
and follow the instructions in your browser.
What are the prerequisites for running the server?
What are the prerequisites for running the server?
You need Node.js 18 or higher, a Google account with access to the Google Calendar API, and OAuth 2.0 credentials from the Google Cloud Console.
How do I configure the server?
How do I configure the server?
Copy the .env.example
file to .env
and configure your Google OAuth 2.0 credentials in the .env
file.
How do I run the server in HTTP/SSE mode?
How do I run the server in HTTP/SSE mode?
Run the command npm run start:http
. This will start the server on port 3334 (default).
How do I integrate this server with Claude Desktop?
How do I integrate this server with Claude Desktop?
Add the provided configuration to the claude_desktop_config.json
file, ensuring the correct paths and environment variables are set.