Google Sheets MCP integration for AI agents.
Connect AI agents to Google Sheets through 40 structured actions, including batch get, add sheet, delete dimension, and aggregate column data. Review authent…
- ACTION CONTRACTS
- 40
- AUTHENTICATION
- OAuth 2.0
- SOURCE STATUS
- Provider-backed
CATALOG SOURCE REVIEWED AUGUST 23, 2026 / ACTION NAMES AND SCHEMAS DERIVED FROM WORKING MACHINES PROVIDER SOURCE
CAPABILITY PROFILE
What the Google Sheets integration exposes
The Google Sheets Agent App exposes 40 provider-backed actions for productivity and data work. Its current contract lets an authorized agent read multiple spreadsheet ranges through values:batchget and return stable valueranges output, add a new sheet through spreadsheets.batchupdate and return stable batch replies, and delete rows or columns through spreadsheets.batchupdate and return stable batch replies. These operations are called through Working Machines as typed capabilities rather than through browser navigation or copied UI steps.
A connection uses OAuth 2.0. Before execution, the agent can inspect the selected action, its required fields, declared scopes, and expected output contract. Provider credentials remain inside the Working Machines runtime; the calling agent receives the capability and its structured result, not the underlying secret.
For reliable operation, start with the narrowest action that satisfies the task, resolve stable provider identifiers before changing state, and validate the returned object or status after execution. Availability still depends on the connected Google Sheets account, granted provider permissions, workspace policy, region, plan, and upstream API behavior.
VERIFIED ACTION SAMPLE
Real Google Sheets capabilities.
Showing 12 of 40 actions. Risk labels are conservative signals based on operation names, not substitutes for provider documentation or runtime policy.
batch_getREADRead multiple spreadsheet ranges through values:batchGet and return stable valueRanges output.
INPUTS: spreadsheetId / ranges / majorDimension / valueRenderOption / dateTimeRenderOption
add_sheetWRITEAdd a new sheet through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / title / properties / forceUnique / objectSheetConfig
delete_dimensionHIGH IMPACTDelete rows or columns through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / deleteDimensionRequest / sheetId / sheetName / dimension
aggregate_column_dataREVIEWAggregate numeric values from a target column, optionally filtered by another column, with stable counters.
INPUTS: spreadsheetId / sheetName / targetColumn / operation / searchColumn
append_dimensionREVIEWAppend rows or columns through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / sheetId / dimension / length / includeSpreadsheetInResponse
auto_resize_dimensionsREVIEWAuto-resize rows or columns through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / sheetId / sheetName / dimension / startIndex
batch_clear_values_by_data_filterREVIEWClear spreadsheet values through values.batchClearByDataFilter and return the cleared ranges.
INPUTS: spreadsheetId / dataFilters
batch_update_values_by_data_filterWRITEWrite spreadsheet values through values.batchUpdateByDataFilter and return stable aggregate counters.
INPUTS: spreadsheetId / data / valueInputOption / includeValuesInResponse / responseValueRenderOption
clear_basic_filterREVIEWClear a basic filter through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / sheetId / includeSpreadsheetInResponse / responseRanges / responseIncludeGridData
clear_valuesREVIEWClear a single spreadsheet value range through values.clear and return the cleared A1 range.
INPUTS: spreadsheetId / range
create_chartWRITECreate a chart through spreadsheets.batchUpdate and return stable batch replies.
INPUTS: spreadsheetId / sheetId / chartSpec / chartType / dataRange
create_google_sheet1WRITECreate a Google Sheets spreadsheet and return stable spreadsheet metadata for the new file.
INPUTS: title
INPUT CONTRACTS
Know what the action needs before it runs.
batch_get
spreadsheetIdREQUIRED- Google Sheets spreadsheet ID or spreadsheet URL.
rangesREQUIRED- String values.
majorDimensionOPTIONAL- Major dimension for value ranges.
valueRenderOptionOPTIONAL- How values should be rendered.
dateTimeRenderOptionOPTIONAL- How dates and times should be rendered.
add_sheet
spreadsheetIdREQUIRED- Google Sheets spreadsheet ID or spreadsheet URL.
titleOPTIONAL- New sheet title.
propertiesOPTIONAL- Google Sheets API object.
forceUniqueOPTIONAL- Ensure the title is unique.
objectSheetConfigOPTIONAL- Google Sheets API object.
delete_dimension
spreadsheetIdREQUIRED- Google Sheets spreadsheet ID or spreadsheet URL.
deleteDimensionRequestOPTIONAL- Delete dimension request.
sheetIdOPTIONAL- Numeric sheet ID.
sheetNameOPTIONAL- Sheet title.
dimensionOPTIONAL- Spreadsheet dimension.
aggregate_column_data
spreadsheetIdREQUIRED- Google Sheets spreadsheet ID or spreadsheet URL.
sheetNameREQUIRED- Sheet title.
targetColumnREQUIRED- Column header or A1 column to aggregate.
operationREQUIRED- Aggregation operation.
searchColumnOPTIONAL- Column used to filter rows.
PROVIDER-SPECIFIC WORKFLOWS
Jobs this Agent App can support
Inspect Batch Get
Read multiple spreadsheet ranges through values:batchGet and return stable valueRanges output. Use this as a bounded discovery step, retain the returned identifier, and avoid expanding the read beyond the task's stated scope.
batch_getControl Add Sheet
Add a new sheet through spreadsheets.batchUpdate and return stable batch replies. Resolve the target first, present material changes for confirmation, and make retries idempotent where the provider supports it.
add_sheetVerify with Add Sheet
Add a new sheet through spreadsheets.batchUpdate and return stable batch replies. Compare the returned provider state with the intended outcome and preserve stable IDs or canonical links in the run record.
add_sheetSAFETY BOUNDARY
Operate Google Sheets with explicit limits
- Authorize Google Sheets with OAuth 2.0 and grant only the provider access required by the selected actions.
- 16 actions are change-capable by name. Confirm the target identity and material parameters before allowing a write.
- Treat `delete_dimension` and `delete_sheet` as high-impact operations and require an explicit approval boundary.
- The sampled contract declares provider scopes including `https://www.googleapis.com/auth/spreadsheets`, `https://www.googleapis.com/auth/drive`, `https://www.googleapis.com/auth/spreadsheets.readonly`, and `https://www.googleapis.com/auth/drive.readonly`; verify the complete action contract before execution.
- After a call, inspect the structured result and execution record before reporting that the Google Sheets task completed successfully.
CONNECTION MODEL
OAuth 2.0
Google Sheets uses OAuth 2.0. Connection requirements and availability are determined by the provider and the Working Machines deployment.
Working Machines stores provider credentials behind the execution boundary. An agent can use an authorized connection identity, but catalog discovery alone does not reveal OAuth tokens, API keys, or provider secrets.
- READ SIGNALS
- 12
- WRITE SIGNALS
- 14
- HIGH IMPACT
- 2
- REVIEW SIGNALS
- 12
EVIDENCE AND AVAILABILITY
Provider reference
Action names, input fields, authentication types, and counts on this page are generated from the Working Machines provider catalog. Provider behavior, quotas, object semantics, account eligibility, and regional availability remain governed by Google Sheets.