Google Workspace MCP server

Integrates with Google Workspace to enable file management in Drive and data manipulation in Sheets, facilitating document-centric tasks and data analysis within the Google ecosystem.
Back to servers
Provider
Distrihub
Release date
Feb 25, 2025
Language
Rust
Stats
1 star

The MCP Google Workspace server enables interaction with Google Drive and Google Sheets through the Model Context Protocol. It provides MCP-compatible interfaces that can be integrated into agent workflows, allowing programmatic access to Google Workspace services.

Prerequisites

  • Rust (latest stable version)
  • Google Cloud Project with Drive and Sheets APIs enabled
  • OAuth 2.0 credentials configured for your Google Cloud Project

Installation

Install the mcp-google binary directly from GitHub using Cargo:

cargo install --git https://github.com/distrihub/mcp-google-workspace.git

Configuration

Before using the server, complete these essential setup steps:

  1. Set up a Google Cloud Project
  2. Enable Google Drive and Google Sheets APIs
  3. Create OAuth 2.0 credentials
  4. Configure your environment variables:
    • ACCESS_TOKEN: Your Google OAuth access token
    • GOOGLE_CLIENT_ID: Your OAuth client ID
    • GOOGLE_CLIENT_SECRET: Your OAuth client secret
    • GOOGLE_REFRESH_TOKEN: Your OAuth refresh token

Usage

Starting MCP Servers

The servers can be started independently and communicate using the MCP protocol over stdio:

Start the Drive MCP server:

mcp-google drive --access-token <your-access-token>

Start the Sheets MCP server:

mcp-google sheets --access-token <your-access-token>

Token Management

Refresh your OAuth token with:

mcp-google refresh \
  --client-id <your-client-id> \
  --client-secret <your-client-secret> \
  --refresh-token <your-refresh-token>

Integration with Distri

This server can be seamlessly used as part of a Distri agent configuration:

agents:
  google_workspace:
    drive:
      type: mcp
      command: ["mcp-google", "drive", "--access-token", "${ACCESS_TOKEN}"]
    sheets:
      type: mcp
      command: ["mcp-google", "sheets", "--access-token", "${ACCESS_TOKEN}"]

Available Features

Google Drive Operations

  • List files in Google Drive with filtering options:
    • Filter by MIME type
    • Custom search queries
    • Configurable page size
    • Custom ordering

Google Sheets Operations

  • Read data from Google Sheets with options:
    • Specify range
    • Choose major dimension (ROWS or COLUMNS)
  • Write data to Google Sheets
  • Create new spreadsheets with:
    • Custom title
    • Multiple sheets
  • Clear values from ranges in spreadsheets

MCP Tools

Drive Tools

  • list_files: List and filter Drive files with customizable parameters
  • All capabilities are exposed via the resources/list endpoint

Sheets Tools

  • read_values: Read spreadsheet data with dimension control
  • write_values: Write data to spreadsheets
  • create_spreadsheet: Create new spreadsheets
  • clear_values: Clear ranges in spreadsheets
  • All capabilities are exposed via the resources/list endpoint

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later