gsuite

gsuite

Comprehensive Google Workspace MCP server with Gmail, Drive, Calendar, and Contacts integration.

Category
Visit Server

README

gsuite-mcp

npm version Coverage

Comprehensive Google Workspace MCP server with Gmail, Drive, Calendar, and Contacts integration

npm: https://www.npmjs.com/package/@west10tech/gsuite-mcp

This MCP server includes the following integrations:

Available Tools

This MCP server provides 26 tools across 4 integrations:

GoogleGmail Tools

  • google-gmail_list_messages: List messages in user's mailbox with optional filtering
  • google-gmail_get_message: Get a specific message by ID
  • google-gmail_send_message: Send an email message. Requires message in RFC 2822 format encoded as base64url string
  • google-gmail_create_draft: Create a new draft message. IMPORTANT: Message must be an object with 'raw' field containing base64url-encoded RFC 2822 formatted message.
  • google-gmail_delete_message: PERMANENTLY delete a message - IMMEDIATE and IRREVERSIBLE. WARNING: Use trash_message instead for normal email deletion. Only use this for sensitive data that must be immediately destroyed. Bypasses trash completely. REQUIRES https://mail.google.com/ scope. Returns 204 No Content with empty body on success.
  • google-gmail_modify_message: Modify labels on a message (add/remove labels, mark read/unread)
  • google-gmail_search_messages: search_messages endpoint for google-gmail

GoogleDrive Tools

  • google-drive_list_files: List files in Google Drive with optional search query and filtering
  • google-drive_get_file: Get file metadata by ID
  • google-drive_update_file: Update file metadata
  • google-drive_delete_file: Permanently delete a file. Returns 204 No Content with empty body on success.
  • google-drive_search_files: Advanced file search with complex query syntax
  • google-drive_create_file: create_file endpoint for google-drive
  • google-drive_share_file: share_file endpoint for google-drive

GoogleCalendar Tools

  • google-calendar_list_events: Returns events on the specified calendar
  • google-calendar_get_event: Returns an event
  • google-calendar_create_event: Creates an event
  • google-calendar_update_event: Updates an event
  • google-calendar_delete_event: Deletes an event. Returns 204 No Content with empty body on success.
  • google-calendar_list_calendars: Returns the calendars on the user's calendar list

GoogleContacts Tools

  • google-contacts_create_contact: Create a new contact with specified fields
  • google-contacts_update_contact: Update an existing contact. IMPORTANT: Include the 'etag' field in the request body to prevent conflicts. Get the current etag by first calling get_contact or from a previous create/update response.
  • google-contacts_delete_contact: Delete a contact permanently
  • google-contacts_search_contacts: Search across all contacts with text query
  • google-contacts_list_contacts: list_contacts endpoint for google-contacts
  • google-contacts_get_contact: get_contact endpoint for google-contacts

Installation

npm install @west10tech/gsuite-mcp

Environment Setup

Create a .env file with the following variables:

GOOGLE_CLIENT_ID=your_google_client_id_here
GOOGLE_CLIENT_SECRET=your_google_client_secret_here
GOOGLE_OAUTH_CREDENTIALS=your_google_oauth_credentials_here
GOOGLE_REDIRECT_URI=your_google_redirect_uri_here

Usage

Running the server

# Development mode
npm run dev

# Production mode
npm run build && npm start

Using with Claude Desktop

Add this to your Claude Desktop configuration:

{
  "mcpServers": {
    "gsuite": {
      "command": "npx",
      "args": ["@west10tech/gsuite-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your_google_client_id_here",
        "GOOGLE_CLIENT_SECRET": "your_google_client_secret_here",
        "GOOGLE_OAUTH_CREDENTIALS": "your_google_oauth_credentials_here",
        "GOOGLE_REDIRECT_URI": "your_google_redirect_uri_here"
      }
    }
  }
}

Instructions for Fetching API Keys/Tokens

  • COMING SOON

Advanced Features

Request Cancellation

This MCP server supports request cancellation according to the MCP cancellation specification. Clients can cancel in-progress requests by sending a notifications/cancelled message with the request ID.

When a request is cancelled:

  • The server immediately stops processing the request
  • Any ongoing API calls are aborted
  • Resources are cleaned up
  • No response is sent for the cancelled request

Progress Notifications

The server supports progress notifications for long-running operations according to the MCP progress specification.

To receive progress updates:

  1. Include a progressToken in your request metadata
  2. The server will send notifications/progress messages with:
    • Current progress value
    • Total value (when known)
    • Human-readable status messages

Progress is reported for:

  • Multi-step operations
  • Batch processing
  • Long-running API calls
  • File uploads/downloads

Example progress notification:

{
  "method": "notifications/progress",
  "params": {
    "progressToken": "operation-123",
    "progress": 45,
    "total": 100,
    "message": "Processing item 45 of 100..."
  }
}

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured