mcp-gsuite-enhanced

by ajramos

354 downloads Not rated yet MIT license

About

Enhanced MCP server for Google Workspace with Google Meet integration and bug fixes

Details

License
MIT license

Explore

- ✅ Working Google Meet integration - Automatic Meet links in calendar events
- ✅ Fixed update_calendar_event - Previously broken, now fully functional
- ✅ Improved attendee processing - Fixed email parsing bugs
- ✅ Setup utilities - auth_setup.py and cursor_setup.py for easy configuration

v2.0.0 provides comprehensive Google Workspace automation with 27 total tools:

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name mcp-gsuite-enhanced
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

- Python 3.13+ and uv installed
- Google account with Gmail/Calendar access
- Cursor IDE (recommended) or any MCP client

Get Google Workspace MCP running in 5 minutes!

git clone https://github.com/ajramos/mcp-gsuite-enhanced.git
cd mcp-gsuite-enhanced
uv sync

1. Go to Google Cloud Console
2. Create a project and enable Gmail API + Google Calendar API
3. Create OAuth 2.0 Desktop credentials
4. Download and save as .gauth.json in project directory

Create .accounts.json:

{
"accounts": [
{
"email": "[email protected]",
"account_type": "personal",
"extra_info": "Main personal Gmail and Calendar"
}
]
}

python cursor_setup.py
This shows authentication status and generates Cursor configuration.

1. Copy the JSON configuration from Step 4
2. Cursor → Settings (Cmd+,) → Search "MCP"
3. Paste configuration and restart Cursor

For Cursor IDE users, use the setup helper script:

python cursor_setup.py

This will generate the correct MCP configuration and provide step-by-step instructions for adding it to your Cursor settings.

You can install this enhanced version using uv (recommended):


git clone https://github.com/ajramos/mcp-gsuite-enhanced
cd mcp-gsuite-enhanced
uv sync

Or with pip:


You'll need to create a Google Cloud project and configure OAuth2 credentials:

1. Go to "APIs & Services" → "Credentials"
2. Click "Create Credentials" → "OAuth client ID"
3. Select "Desktop application" as the application type
4. Configure the OAuth consent screen if prompted
5. Download the credentials JSON file and save it as .gauth.json in your project directory

Create a .accounts.json file in your project directory to specify which Google accounts to use:

json
{
"accounts": [
{
"email": "[email protected]",
"account_type": "work",
"extra_info": "Work account with company calendar"
},
{
"email": "[email protected]",
"account_type": "personal",
"extra_info": "Personal account with family calendar"
}
]
}
``

Fields explanation:
-
email: Your Google account email address
-
account_type: Category like "work", "personal", etc. (helps with organization)
-
extra_info`: Additional context that helps the AI understand this account's purpose

- 22 Gmail tools - Complete email lifecycle management
- 5 Calendar tools - Full calendar integration with Google Meet

Email Management
Send emails directly via Gmail with CC/BCC support
Query emails with flexible search (unread, senders, dates, attachments)
Retrieve complete email content by ID or multiple emails at once
Mark emails as read/unread
Move emails to trash

Draft Management
Create new draft emails with recipients, subject, body and CC options
List all draft emails with full details
Delete draft emails
Reply to existing emails (send immediately or save as draft)

Label Management 🏷️
List all Gmail labels (system + custom)
Create new custom labels
Apply labels to emails
Remove labels from emails
Delete custom labels permanently

Archive Workflows 📁
Archive individual emails (remove from inbox)
Archive multiple emails at once (bulk operations)
List archived emails
Restore archived emails back to inbox

Attachment Management
Download and save email attachments to local files
Bulk save multiple attachments from different emails

List available calendars for your account
Get calendar events within specified time ranges
Create new calendar events with attendees and automatic Google Meet links 🎪
Update existing calendar events (summary, time, attendees) ⚡
Delete calendar events
Full timezone support for international scheduling

- Email Search & Retrieval
- "Retrieve my latest unread messages"
- "Search my emails from the Scrum Master"
- "Show me all emails with attachments from this week"
- "Get the email about ABC and summarize it"

- Email Composition & Management
- "Send an email to [email protected] about the project update"
- "Write a nice response to Alice's last email and save as draft"
- "Mark all emails from [email protected] as read"
- "Move that spam email to trash"

- Label Management 🏷️
- "Create a label called 'Project Alpha' and apply it to emails about the project"
- "Show me all my custom labels"
- "Remove the 'Urgent' label from yesterday's email"
- "Delete the unused 'Old Project' label"

- Archive Workflows 📁
- "Archive all emails from last week's newsletter"
- "Show me my archived emails from Q3"
- "Restore that important email back to my inbox"
- "Archive these 5 emails at once: [email IDs]"

- Attachment Management
- "Download all attachments from emails containing 'invoice'"
- "Save attachments from all emails from [email protected] this week"

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp-gsuite-enhanced": {
            "mcp-gsuite-enhanced": {
                "command": "uv",
                "args": [
                    "sync"
                ]
            }
        }
    }
}

McpServers

{
    "mcp-gsuite-enhanced": {
        "command": "uv",
        "args": [
            "sync"
        ]
    }
}

Comprehensive MCP server for Google Workspace with complete Gmail API coverage and advanced email management

Enhanced Version
Original Project
License

MCP server to interact with Google products with complete Gmail API coverage (27 tools total), advanced email management, label operations, archive workflows, and working Google Meet integration.

Table of Contents

- Quick Start
- Enhanced Features
- Features & Capabilities
- Example Prompts
- Installation
- Google Authentication Setup
- Configuration Examples
- Google Meet Integration
- Development
- Security
- Credits
- License
- Contributing
- Support

🚀 Quick Start

Get Google Workspace MCP running in 5 minutes!

Prerequisites

- Python 3.13+ and uv installed - Google account with Gmail/Calendar access - Cursor IDE (recommended) or any MCP client

Step 1: Clone and Install

git clone https://github.com/ajramos/mcp-gsuite-enhanced.git
cd mcp-gsuite-enhanced
uv sync

Step 2: Setup Google Cloud (One-time setup)

1. Go to Google Cloud Console 2. Create a project and enable Gmail API + Google Calendar API 3. Create OAuth 2.0 Desktop credentials 4. Download and save as .gauth.json in project directory

Step 3: Configure Accounts

Create .accounts.json:
{
  "accounts": [
    {
      "email": "[email protected]",
      "account_type": "personal", 
      "extra_info": "Main personal Gmail and Calendar"
    }
  ]
}

Step 4: Quick Configuration Check

python cursor_setup.py
This shows authentication status and generates Cursor configuration.

Step 5: Authenticate

python auth_setup.py [email protected]
Opens browser for OAuth flow - grant permissions and you're done!

Step 6: Configure in Cursor

1. Copy the JSON configuration from Step 4 2. Cursor → Settings (Cmd+,) → Search "MCP" 3. Paste configuration and restart Cursor

Step 7: Test it! 🎉

Try these commands in Cursor: - "List my calendars" - "Show my unread emails" - "Create a test meeting with Google Meet link"

That's it! You now have full Google Workspace integration with automatic Google Meet links!

---

🎯 Enhanced Features v2.0.0

🚀 Complete Gmail API Coverage (27 Tools Total)

- 22 Gmail tools - Complete email lifecycle management - 5 Calendar tools - Full calendar integration with Google Meet

✨ Advanced Email Management

- ✅ Send emails directly via Gmail - ✅ Label management - Create, apply, remove, and delete labels - ✅ Archive workflows - Archive, restore, and manage email lifecycle - ✅ Draft management - List, create, and manage email drafts - ✅ Bulk operations - Archive multiple emails efficiently - ✅ Email status - Mark as read/unread, move to trash

🎪 Enhanced Calendar Features

- ✅ Working Google Meet integration - Automatic Meet links in calendar events - ✅ Fixed update_calendar_event - Previously broken, now fully functional - ✅ Improved attendee processing - Fixed email parsing bugs - ✅ Setup utilities - auth_setup.py and cursor_setup.py for easy configuration

Features & Capabilities

v2.0.0 provides comprehensive Google Workspace automation with 27 total tools:

1. General

Multiple Google accounts support OAuth 2.0 authentication with token refresh Comprehensive error handling and logging

2. Gmail (22 Tools) 📧

Email Management
Send emails directly via Gmail with CC/BCC support Query emails with flexible search (unread, senders, dates, attachments) Retrieve complete email content by ID or multiple emails at once Mark emails as read/unread Move emails to trash

Draft Management
Create new draft emails with recipients, subject, body and CC options
List all draft emails with full details
Delete draft emails
Reply to existing emails (send immediately or save as draft)

Label Management 🏷️
List all Gmail labels (system + custom)
Create new custom labels
Apply labels to emails
Remove labels from emails
Delete custom labels permanently

Archive Workflows 📁
Archive individual emails (remove from inbox)
Archive multiple emails at once (bulk operations)
List archived emails
Restore archived emails back to inbox

Attachment Management
Download and save email attachments to local files
Bulk save multiple attachments from different emails

3. Calendar (5 Tools) 📅

List available calendars for your account Get calendar events within specified time ranges Create new calendar events with attendees and automatic Google Meet links 🎪 Update existing calendar events (summary, time, attendees) ⚡ Delete calendar events Full timezone support for international scheduling

💡 Example Prompts to Try

📧 Gmail Operations (22 Tools)

- Email Search & Retrieval -
"Retrieve my latest unread messages" - "Search my emails from the Scrum Master" - "Show me all emails with attachments from this week" - "Get the email about ABC and summarize it"

- Email Composition & Management
-
"Send an email to [email protected] about the project update"
-
"Write a nice response to Alice's last email and save as draft"
-
"Mark all emails from [email protected] as read"
-
"Move that spam email to trash"

- Label Management 🏷️
-
"Create a label called 'Project Alpha' and apply it to emails about the project"
-
"Show me all my custom labels"
-
"Remove the 'Urgent' label from yesterday's email"
-
"Delete the unused 'Old Project' label"

- Archive Workflows 📁
-
"Archive all emails from last week's newsletter"
-
"Show me my archived emails from Q3"
-
"Restore that important email back to my inbox"
-
"Archive these 5 emails at once: [email IDs]"

- Attachment Management
-
"Download all attachments from emails containing 'invoice'"
-
"Save attachments from all emails from [email protected] this week"

📅 Calendar Management

- Agenda & Scheduling -
"What do I have on my agenda tomorrow?" - "Check my private account's Family agenda for next week" - "I need to plan an event with Tim for 2hrs next week. Suggest some time slots"

- Event Creation with Google Meet 🎪
-
"Create a meeting with John next Friday and include a Google Meet link"
-
"Schedule a client call for Thursday 2 PM and invite [email protected]"
-
"Create a team standup for every Monday at 9 AM with Google Meet"
-
"Create a project review meeting for tomorrow at 3 PM with Google Meet link and invite the whole team"

- Event Updates ⚡ (Enhanced Feature)
-
"Update my 3pm meeting to include Sarah as an attendee"
-
"Update the quarterly planning meeting to change the time to 4 PM and add [email protected]"
-
"Change tomorrow's team meeting location to Conference Room B"

- Advanced Calendar Queries
-
"List all my calendar events for next week that have Google Meet links"
-
"Show me all recurring meetings I have this month"
-
"Find all meetings with external attendees scheduled for next week"*

Install

Option 1: Enhanced Version (Recommended) 🚀

This enhanced version includes all the Google Meet fixes and improvements.

Cursor IDE Setup (Recommended)

For Cursor IDE users, use the setup helper script:

python cursor_setup.py

This will generate the correct MCP configuration and provide step-by-step instructions for adding it to your Cursor settings.

Manual Installation

You can install this enhanced version using uv (recommended):

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.