- Home
- MCP servers
- Google Calendar
Google Calendar
- javascript
1
GitHub Stars
javascript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"wanthigh-google-calendar-mcp-server": {
"command": "google-calendar-mcp",
"args": [
"--credentials",
"/Users/YOUR_USERNAME/.google-calendar-mcp/credentials.json"
]
}
}
}You can manage Google Calendar events from your MCP-enabled client with this server. It supports creating, updating, deleting, listing, and searching events, plus batch operations and enterprise-grade retry handling to keep your calendar in sync even when facing API hiccups.
How to use
You will run a local MCP server that connects to Google Calendar and exposes a set of tools your MCP client can call. Typical workflows include creating events, updating existing ones, deleting obsolete entries, listing events in a time range, or searching for specific events by keyword. You can also perform batch operations to process several events at once. The server handles OAuth2 authentication and can use service accounts if needed. In your Claude setup, point the MCP client to the local server you run and use the available operations to manage your calendar.
How to install
Prerequisites: Node.js and npm must be installed on your system.
Install the MCP server globally using npm.
npm install -g github:wanthigh/google-calendar-mcp-server
Set up Google Calendar API credentials in your Google Cloud project. Enable the Google Calendar API and create OAuth 2.0 Client IDs for a Desktop application. Download the credentials JSON file and save it to your config directory.
Create a local config folder and place your credentials.json file there.
mkdir ~/.google-calendar-mcp
# Save your downloaded credentials.json to ~/.google-calendar-mcp/credentials.json
Add the MCP server configuration to Claude Desktop or Claude Code so your client can reach the local server.
{
"mcpServers": {
"google-calendar": {
"command": "google-calendar-mcp",
"args": ["--credentials", "/Users/YOUR_USERNAME/.google-calendar-mcp/credentials.json"]
}
}
}
On Windows, adjust the user path to match Windows conventions, for example using C:\Users\YOUR_USERNAME instead of /Users/YOUR_USERNAME.
Additional sections
Configuration details and security notes.
First run and authorization. Restart Claude after configuring the MCP server. The first time you invoke a calendar action, you will be prompted to authorize access in your browser.
If you ever need to manually authorize, you can run the MCP CLI directly with your credentials.
Troubleshooting
Authentication failed: verify the credentials.json path and complete the OAuth flow in your browser.
Calendar not found: ensure you are using the correct calendar ID and, if using a service account, share the calendar with the service account email.
Rate limit exceeded: the server includes retry with exponential backoff. If needed, reduce batch sizes.
License and support
MIT License. For issues, use GitHub Issues to get help.
Available tools
create_event
Create a new calendar event with specified details such as title, time, and location.
update_event
Update an existing calendar event by ID with new properties like time, description, or attendees.
delete_event
Delete a calendar event by its ID from the calendar.
list_events
List events within a specified time range, with optional filters.
search_events
Search events by keyword or metadata within your calendar.
batch_create_events
Create multiple events in a single batch operation to improve throughput.
batch_update_events
Update multiple events in a single batch operation.
batch_delete_events
Delete multiple events in a single batch operation.