MCP server for Google Workspace operations (Drive, Docs, and Sheets)
Project description
MCP Google Workspace Server
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.)
📋 Installation
Using uv (recommended)
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
- Visit Google Cloud Console
- Enable Drive, Docs, and Sheets APIs
- Create OAuth 2.0 credentials
- Save as
~/.google/oauth.keys.json - Run
mcp-google authto authenticate
Available Tools
Drive Operations
drive_search_files: Search files in Google Drivequery(string, required): Search querypage_size(integer, optional): Number of results to return
drive_create_folder: Create a new foldername(string, required): Folder nameparent_id(string, optional): Parent folder ID
Docs Operations
docs_create: Create a new documenttitle(string, required): Document titlecontent(string, optional): Initial content
docs_get_content: Get document contentdocument_id(string, required): Document ID
docs_update_content: Update document contentdocument_id(string, required): Document IDcontent(string, required): New content
Sheets Operations
sheets_create: Create a new spreadsheettitle(string, required): Spreadsheet titlesheets(array, optional): Sheet names
sheets_get_values: Get cell valuesspreadsheet_id(string, required): Spreadsheet IDrange(string, required): A1 notation range
sheets_update_values: Update cell valuesspreadsheet_id(string, required): Spreadsheet IDrange(string, required): A1 notation rangevalues(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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_google_suite-0.1.1.tar.gz.
File metadata
- Download URL: mcp_google_suite-0.1.1.tar.gz
- Upload date:
- Size: 61.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b13bd19dc6af6a77b00a2d6b102d040bb5c1fbeb2b8a45f0d14eadbaf9daa338
|
|
| MD5 |
74c4d7862e62e5a2890783c30122c025
|
|
| BLAKE2b-256 |
96e00f4bbeb59535d14b71c1dd95fc8abe0377480d3a3afec6a94d115c81cd4b
|
File details
Details for the file mcp_google_suite-0.1.1-py3-none-any.whl.
File metadata
- Download URL: mcp_google_suite-0.1.1-py3-none-any.whl
- Upload date:
- Size: 22.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df4cd7fe50f2aa81b08dc83d30969a4b152892273b38d13744c33e9a651410a1
|
|
| MD5 |
53191b97087d917d8df97de22c4ab983
|
|
| BLAKE2b-256 |
c9f1fb9885872bddefcdf66e88e69f89df0be022053f9e5637ba55e2e58ee02f
|