{"id":"0a607995-ea7e-4daa-bfe7-50803e0583e0","slug":"highlight-ing-google-calendar-mcp-server","kind":"mcp","name":"google-calendar-mcp-server","summary":"","owner":"highlight-ing","repoUrl":"https://github.com/highlight-ing/google-calendar-mcp-server","license":"MIT","licenseTier":"permissive","trust":"community","stars":0,"match":null,"fewStars":true,"format":"mcp","createdAt":"2025-04-01T19:34:31.000Z","addedAt":"2026-10-14T05:56:10.940Z","logoUrl":"https://avatars.githubusercontent.com/u/168225920?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["productivity","cloud-infra"],"tags":[],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-18T01:44:49.502Z","sample":false,"url":"https://conduits.dev/tools/highlight-ing-google-calendar-mcp-server","language":"TypeScript","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# Google Calendar MCP Server\n\nA 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.\n\n## Features\n\n### Calendar Tools\n- `list_events`: List upcoming calendar events with date range filtering\n- `create_event`: Create new calendar events with attendees\n- `update_event`: Update existing calendar events\n- `delete_event`: Delete calendar events\n\n## Prerequisites\n\n1. **Node.js**: Install Node.js version 14 or higher\n2. **Google Cloud Console Setup**:\n   - Go to [Google Cloud Console](https://console.cloud.google.com/)\n   - Create a new project or select an existing one\n   - Enable the Google Calendar API:\n     1. Go to \"APIs & Services\" > \"Library\"\n     2. Search for and enable \"Google Calendar API\"\n   - Set up OAuth 2.0 credentials:\n     1. Go to \"APIs & Services\" > \"Credentials\"\n     2. Click \"Create Credentials\" > \"OAuth client ID\"\n     3. Choose \"Web application\"\n     4. Set \"Authorized redirect URIs\" to include: `http://localhost:3000/code`\n     5. Note down the Client ID and Client Secret\n\n## Setup Instructions\n\n1. **Clone and Install**:\n   ```bash\n   git clone https://github.com/yourusername/google-calendar-mcp-server.git\n   cd google-calendar-mcp-server\n   npm install\n   ```\n\n2. **Create OAuth Credentials**:\n   Create a `credentials.json` file in the root directory:\n   ```json\n   {\n       \"web\": {\n           \"client_id\": \"YOUR_CLIENT_ID\",\n           \"client_secret\": \"YOUR_CLIENT_SECRET\",\n           \"redirect_uris\": [\"http://localhost:3000/code\"],\n           \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n           \"token_uri\": \"https://oauth2.googleapis.com/token\"\n       }\n   }\n   ```\n\n3. **Get Refresh Token**:\n   ```bash\n   node get-refresh-token.js\n   ```\n   This will:\n   - Open your browser for Google OAuth authentication\n   - Request the following permissions:\n     - `https://www.googleapis.com/auth/calendar`\n   - Save the credentials to `token.json`\n   - Display the refresh token in the console\n\n4. **Configure MCP Settings**:\n   Add the server configuration to your MCP settings file:\n   - For VSCode Claude extension: `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`\n   - For Claude desktop app: `~/Library/Application Support/Claude/claude_desktop_config.json`\n\n   Add this to the `mcpServers` object:\n   ```json\n   {\n     \"mcpServers\": {\n       \"google-calendar\": {\n         \"command\": \"node\",\n         \"args\": [\"/path/to/google-calendar-server/build/index.js\"],\n         \"env\": {\n           \"GOOGLE_ACCESS_TOKEN\": \"your_access_token\",\n         }\n       }\n     }\n   }\n   ```\n\n5. **Build and Run**:\n   ```bash\n   npm run build\n   ```\n\n## Usage Examples\n\n### Calendar Operations\n\n1. **List Events**:\n   ```json\n   {\n     \"maxResults\": 10,\n     \"timeMin\": \"2024-01-01T00:00:00Z\",\n     \"timeMax\": \"2024-12-31T23:59:59Z\"\n   }\n   ```\n\n2. **Create Event**:\n   ```json\n   {\n     \"summary\": \"Team Meeting\",\n     \"location\": \"Conference Room\",\n     \"description\": \"Weekly sync-up\",\n     \"start\": \"2024-01-24T10:00:00Z\",\n     \"end\": \"2024-01-24T11:00:00Z\",\n     \"attendees\": [\"colleague@example.com\"]\n   }\n   ```\n\n3. **Update Event**:\n   ```json\n   {\n     \"eventId\": \"event_id\",\n     \"summary\": \"Updated Meeting\",\n     \"location\": \"Virtual\",\n     \"description\": \"Rescheduled weekly sync-up\",\n     \"start\": \"2024-01-25T10:00:00Z\",\n     \"end\": \"2024-01-25T11:00:00Z\"\n   }\n   ```\n\n4. **Delete Event**:\n   ```json\n   {\n     \"eventId\": \"event_id\"\n   }\n   ```\n\n## License\n\nMIT "}