google-calendar-mcp

google-calendar-mcp

3.4

This MCP server provides integration with Google Calendar, allowing Claude to view, create, and manage calendar events through a standardized interface.

The Google Calendar MCP Server is designed to facilitate seamless integration with Google Calendar, enabling users to manage their calendar events efficiently. By leveraging the Google Calendar API, this server allows for operations such as listing available calendars, viewing events, creating new events, updating existing ones, and deleting events. The server requires Node.js 16 or higher and a Google Cloud project with the Calendar API enabled. Users must also set up OAuth 2.0 credentials to authenticate and authorize access to their Google Calendar data. The server is built using TypeScript and can be easily integrated into existing systems by updating the Claude MCP settings file. The authentication process is straightforward, involving a one-time OAuth authentication that securely stores tokens for future use. This server is ideal for users looking to automate and streamline their calendar management tasks.

Features

  • List available calendars
  • List events from a calendar
  • Create new calendar events
  • Update existing events
  • Delete events

MCP Tools

  • list-calendars: List all available calendars
  • list-events: List events from a specific calendar
  • create-event: Create a new calendar event
  • update-event: Update an existing calendar event
  • delete-event: Delete a calendar event

Usage with Different Platforms

Node.js


{
  "github.com/pashpashpash/google-calendar-mcp": {
    "command": "node",
    "args": ["C:/Users/ralph/Documents/Cline/MCP/google-calendar-mcp/build/index.js"],
    "env": {},
    "disabled": false,
    "autoApprove": []
  }
}

Frequently Asked Questions

What should I do if the OAuth token expires?

You must re-authenticate if the app is in testing mode, as the OAuth token expires after 7 days.

How do I resolve authentication errors?

Ensure that the gcp-oauth.keys.json file is correctly formatted and placed in the project root.

What if there are port conflicts during authentication?

The authentication server tries ports 3000-3004; ensure at least one of these ports is available.