Google Calendar MCP Server

by masa1023

297 downloads
Not rated
GitHub

Description

# Google Calendar MCP Server A Model Context Protocol (MCP) server that provides access to Google Calendar data. ## Features - List available Google Calendars - Find available time slots in a calendar - Get upcoming events from a calendar ## Prerequisites - Python 3.9+ - Google…

About

# Google Calendar MCP Server A Model Context Protocol (MCP) server that provides access to Google Calendar data. ## Features - List available Google Calendars - Find available time slots in a calendar - Get upcoming events from a calendar ## Prerequisites - Python 3.9+ - Google Cloud project with Calendar API enabled…

Details

Author
masa1023
Downloads
297
Categories
Productivity

- List all available Google Calendars.
- Find available time slots in a calendar.
- Get upcoming events from a calendar.
- Configurable search horizon and slot duration.
- OAuth2-based authentication with Google Calendar API.
- Works with any MCP-compatible client.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Google Calendar MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install the Python dependencies with pip install -r requirements.txt, then run python setup_credentials.py to authenticate with Google. Start the server with python google_calendar_server.py. For use with Claude Desktop, configure the MCP server entry with the full path to the script and set the GOOGLE_TOKEN_FILE environment variable.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "google calendar mcp server": {
            "google-calendar": {
                "command": "python",
                "args": [
                    "/full/path/to/google_calendar_server.py"
                ],
                "env": {
                    "GOOGLE_TOKEN_FILE": "/path/to/token/file.json"
                }
            }
        }
    }
}

McpServers

{
    "google-calendar": {
        "command": "python",
        "args": [
            "/full/path/to/google_calendar_server.py"
        ],
        "env": {
            "GOOGLE_TOKEN_FILE": "/path/to/token/file.json"
        }
    }
}

Google Calendar MCP Server

A Model Context Protocol (MCP) server that provides access to Google Calendar data.

Features

- List available Google Calendars
- Find available time slots in a calendar
- Get upcoming events from a calendar

Prerequisites

- Python 3.9+
- Google Cloud project with Calendar API enabled
- OAuth2 credentials

Setup

1. Install dependencies:

   pip install -r requirements.txt
   

2. Set up Google Calendar API credentials:

   python setup_credentials.py
   

Follow the prompts to authenticate with Google.

3. Run the server:

   python google_calendar_server.py

Using with Claude Desktop

Configure Claude Desktop to use this server by editing the configuration file:

{
  "mcpServers": {
    "google-calendar": {
      "command": "python",
      "args": ["/full/path/to/google_calendar_server.py"],
      "env": {
        "GOOGLE_TOKEN_FILE": "/path/to/token/file.json"
      }
    }
  }
}

Available Tools

list_calendars

Lists all available Google Calendars.

get_available_slots

Finds available time slots in a calendar.

Parameters:

- calendar_id: The ID of the calendar to check
- days_ahead: Number of days ahead to check (default: 7)
- slot_duration_minutes: Duration of each slot in minutes (default: 30)
- start_hour: Start hour of the day in 24-hour format (default: 9)
- end_hour: End hour of the day in 24-hour format (default: 17)

get_upcoming_events

Gets upcoming events from a calendar.

Parameters:

- calendar_id: The ID of the calendar to check
- days_ahead: Number of days ahead to check (default: 7)
- max_events: Maximum number of events to return (default: 10)

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.