Google Calendar Integration Project
This project provides integration with Google Calendar API to manage and interact with calendar events programmatically.
Prerequisites
- Python 3.8 or higher
- Google Cloud Platform account
- Google Calendar API enabled
- OAuth 2.0 credentials configured
Setup Instructions
Installing via Smithery
To install Google Calendar Integration Project for Claude Desktop automatically via Smithery:
npx -y smithery install @Avik-creator/googlecalendarMCP --client claude
Manual Installation
Clone the Repository
git clone https://github.com/Avik-creator/googlecalendarMCP cd googlecalendarMCP
Set Up Virtual Environment
python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate`
Install Dependencies
pip install -r requirements.txt
Google Cloud Platform Setup
a. Go to the Google Cloud Console b. Create a new project or select an existing one c. Enable the Google Calendar API d. Create OAuth 2.0 credentials:
- Go to APIs & Services > Credentials
- Click "Create Credentials" > "OAuth client ID"
- Choose "Desktop Application"
- Download the credentials JSON file
- Rename it to
credentials.json
and place it in the project root
Environment Variables
Create a
.env
file in the project root with the following variables:GOOGLE_APPLICATION_CREDENTIALS=path/to/credentials.json CALENDAR_ID=your_calendar_id@group.calendar.google.com
Usage
First-time Authentication
python auth.py
This will open a browser window for OAuth authentication. Follow the prompts to authorize the application.
Running the Application
python main.py
Features
- Create, read, update, and delete calendar events
- Set up recurring events
- Manage event attendees
- Handle event notifications and reminders
Project Structure
googlecalendarMCP/
├── auth.py # Authentication handling
├── main.py # Main application entry point
├── requirements.txt # Project dependencies
├── .env # Environment variables
├── credentials.json # Google OAuth credentials
└── token.json # Generated OAuth token
Dependencies
The project uses the following main dependencies:
- google-auth-oauthlib
- google-auth-httplib2
- google-api-python-client
- python-dotenv
Deployed Configuration:
{
"mcpServers": {
"google_calendar_mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp-google-calendar.avikm744.workers.dev/sse"
]
}
}
}
Security Notes
- Never commit your
credentials.json
,token.json
, or.env
file to version control - Keep your OAuth credentials secure
- Regularly rotate your credentials and tokens
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.