| name | google-sheets-automation |
| description | Lightweight Google Sheets integration with standalone OAuth authentication. No MCP server required. Full read/write access. |
| type | skill |
| created | 2026-02-27T00:00:00.000Z |
| domain | productivity |
| category | automation |
| risk | critical |
| source | community |
| tags | ["skill","productivity","automation","google","sheets"] |
Google Sheets
Lightweight Google Sheets integration with standalone OAuth authentication. No MCP server required. Full read/write access.
Requires Google Workspace account. Personal Gmail accounts are not supported.
First-Time Setup
Authenticate with Google (opens browser):
python scripts/auth.py login
Check authentication status:
python scripts/auth.py status
Logout when needed:
python scripts/auth.py logout
Read Commands
All operations via scripts/sheets.py. Auto-authenticates on first use if not logged in.
python scripts/sheets.py get-text SPREADSHEET_ID
python scripts/sheets.py get-text SPREADSHEET_ID --format csv
python scripts/sheets.py get-text SPREADSHEET_ID --format json
python scripts/sheets.py get-range SPREADSHEET_ID "Sheet1!A1:D10"
python scripts/sheets.py get-range SPREADSHEET_ID "A1:C5"
python scripts/sheets.py find "budget 2024"
python scripts/sheets.py find "sales report" --limit 5
python scripts/sheets.py get-metadata SPREADSHEET_ID
Write Commands
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B2" '[["Hello","World"],["Foo","Bar"]]'
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B1" '[["=SUM(A1:A5)","text"]]' --raw
python scripts/sheets.py append-rows SPREADSHEET_ID
python scripts/sheets.py clear-range SPREADSHEET_ID
python scripts/sheets.py batch-update SPREADSHEET_ID