Install
openclaw skills install clawbus-google-workspaceManage Google Calendar, Google Drive, and Google Sheets through MyBrandMetrics-connected Google data sources and the local Google Workspace CLI. Use it to list, create, update, and delete Calendar events; read, append, update, and batch update Google Sheets; and search, create, move, copy, share, upload, export, and delete Google Drive files and folders. No Google Cloud project setup and no MCP server are required: sign in to MyBrandMetrics with Google, connect the needed Google data sources, get a MyBrandMetrics API key, and start using the skill.
openclaw skills install clawbus-google-workspaceManage Google Calendar, Google Drive, and Google Sheets through MyBrandMetrics-connected Google data sources.
This skill uses a local gws CLI wrapper, but the Google OAuth setup is handled
by MyBrandMetrics. That means no Google Cloud project setup, no OAuth client
configuration, and no MCP server are required. Sign in to MyBrandMetrics with
Google, connect the Google data sources you need, get a MyBrandMetrics API key,
and use natural-language requests or direct commands.
Website: https://www.clawbus.com/
MyBrandMetrics API: https://mybrandmetrics.com/
| This skill | Typical MCP setup |
|---|---|
| Sign in to MyBrandMetrics with Google. | Create or configure a Google Cloud project. |
| Connect Google Calendar, Google Drive, and Google Sheets as data sources. | Configure OAuth clients, scopes, and local MCP server auth. |
| Use a MyBrandMetrics API key to fetch managed access tokens. | Manage credentials and token storage yourself. |
Run with a local wrapper around gws; no MCP server required. | Requires running and maintaining an MCP server. |
Use this when you want Google Workspace actions without setting up your own Google project or MCP server.
| Capability | Details |
|---|---|
| Google Calendar | List, create, update, patch, and delete calendar events. |
| Google Sheets | Read values, update ranges, append rows, and run spreadsheet batch updates. |
| Google Drive search | List and search Drive files and folders. |
| Google Drive file management | Create folders, move files, copy files, trash/delete files, and manage sharing permissions. |
| Google Drive upload/export | Upload local files to Drive and export Google Docs files to formats such as PDF. |
| Managed Google auth | Fetch service-specific Google access tokens through MyBrandMetrics using google_calendar, google_sheets, or google_drive. |
Open https://mybrandmetrics.com/ and sign in with Google.
In MyBrandMetrics, open Data sources.
Connect the Google data sources you need:
Wait until each selected connection is ready.
In https://mybrandmetrics.com/, get the MyBrandMetrics API key.
Install the google-workspace skill.
Save the MyBrandMetrics API key for the wrapper:
echo "YOUR_API_KEY" > ~/.google_workspace_api_key
You can also set GWS_SKILL_API_KEY instead.
If gws is not installed, run:
bash scripts/install_gws.sh
Start Google Calendar, Google Drive, or Google Sheets workflows with natural-language instructions.
Use natural-language prompts after the skill is installed. Include:
Examples:
List my next 10 Google Calendar events.
Append this row to Sheet1 in my campaign spreadsheet.
Find Google Drive files with "budget" in the name and share the selected file with editor access.
Use scripts/gws_wrapper.py.
General pattern:
python3 scripts/gws_wrapper.py <service> <resource> <method> [args]
The wrapper maps services to MyBrandMetrics source keys:
| Service | MyBrandMetrics source key |
|---|---|
calendar | google_calendar |
sheets | google_sheets |
drive | google_drive |
List events:
python3 scripts/gws_wrapper.py calendar events list \
--params '{"calendarId": "primary", "maxResults": 10}'
Create an event:
python3 scripts/gws_wrapper.py calendar events insert \
--params '{"calendarId": "primary"}' \
--json '{"summary": "Planning meeting", "start": {"dateTime": "2026-05-21T10:00:00+08:00"}, "end": {"dateTime": "2026-05-21T10:30:00+08:00"}}'
Read values:
python3 scripts/gws_wrapper.py sheets spreadsheets values get \
--params '{"spreadsheetId": "SPREADSHEET_ID", "range": "Sheet1!A1:D10"}'
Append values:
python3 scripts/gws_wrapper.py sheets spreadsheets values append \
--params '{"spreadsheetId": "SPREADSHEET_ID", "range": "Sheet1!A1", "valueInputOption": "USER_ENTERED"}' \
--json '{"values": [["New row", "More data"]]}'
Search files:
python3 scripts/gws_wrapper.py drive files list \
--params '{"pageSize": 10, "q": "name contains '\''budget'\'' and trashed = false"}'
Upload a file:
python3 scripts/gws_wrapper.py drive +upload /local/path/file.pdf \
--parent "FOLDER_ID" \
--name "file.pdf"
Export a Google Docs file:
python3 scripts/gws_wrapper.py drive files export \
--params '{"fileId": "FILE_ID", "mimeType": "application/pdf"}' \
--output document.pdf
gws is missing, run scripts/install_gws.sh.