This project provides a Modular Command Platform (MCP) for interacting with Google Calendar using Python and FastMCP.
- List, create, update, and delete calendar events
- Search events by keyword
- List all accessible calendars
- Check free/busy times
- Create recurring events
- Re-authenticate and switch Google accounts
To use this project, you need Google OAuth credentials for the Calendar API:
- Go to the Google Cloud Console.
- Under APIs & Services → Library, search for and enable Google Calendar API.
- Under APIs & Services → Credentials, click Create Credentials and select OAuth client ID.
- Choose Desktop App as the application type.
- Download the generated JSON file (e.g.,
credentials.json
). - Place
credentials.json
in your project directory.
pip install -r requirements.txt
Or, using uv (recommended for modern Python):
uv pip install -r requirements.txt
# or, using pyproject.toml
uv pip install
fastmcp server.py
For usage with a MCP client, use the following MCP config
"gCal": {
"command": "fastmcp",
"args": [
"run",
"/PATH/TO/FOLDER/server.py"
]
}
- Use the provided MCP tools to interact with your Google Calendar.
- Example operations:
- List events for a date range
- Create or update events
- Check your free/busy status
- Switch Google accounts with the reauthenticate tool
- Requires Python 3.7+
- Make sure
credentials.json
is present for authentication - Do not call
mcp.run()
explicitly; FastMCP handles it via CLI