Google Calendar MCP Server (Python)
@deciduus
About Google Calendar MCP Server (Python)
This project implements a Python-based MCP (Model Context Protocol) server that acts as an interface between Large Language Models (LLMs) and the Google Calendar API. It enables LLMs to perform calendar operations via natural language requests.
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"calendar-mcp": {
"command": "python",
"args": [
"run_server.py"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Google Calendar MCP Server (Python)?
A Python-based MCP (Model Context Protocol) server that acts as an interface between Large Language Models and the Google Calendar API. It enables LLMs to perform calendar operations via natural language requests. Secure OAuth 2.0 authentication is built in. For users who want to manage Google Calendar through AI assistants.
How to use Google Calendar MCP Server (Python)?
Requires Python 3.8+, Git, a Google Cloud project with the Calendar API enabled, and OAuth 2.0 Desktop app credentials. Set up a .env file with your Client ID, Client Secret, token file path, and optionally the callback port. Install dependencies with pip install -r requirements.txt. Run python run_server.py once for initial OAuth authentication; after that, the MCP client launches the server automatically. Configure your MCP client (e.g., Cursor/Claude Desktop) via an mcp.json entry that provides the full absolute path to run_server.py as the command argument.
Key features of Google Calendar MCP Server (Python)
- Secure Google Calendar API access via OAuth 2.0 with automatic token storage/refresh.
- List, create, update, and delete calendars.
- Find events with basic and advanced filtering.
- Create detailed events and quick-add events from text.
- Add and check attendee response status.
- Query free/busy information for multiple calendars.
- Schedule mutual free slots automatically and analyze daily busyness.
Use cases of Google Calendar MCP Server (Python)
- Schedule meetings by asking an LLM to find free slots across multiple calendars.
- Check attendee availability and response status without manual calendar browsing.
- Add or update events, delete events, and manage attendees via natural language.
- Analyze daily event counts and durations to optimize your schedule.
- Quickly add events from plain text descriptions (e.g., “Lunch with John tomorrow at noon”).
FAQ from Google Calendar MCP Server (Python)
What authentication method does the server use?
It uses the Google OAuth 2.0 Desktop App flow. The server automatically stores and refreshes tokens after the first authorization.
How do I configure my MCP client to use this server?
After initial authentication, add a JSON entry to your client’s settings (e.g., mcp.json). Set command to the full path of your Python executable and args to the full absolute path of run_server.py. Credentials remain in the .env file, not in the client config.
Where are my credentials and tokens stored?
Your Google Client ID and Client Secret are stored in the .env file in the project root. OAuth tokens are saved to the file specified by TOKEN_FILE_PATH (default .gcp-saved-tokens.json). Both files should be kept secure and are typically added to .gitignore.
What Google Calendar permissions does the server need?
By default, the server requests read/write access to the Calendar API (https://www.googleapis.com/auth/calendar). You can set CALENDAR_SCOPES to read-only if needed.
Can I test the server without an MCP client?
Yes. After the initial authentication, running python run_server.py starts a FastAPI server (e.g., on http://localhost:8000) that you can test with tools like curl or Postman. For routine use, the MCP client handles launching.
Frequently asked questions
What authentication method does the server use?
It uses the Google OAuth 2.0 Desktop App flow. The server automatically stores and refreshes tokens after the first authorization.
How do I configure my MCP client to use this server?
After initial authentication, add a JSON entry to your client’s settings (e.g., `mcp.json`). Set `command` to the full path of your Python executable and `args` to the full absolute path of `run_server.py`. Credentials remain in the `.env` file, not in the client config.
Where are my credentials and tokens stored?
Your Google Client ID and Client Secret are stored in the `.env` file in the project root. OAuth tokens are saved to the file specified by `TOKEN_FILE_PATH` (default `.gcp-saved-tokens.json`). Both files should be kept secure and are typically added to `.gitignore`.
What Google Calendar permissions does the server need?
By default, the server requests read/write access to the Calendar API (`https://www.googleapis.com/auth/calendar`). You can set `CALENDAR_SCOPES` to read-only if needed.
Can I test the server without an MCP client?
Yes. After the initial authentication, running `python run_server.py` starts a FastAPI server (e.g., on `http://localhost:8000`) that you can test with tools like `curl` or Postman. For routine use, the MCP client handles launching.
Basic information
More Productivity MCP servers
MCP SAP GUI Server
mario-andreschakMCP server that allows simple SAP GUI interaction for LLM models using simulated mouse clicks and keyboard input.
TickTick MCP Server
alexarevalo9A Model Context Protocol (MCP) server designed to integrate with the TickTick task management platform, enabling intelligent context-aware task operations and automation.
🚀 TaskMaster: Todoist MCP for Cursor AI
mingolladanieleA lightweight Model Context Protocol (MCP) server that enables natural language interaction with your Todoist tasks directly from your IDE. Built with simplicity and maintainability in mind.
Desktop Commander MCP
wonderwhy-erThis is MCP server for Claude that gives it terminal control, file system search and diff file editing capabilities
Outlook Calendar MCP Tool
merajmehrabiA Model Context Protocol (MCP) server that allows Claude to access and manage your local Microsfot Outlook calendar (Windows only).
Comments