Authorization is a one-time desktop OAuth flow that re-prompts when it lapses, so the agent inherits exactly your access and nothing wider. Edits land at the granularity of a cell, a row or a column rather than an arbitrary range, which suits maintaining a sheet more than loading one in bulk.
A connector to the Google Sheets API that acts as your own Google account, authorized once through an OAuth desktop flow. It reads a sheet whole or by headings, rows and columns, edits at cell, row or column level, and creates, renames and lists the tabs in a spreadsheet.
- A whole sheet read at once, or narrowed to its column headings, named rows, or named columns
- A single cell, a whole row or a whole column edited in place
- A row or a column inserted at a position you choose
- Tabs listed, created and renamed; spreadsheets created and renamed
- refresh_auth to re-authorize the Google account once its credentials expire
A Google Cloud project with the Google Sheets API turned on, and an OAuth client ID of the desktop-application type whose downloaded credentials sit in the dist directory as gcp-oauth.keys.json. Clone and build the repository first. Starting the server prompts you to authorize your Google account, and prompts again when that lapses.
One command — npx -y google-sheets-mcp
