npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@integrabot/google-calendar

v0.0.18

Published

MCP server for Google Calendar integration

Readme

Google Calendar MCP Server

Category: Productivity

An MCP server that enables Claude to interact with Google Calendar, providing capabilities to manage events, view calendars, and handle scheduling through a standardized interface.

Features

  • Calendar Management: List calendars and view calendar details
  • Event Management: Create, read, update, delete, and list calendar events
  • Scheduling: Find available time slots and schedule meetings
  • Attendee Management: Add, remove, and check attendee status for events
  • Dual Authentication: Support for both OAuth2 and API token-based authentication

Tools

Calendar Management

  • google_calendar_list_calendars

    • List all calendars available to the user
    • Inputs:
      • maxResults (number, optional): Maximum number of calendars to return (default 100)
      • pageToken (string, optional): Token for retrieving the next page of results
  • google_calendar_get_calendar

    • Get information about a specific calendar
    • Inputs:
      • calendarId (string): The ID of the calendar to retrieve

Event Management

  • google_calendar_list_events

    • List events from a calendar with filtering options
    • Inputs:
      • calendarId (string): The ID of the calendar to retrieve events from
      • timeMin (string, optional): Start time in ISO format (e.g., "2023-05-01T00:00:00Z")
      • timeMax (string, optional): End time in ISO format
      • maxResults (number, optional): Maximum number of events to return (default 10)
      • pageToken (string, optional): Token for retrieving the next page of results
      • q (string, optional): Free text search terms
  • google_calendar_get_event

    • Get details of a specific event
    • Inputs:
      • calendarId (string): The ID of the calendar containing the event
      • eventId (string): The ID of the event to retrieve
  • google_calendar_create_event

    • Create a new event in a calendar
    • Inputs:
      • calendarId (string): The ID of the calendar to create the event in
      • summary (string): The title of the event
      • description (string, optional): Description of the event
      • start (object): Start time information with either date or dateTime
      • end (object): End time information with either date or dateTime
      • location (string, optional): Location of the event
      • attendees (array, optional): List of attendees with email and optional response status
      • recurrence (array, optional): Recurrence rules for recurring events
      • reminders (object, optional): Reminder settings for the event
  • google_calendar_update_event

    • Update an existing event in a calendar
    • Inputs:
      • calendarId (string): The ID of the calendar containing the event
      • eventId (string): The ID of the event to update
      • summary (string, optional): The updated title of the event
      • description (string, optional): Updated description
      • start (object, optional): Updated start time information
      • end (object, optional): Updated end time information
      • location (string, optional): Updated location
      • attendees (array, optional): Updated list of attendees
      • recurrence (array, optional): Updated recurrence rules
      • reminders (object, optional): Updated reminder settings
  • google_calendar_delete_event

    • Delete an event from a calendar
    • Inputs:
      • calendarId (string): The ID of the calendar containing the event
      • eventId (string): The ID of the event to delete

Scheduling Assistance

  • google_calendar_find_availability
    • Find available time slots across calendars
    • Inputs:
      • timeMin (string): Start of the time range in ISO format
      • timeMax (string): End of the time range in ISO format
      • durationMinutes (number): Desired duration of the event in minutes
      • calendarIds (array): List of calendar IDs to check
      • timeZone (string, optional): Time zone for the search (default UTC)

Installation

npm install -g @integrabot/google-calendar

Usage

Environment Setup

You can use this MCP server with either OAuth2 credentials or direct API token authentication.

Option 1: OAuth2 Authentication (Default)

export GOOGLE_CLIENT_ID=your-client-id
export GOOGLE_CLIENT_SECRET=your-client-secret
export GOOGLE_REDIRECT_URI=your-redirect-uri
export GOOGLE_REFRESH_TOKEN=your-refresh-token

Option 2: API Token Authentication

export CREDENTIALS='{"access_token":"your-access-token","refresh_token":"your-refresh-token","token_type":"Bearer","expiry_date":1234567890000}'

Start the Server

google-calendar

Configuration

Setting up Google Calendar API

  1. Create a project in the Google Cloud Console
  2. Enable the Google Calendar API
  3. Create OAuth 2.0 credentials or service account credentials
  4. For OAuth 2.0:
    • Set up authorized redirect URIs
    • Complete OAuth consent screen configuration
    • Obtain refresh token through authorization flow

Rate Limits

This server implements rate limiting to respect Google Calendar API's usage limits:

  • Up to 1,000,000 queries per day
  • Up to 500 queries per 100 seconds per user

Timeouts

All API requests have a 15-second timeout to prevent blocking operations.

License

MIT