A Model Context Protocol (MCP) server for Google Calendar integration in Claude Desktop with auto authentication support. This server enables AI assistants to manage Google Calendar through natural language interactions.
Features
Create calendar events with title, description, location, and attendees
Update existing calendar events
Delete calendar events
Retrieve event details
List events within a specified time range
Search for events by keyword
List all available calendars
Support for natural language date/time input (e.g., "tomorrow at 2pm", "next monday")
Full integration with Google Calendar API
Simple OAuth2 authentication flow with auto browser launch
Support for both Desktop and Web application credentials
Global credential storage for convenience
Installation & Authentication
Installing Manually
Create a Google Cloud Project and obtain credentials:
a. Create a Google Cloud Project:
Enable the Google Calendar API for your project
b. Create OAuth 2.0 Credentials:
Go to "APIs & Services" > "Credentials"
Click "Create Credentials" > "OAuth client ID"
Choose either "Desktop app" or "Web application" as application type
Give it a name and click "Create"
For Web application, add http://localhost:3000/oauth2callback to the authorized redirect URIs
Download the JSON file of your client's OAuth keys
Rename the key file to gcp-oauth.keys.json
Run Authentication:
You can authenticate in two ways:
a. Global Authentication (Recommended):
# First time: Place gcp-oauth.keys.json in your home directory's .calendar-mcp foldermkdir -p ~/.calendar-mcpmv gcp-oauth.keys.json ~/.calendar-mcp/# Run authentication from anywherenpx @nchufa/calendar auth
b. Local Authentication:
# Place gcp-oauth.keys.json in your current directory# The file will be automatically copied to global confignpx @nchufa/calendar auth
The authentication process will:
Look for gcp-oauth.keys.json in the current directory or ~/.calendar-mcp/
If found in current directory, copy it to ~/.calendar-mcp/
Open your default browser for Google authentication
Save credentials as ~/.calendar-mcp/credentials.json
Note:
After successful authentication, credentials are stored globally in ~/.calendar-mcp/ and can be used from any directory
Both Desktop app and Web application credentials are supported
For Web application credentials, make sure to add http://localhost:3000/oauth2callback to your authorized redirect URIs
Configure in Claude Desktop:
Add the following to your Claude Desktop configuration file: