Skip to content
Back to skills

Google Calendar Mcp

ASecurity

Step-by-step guide for setting up Google Calendar MCP server in Claude Code CLI. Use when users want to (1) connect Google Calendar to Claude Code, (2) set up the @cocal/google-calendar-mcp server, (3) configure OAuth credentials for Google Calendar API, or (4) troubleshoot Google Calendar MCP connection issues.

  • 666 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added February 8, 2026
developmentgobashnodegcpgitapi

Works with

  • claude code
  • cli
  • api
  • mcp

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill google-calendar-mcp --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Google Calendar Mcp?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Google Calendar Mcp
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-google-calendar-mcp/badge)](https://www.skillsdirectory.com/skills/majiayu000-google-calendar-mcp)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: google-calendar-mcp
description: Step-by-step guide for setting up Google Calendar MCP server in Claude Code CLI. Use when users want to (1) connect Google Calendar to Claude Code, (2) set up the @cocal/google-calendar-mcp server, (3) configure OAuth credentials for Google Calendar API, or (4) troubleshoot Google Calendar MCP connection issues.
---

# Google Calendar MCP Setup Guide

Set up Google Calendar integration for Claude Code CLI using the @cocal/google-calendar-mcp server.

**Source:** https://github.com/nspady/google-calendar-mcp

## Prerequisites

- Node.js installed (for npx)
- Google account
- Claude Code CLI installed

## Part 1: Google Cloud Console Setup

### Step 1: Create Project
1. Go to https://console.cloud.google.com/
2. Click project dropdown (top-left) → **New Project**
3. Name: `Claude Calendar` → **Create**
4. Select the new project from dropdown

### Step 2: Enable Calendar API
1. Go to **APIs & Services** → **Library**
2. Search **"Google Calendar API"** → Click → **Enable**

### Step 3: OAuth Consent Screen
1. Go to **APIs & Services** → **OAuth consent screen**
2. Select **External** → **Create**
3. Fill required fields:
   - App name: `Claude Calendar`
   - User support email: (your email)
   - Developer contact: (your email)
4. Click **Save and Continue**
5. **Scopes** page → **Add or Remove Scopes**
   - Add: `https://www.googleapis.com/auth/calendar`
   - Click **Update** → **Save and Continue**
6. **Test Users** → **Add Users** → Add your Gmail → **Save and Continue**

### Step 4: Create Credentials
1. Go to **APIs & Services** → **Credentials**
2. Click **+ Create Credentials** → **OAuth client ID**
3. Application type: **Desktop app**
4. Name: `Claude Code`
5. Click **Create** → **Download JSON**

## Part 2: Save Credentials

Save the downloaded JSON file:

**Windows:**
```
C:\Users\salmanferoz\.google-calendar-mcp\gcp-oauth.keys.json
```

**Mac/Linux:**
```
~/.google-calendar-mcp/gcp-oauth.keys.json
```

Create the `.google-calendar-mcp` folder if it doesn't exist.

## Part 3: Add MCP to Claude Code

### Auto-Setup Command

When the user has saved their credentials, run this command automatically:

**Windows:**
```bash
claude mcp add --scope user --transport stdio google-calendar --env GOOGLE_OAUTH_CREDENTIALS="C:\Users\salmanferoz\.google-calendar-mcp\gcp-oauth.keys.json" -- npx -y @cocal/google-calendar-mcp
```

**Mac/Linux:**
```bash
claude mcp add --scope user --transport stdio google-calendar --env GOOGLE_OAUTH_CREDENTIALS="$HOME/.google-calendar-mcp/gcp-oauth.keys.json" -- npx -y @cocal/google-calendar-mcp
```

### Manual JSON Config (Alternative)

Add to `~/.claude.json`:

```json
{
  "mcpServers": {
    "google-calendar": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@cocal/google-calendar-mcp"],
      "env": {
        "GOOGLE_OAUTH_CREDENTIALS": "/path/to/.google-calendar-mcp/gcp-oauth.keys.json"
      }
    }
  }
}
```

## Part 4: First Authorization

1. Restart Claude Code: `claude`
2. Ask: "What's on my calendar today?"
3. Browser opens → Sign in with Google
4. Click **Continue** (ignore "unverified app" warning)
5. Grant calendar permissions
6. Token saved automatically to `.google-calendar-mcp/token.json`

## Available Tools

| Tool | Description |
|------|-------------|
| list-calendars | Enumerate available calendars |
| list-events | Retrieve events with date filtering |
| get-event | Fetch specific event details by ID |
| search-events | Query events by text |
| create-event | Add new calendar events |
| update-event | Modify existing events |
| delete-event | Remove events |
| respond-to-event | Accept/decline/maybe invitations |
| get-freebusy | Check cross-calendar availability |
| get-current-time | Retrieve current date/time in timezone |
| list-colors | View available event colors |
| manage-accounts | Add/list/remove Google accounts |

## Features

| Feature | Description |
|---------|-------------|
| Multi-Account | Connect multiple Google accounts |
| Multi-Calendar | Query multiple calendars at once |
| Conflict Detection | Find overlapping events across accounts |
| Full CRUD | Create, read, update, delete events |
| Recurring Events | Manage recurring event patterns |
| Free/Busy | Check availability across calendars |
| Natural Language | Schedule events using natural language |
| Event Import | Import events from images/PDFs/web links |

## Environment Variables

| Variable | Description |
|----------|-------------|
| GOOGLE_OAUTH_CREDENTIALS | Path to OAuth credentials file (required) |
| GOOGLE_CALENDAR_MCP_TOKEN_PATH | Custom token storage location (optional) |

## MCP Management Commands

```bash
# List configured servers
claude mcp list

# Check status (inside Claude Code)
/mcp

# Remove server
claude mcp remove google-calendar

# Get server details
claude mcp get google-calendar
```

## Troubleshooting

| Issue | Solution |
|-------|----------|
| "Credentials not found" | Check `GOOGLE_OAUTH_CREDENTIALS` path is correct |
| "Access denied" | Add your email as test user in OAuth consent screen |
| "API not enabled" | Enable Google Calendar API in Cloud Console |
| Token expired | Delete `token.json` and re-authorize |
| Weekly re-auth required | Publish app to production mode in Cloud Console |

## File Locations Summary

| File | Purpose | Location |
|------|---------|----------|
| gcp-oauth.keys.json | OAuth credentials | `~/.google-calendar-mcp/` |
| token.json | Auth token (auto-created) | `~/.google-calendar-mcp/` |
| ~/.claude.json | Claude Code config | User home directory |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.