NG

nguyenvanduocit/google-mcp

Developer tools
20 stars 0 forks Quality 50 Trend 31

The Model Context Protocol (MCP) implementation in Google MCP enables AI models to interact with Google services through a standardized interface.

Overview

The Model Context Protocol (MCP) implementation in Google MCP enables AI models to interact with Google services through a standardized interface. - Go 1.23.2 or higher - Google Cloud Platform account with the following APIs enabled: - Google Calendar API - Gmail API - Google Chat API - Google Cloud credentials (OAuth 2.0 Client ID) 2. Create a .env file with your configuration: https://developers.google.com/workspace/chat/authenticate-authorize-chat-user The ENABLE_TOOLS environment variable is a comma-separated list of tool groups to enable. Available groups are: - calendar - Google Calendar tools - gmail - Gmail tools - gchat - Google Chat tools Create a new event in Google Calendar with title, description, time, and attendees. List upcoming events in Google Calendar with customizable time range and result limit. Update an existing event's details including title, description, time, and attendees.

README

Google MCP - Model Context Protocol (MCP) Server

The Model Context Protocol (MCP) implementation in Google MCP enables AI models to interact with Google services through a standardized interface.

Prerequisites

  • Go 1.23.2 or higher
  • Google Cloud Platform account with the following APIs enabled:
    • Google Calendar API
    • Gmail API
    • Google Chat API
  • Google Cloud credentials (OAuth 2.0 Client ID)

Installation

Installing via Go

  1. Install the server:
go install github.com/nguyenvanduocit/google-mcp@latest
  1. Create a .env file with your configuration:
# Required for Google Services
GOOGLE_CREDENTIALS_FILE=  # Required: Path to Google Cloud credentials JSON file
GOOGLE_TOKEN_FILE=       # Required: Path to store Google OAuth tokens

# Optional configurations
ENABLE_TOOLS=           # Optional: Comma-separated list of tool groups to enable (empty = all enabled)
PROXY_URL=             # Optional: HTTP/HTTPS proxy URL if needed

https://developers.google.com/workspace/chat/authenticate-authorize-chat-user

  1. Configure your Claude’s config:
{
  "mcpServers": {
    "google_mcp": {
      "command": "google-mcp",
      "args": ["-env", "/path/to/.env"]
    }
  }
}

Enable Tools

The ENABLE_TOOLS environment variable is a comma-separated list of tool groups to enable. Available groups are:

  • calendar - Google Calendar tools
  • gmail - Gmail tools
  • gchat - Google Chat tools

Leave it empty to enable all tools.

Available Tools

Group: calendar

calendar_create_event

Create a new event in Google Calendar with title, description, time, and attendees.

calendar_list_events

List upcoming events in Google Calendar with customizable time range and result limit.

calendar_update_event

Update an existing event’s details including title, description, time, and attendees.

calendar_respond_to_event

Respond to an event invitation (accept, decline, or tentative).

Group: gchat

gchat_list_spaces

List all available Google Chat spaces/rooms.

gchat_send_message

Send a message to a Google Chat space or direct message.

Group: gmail

gmail_search

Search emails in Gmail using Gmail’s search syntax.

gmail_move_to_spam

Move specific emails to spam folder in Gmail by message IDs.

gmail_create_filter

Create a Gmail filter with specified criteria and actions:

  • Filter by sender, recipient, subject, or custom query
  • Add labels
  • Mark as important
  • Mark as read
  • Archive messages

gmail_list_filters

List all Gmail filters in the account.

gmail_list_labels

List all Gmail labels in the account.

gmail_delete_filter

Delete a Gmail filter by its ID.

gmail_delete_label

Delete a Gmail label by its ID.

CLI Usage

In addition to the MCP server, google-mcp ships a standalone CLI binary (google-cli) for direct terminal use — no MCP client needed.

Installation

just install-cli
# or
go install github.com/nguyenvanduocit/google-mcp/cmd/google-cli@latest

Quick Start

export GOOGLE_AI_API_KEY=your-api-key
# or
google-cli --env .env  [flags]

Commands

Command Description
list-events List Google Calendar events
create-event Create a calendar event
update-event Update a calendar event
list-emails List Gmail emails
send-email Send an email via Gmail
get-email Get email details
send-chat-message Send a Google Chat message
list-chat-spaces List Chat spaces
search-youtube Search YouTube videos
get-video-details Get YouTube video details

Examples

# List calendar events
google-cli list-events --calendar-id primary

# Send an email
google-cli send-email --to [email protected] --subject "Hello" --body "World"

# Search YouTube
google-cli search-youtube --query "Go programming"

# JSON output
google-cli list-emails --output json | jq '.[].subject'

Flags

Every command accepts:

  • --env string — Path to .env file
  • --output string — Output format: text (default) or json

License

This project is licensed under the MIT License. See LICENSE for details.

Installation

Homebrew (macOS/Linux)

brew install nguyenvanduocit/tap/google-mcp
View the full README on GitHub

Install

This server does not publish a one-line install command.

Open the repository installation guide New to MCP? Start with the mcpskill.org guide →

Configuration

{ "mcpServers": { "google_mcp": { "command": "google-mcp", "args": ["-env", "/path/to/.env"] } } }