Skip to main content
Glama
HarleyCoops

Google Workspace MCP Server

by HarleyCoops

Google Workspace MCP Server

An MCP (Model Context Protocol) server that provides read/write access to Google Sheets and Google Docs.

Available Tools

Tool

Description

read_sheet

Read data from a Google Sheets spreadsheet

read_doc

Read text content from a Google Doc

list_sheets

List all sheets/tabs in a spreadsheet

append_to_doc

Prepend content to a Google Doc

append_to_sheet

Append rows to a spreadsheet

update_sheet

Update a specific range in a spreadsheet

Related MCP server: mcp-google-sheets

Quick Start

1. Install from GitHub

npm install -g github:HarleyCoops/google-workspace-mcp

Or clone and build locally:

git clone https://github.com/HarleyCoops/google-workspace-mcp.git
cd google-workspace-mcp
npm install
npm run build

2. Set Up Google OAuth Credentials

  1. Go to Google Cloud Console

  2. Create a new project (or select existing)

  3. Enable these APIs:

    • Google Sheets API

    • Google Docs API

    • Google Drive API

  4. Create OAuth 2.0 credentials (Desktop app type)

  5. Download as credentials.json

3. Generate OAuth Token

pip install google-auth-oauthlib google-api-python-client
python regenerate_google_token.py

This creates token.json with your OAuth credentials.

4. Configure Your MCP Client

Set the GOOGLE_TOKEN_PATH environment variable to point to your token.json file.


MCP Configuration

Standard JSON Config (Claude Desktop, Cursor, VS Code, etc.)

{
  "mcpServers": {
    "google-workspace": {
      "command": "npx",
      "args": ["github:HarleyCoops/google-workspace-mcp"],
      "env": {
        "GOOGLE_TOKEN_PATH": "/path/to/your/token.json"
      }
    }
  }
}

If installed globally

{
  "mcpServers": {
    "google-workspace": {
      "command": "google-workspace-mcp",
      "env": {
        "GOOGLE_TOKEN_PATH": "/path/to/your/token.json"
      }
    }
  }
}

If cloned locally

{
  "mcpServers": {
    "google-workspace": {
      "command": "node",
      "args": ["/path/to/google-workspace-mcp/build/index.js"],
      "env": {
        "GOOGLE_TOKEN_PATH": "/path/to/your/token.json"
      }
    }
  }
}

Emergent.sh Setup

For Emergent.sh, you have two options:

Option A: Use as stdio MCP (if supported)

In Emergent's MCP configuration:

{
  "command": "npx",
  "args": ["github:HarleyCoops/google-workspace-mcp"],
  "env": {
    "GOOGLE_TOKEN_PATH": "/path/to/token.json"
  }
}

Option B: Self-host as HTTP endpoint

If Emergent requires an HTTP/SSE endpoint, you'll need to wrap this server. See the MCP HTTP Transport docs for details.


Environment Variables

Variable

Description

Default

GOOGLE_TOKEN_PATH

Path to OAuth token.json

./token.json

DAILY_REPO_PATH

Base path for .env loading

C:\Users\chris\Daily


Token Generation Script

Save this as regenerate_google_token.py:

from google_auth_oauthlib.flow import InstalledAppFlow

SCOPES = [
    'https://www.googleapis.com/auth/drive.readonly',
    'https://www.googleapis.com/auth/documents.readonly',
    'https://www.googleapis.com/auth/spreadsheets.readonly',
    'https://www.googleapis.com/auth/drive.file'
]

def main():
    flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES)
    creds = flow.run_local_server(port=0)
    with open('token.json', 'w') as f:
        f.write(creds.to_json())
    print("Token saved to token.json")

if __name__ == '__main__':
    main()

Usage Examples

Reading a Sheet

Extract the spreadsheet ID from the URL:

https://docs.google.com/spreadsheets/d/1Zlxn88pgMi0WAKFo.../edit
                                        ^^^^^^^^^^^^^^^^
                                        This is the ID

Reading a Doc

Extract the document ID from the URL:

https://docs.google.com/document/d/17p5DfXbyEYhsMy.../edit
                                   ^^^^^^^^^^^^^^^
                                   This is the ID

Security Notes


License

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients like Claude Desktop and Cursor to interact with Google Docs, Sheets, and Drive, providing tools for reading, writing, formatting documents, managing spreadsheets, and searching Drive files.
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    Enables interaction with Google Docs through typed MCP tools, supporting reading, writing, searching, and managing documents via OAuth integration.
    22
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HarleyCoops/google-workspace-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server