mcpField
G
Google Calendar MCP Server

Google Calendar MCP Server

Local
github.com/highlight-ingProductivity0Updated 82w ago

About Google Calendar MCP Server

Google Calendar MCP Server provides MCP tools for managing Google Calendar events. It is for users who need programmatic calendar access, with date-filtered event listing and create, update, and delete operations.

Key features

  1. 01List events by date range
  2. 02Create events with attendees
  3. 03Update existing events
  4. 04Delete calendar events

Use cases

  1. 01Review events within a chosen period
  2. 02Create meetings with attendees
  3. 03Change meeting times or locations
  4. 04Remove events that are no longer needed

MCP support

The MCP server exposes Google Calendar API event lookup and management operations as tools for MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Google Calendar MCP Server

A Model Context Protocol (MCP) server that provides tools for interacting with Google Calendar API. This server enables you to manage your calendar events programmatically through the MCP interface.

Features

Calendar Tools
  • list_events: List upcoming calendar events with date range filtering
  • create_event: Create new calendar events with attendees
  • update_event: Update existing calendar events
  • delete_event: Delete calendar events

Prerequisites

  1. Node.js: Install Node.js version 14 or higher
  2. Google Cloud Console Setup:
    • Go to Google Cloud Console
    • Create a new project or select an existing one
    • Enable the Google Calendar API:
      1. Go to "APIs & Services" > "Library"
      2. Search for and enable "Google Calendar API"
    • Set up OAuth 2.0 credentials:
      1. Go to "APIs & Services" > "Credentials"
      2. Click "Create Credentials" > "OAuth client ID"
      3. Choose "Web application"
      4. Set "Authorized redirect URIs" to include: http://localhost:3000/code
      5. Note down the Client ID and Client Secret

Setup Instructions

  1. Clone and Install:

    git clone https://github.com/yourusername/google-calendar-mcp-server.git
    cd google-calendar-mcp-server
    npm install
    
  2. Create OAuth Credentials: Create a credentials.json file in the root directory:

    {
        "web": {
            "client_id": "YOUR_CLIENT_ID",
            "client_secret": "YOUR_CLIENT_SECRET",
            "redirect_uris": ["http://localhost:3000/code"],
            "auth_uri": "https://accounts.google.com/o/oauth2/auth",
            "token_uri": "https://oauth2.googleapis.com/token"
        }
    }
    
  3. Get Refresh Token:

    node get-refresh-token.js
    

    This will:

    • Open your browser for Google OAuth authentication
    • Request the following permissions:
      • https://www.googleapis.com/auth/calendar
    • Save the credentials to token.json
    • Display the refresh token in the console
  4. Configure MCP Settings: Add the server configuration to your MCP settings file:

    • For VSCode Claude extension: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
    • For Claude desktop app: ~/Library/Application Support/Claude/claude_desktop_config.json

    Add this to the mcpServers object:

    {
      "mcpServers": {
        "google-calendar": {
          "command": "node",
          "args": ["/path/to/google-calendar-server/build/index.js"],
          "env": {
            "GOOGLE_ACCESS_TOKEN": "your_access_token",
          }
        }
      }
    }
    
  5. Build and Run:

    npm run build
    

Usage Examples

Calendar Operations
  1. List Events:

    {
      "maxResults": 10,
      "timeMin": "2024-01-01T00:00:00Z",
      "timeMax": "2024-12-31T23:59:59Z"
    }
    
  2. Create Event:

    {
      "summary": "Team Meeting",
      "location": "Conference Room",
      "description": "Weekly sync-up",
      "start": "2024-01-24T10:00:00Z",
      "end": "2024-01-24T11:00:00Z",
      "attendees": ["[email protected]"]
    }
    
  3. Update Event:

    {
      "eventId": "event_id",
      "summary": "Updated Meeting",
      "location": "Virtual",
      "description": "Rescheduled weekly sync-up",
      "start": "2024-01-25T10:00:00Z",
      "end": "2024-01-25T11:00:00Z"
    }
    
  4. Delete Event:

    {
      "eventId": "event_id"
    }
    

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.