Skip to main content
Glama
adexltd
by adexltd

MCP Google Workspace Server

CI codecov PyPI version License: MIT Code style: black

A Model Context Protocol (MCP) server enabling AI agents to interact with Google Workspace (Drive, Docs, and Sheets) services.

🌟 Features

  • Google Drive: Search files, create folders

  • Google Docs: Create, read, update documents

  • Google Sheets: Create spreadsheets, read/write cell values

  • Multiple transport modes: stdio (default), SSE, WebSocket

  • MCP-compatible client support (Cursor, etc.)

Related MCP server: mcp-google-sheets

πŸ“‹ Installation

uvx mcp-google-suite

Using pip

pip install mcp-google-suite

Development setup

# Clone and install git clone git@github.com:adexltd/mcp-google-suite.git && cd mcp-google-suite uv venv && source .venv/bin/activate # or .venv\Scripts\activate on Windows uv pip install -e .

πŸ”§ Configuration

Configure for MCP Clients

Add to your client settings (e.g. Cursor, Claude):

Using uvx (recommended):

{ "mcpServers": { "mcp-google-suite": { "command": "uvx", "args": ["mcp-google-suite"], "env": { "GOOGLE_APPLICATION_CREDENTIALS": "~/.google/server-creds.json", "GOOGLE_OAUTH_CREDENTIALS": "~/.google/oauth.keys.json" } } } }

Using pip installation:

{ "mcpServers": { "mcp-google-suite": { "command": "python", "args": ["-m", "mcp_google_suite"], "env": { "GOOGLE_APPLICATION_CREDENTIALS": "~/.google/server-creds.json", "GOOGLE_OAUTH_CREDENTIALS": "~/.google/oauth.keys.json" } } } }

Google OAuth Setup

  1. Visit Google Cloud Console

  2. Enable Drive, Docs, and Sheets APIs

  3. Create OAuth 2.0 credentials

  4. Save as ~/.google/oauth.keys.json

  5. Run mcp-google auth to authenticate

Available Tools

Drive Operations

  • drive_search_files: Search files in Google Drive

    • query (string, required): Search query

    • page_size (integer, optional): Number of results to return

  • drive_create_folder: Create a new folder

    • name (string, required): Folder name

    • parent_id (string, optional): Parent folder ID

Docs Operations

  • docs_create: Create a new document

    • title (string, required): Document title

    • content (string, optional): Initial content

  • docs_get_content: Get document content

    • document_id (string, required): Document ID

  • docs_update_content: Update document content

    • document_id (string, required): Document ID

    • content (string, required): New content

Sheets Operations

  • sheets_create: Create a new spreadsheet

    • title (string, required): Spreadsheet title

    • sheets (array, optional): Sheet names

  • sheets_get_values: Get cell values

    • spreadsheet_id (string, required): Spreadsheet ID

    • range (string, required): A1 notation range

  • sheets_update_values: Update cell values

    • spreadsheet_id (string, required): Spreadsheet ID

    • range (string, required): A1 notation range

    • values (array, required): 2D array of values

πŸ› οΈ Development

# Install dev dependencies uv pip install -e ".[dev]" # Setup pre-commit hooks pre-commit install # Run tests pytest # Format code black . && ruff check --fix .

πŸ” Debugging

Use the MCP Inspector for interactive testing:

# Using uvx npx @modelcontextprotocol/inspector uvx mcp-google # For development cd path/to/mcp-google-suite npx @modelcontextprotocol/inspector uv run mcp-google

πŸ“š Resources

🀝 Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

πŸ”’ Security

See SECURITY.md for reporting vulnerabilities and best practices.

πŸ“„ License

MIT License - See LICENSE file for details.

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/adexltd/mcp-google-suite'

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