gcal-mcp

gcal-mcp

A Model Context Protocol (MCP) server for read-only Google Calendar integration, providing calendar access to AI assistants.

Category
Visit Server

README

gcal-mcp

A Model Context Protocol (MCP) server for read-only Google Calendar integration. Provides calendar access to AI assistants through the MCP standard.

Features

  • get_events_today - Get all calendar events for today
  • get_events_week - Get all calendar events for the current week (Monday to Sunday)
  • get_pending_invites - Get calendar invitations requiring a response
  • find_available_slot - Find available time slots for scheduling meetings

Prerequisites

  • Node.js 18+
  • A Google Cloud project with Calendar API enabled
  • OAuth 2.0 credentials (Desktop app type)

Setup

1. Create Google Cloud OAuth Credentials

  1. Go to the Google Cloud Console
  2. Create a new project or select an existing one
  3. Enable the Google Calendar API
  4. Go to APIs & Services > Credentials
  5. Click Create Credentials > OAuth client ID
  6. Select Desktop app as the application type
  7. Download the JSON file and save it as client_secret*.json in the project root

2. Install Dependencies

npm install

3. Authenticate

Run the auth script to authorize access to your calendar:

npm run auth

This will open a browser window for Google OAuth consent. After authorization, a token.json file will be created.

4. Build

npm run build

Usage

With Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "gcal": {
      "command": "node",
      "args": ["/path/to/gcal-mcp/dist/index.js"]
    }
  }
}

Standalone

npm start

Development

npm run dev

Tools Reference

get_events_today

Returns all events scheduled for the current day.

get_events_week

Returns all events for the current week (Monday through Sunday), grouped by day.

get_pending_invites

Returns calendar invitations where you haven't responded yet (needsAction status). Looks 30 days ahead.

find_available_slot

Finds available meeting slots based on your calendar.

Parameter Type Required Description
duration_minutes number Yes Meeting duration (15-480 minutes)
search_days number No Days to search ahead (default: 7, max: 14)
working_hours_start number No Start hour (default: 9)
working_hours_end number No End hour (default: 17)

Security Notes

⚠️ Never commit sensitive files:

  • client_secret*.json - Your OAuth client credentials
  • token.json - Your access/refresh tokens

These are already in .gitignore.

License

ISC

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured