Google Sheets
Search and inspect Google Sheets, create and edit spreadsheets, scan for data issues, review edit history, and manage comments.
How to connect
https://googlesheets.run.tools
tools/list returns the expected tools before relying on them in production.Tools
(13)-
Arcade_ListAppsSee the apps the current caller can act on and whether they are connected. Returns each app's id, name, connected state, and (when connected) the account it is connected as. Call this to answer "what apps do I have?" or when the caller's connection state may have changed since the session started.
-
GoogleSheets_CheckSpreadsheetAccessCheck whether this app can already read each of several spreadsheets, in one batched pre-flight call, before attempting to read them. Use this when the user references multiple spreadsheets so any that are not yet accessible can be granted together in a single picker step, instead of hitting a separate access error and grant prompt for each one. Each input may be a bare file id or a full Google Sheets/Drive URL. Returns ``spreadsheets`` (a per-id list with ``accessible``, the ``title`` and ``m
-
GoogleSheets_CommentOnSpreadsheetCreate a comment on a spreadsheet, edit a comment's body, or resolve/reopen it. Comments are created at the file level: the Drive API cannot anchor a NEW Sheets comment to a specific cell or range. Cell/range-anchored comments made in the Sheets UI are still readable via list_spreadsheet_comments (which returns their anchor). Editing a comment's body is allowed only for the comment's author.
-
GoogleSheets_CreateOrEditSpreadsheetCreate a new spreadsheet or batch-edit an existing one. Omit `spreadsheet_id` to create; provide it to edit. All writes flow through `requests[]` — typed operations like updateCells, addSheet, sortRange, addConditionalFormatRule, autoResizeDimensions, and more. For updateCells use ExtendedValue with an explicit type field (stringValue, numberValue, boolValue, formulaValue). By default, build clean, professional-looking tables with restrained, consistent formatting and plain-text tab names/hea
-
GoogleSheets_DeleteCommentDelete a comment from a spreadsheet. Only the comment's author can delete it (enforced by Google Drive); deleting marks the whole thread (the comment and its replies) as deleted.
-
GoogleSheets_GenerateGoogleFilePickerUrlGenerate a URL where the user can grant this app access to spreadsheets. Opens Google's first-party Drive picker, filtered to Google Sheets, where the user browses and selects which spreadsheets to share with this application — it is not a sign-in or credential prompt. Use this when a prior tool reported that a file was not found or access was denied, and the user expects the file to exist. After the user completes the picker flow, retry the prior operation.
-
GoogleSheets_GetSpreadsheetEditHistoryReport who edited a spreadsheet and when, from Google Drive revisions. Reports the "who" and "when" only — not which cells changed, and it can't revert. 'summary' (default) answers "who last edited this and when" (read from the file's head, so always accurate), plus per-window aggregates (revisions read, contributors, first edit) and a preview of recent edits — computed over a bounded window of history per call. These aggregates describe the whole history only when `is_incomplete` is false; it
-
GoogleSheets_InspectSpreadsheetInspect a Google Sheets spreadsheet's structure or read a range of cells. Use the default 'structure' mode to understand a workbook cheaply before reading. Switch to 'read' mode to pull a range as a grid of rows, optionally with per-cell annotations and a rendered markdown/csv/tsv export. In 'read' mode the response's per-tab 'sheets' block reports only tab identity and the allocated grid; its scan-derived fields (used_range, populated_cell_count, formula_cell_count, first_row, table_regions)
-
GoogleSheets_ListSpreadsheetCommentsList a spreadsheet's comment threads, or the full replies of a single comment. In 'comments' mode each comment includes up to a few trimmed reply previews plus the total reply_count; use 'thread' mode for a comment's complete reply list. Without filters/ordering, pagination walks every comment. Client-side filters (has_replies, resolved) and order_by are applied only within a bounded scan of the first 500 comments, so on larger sheets drop them and page through everything with the native (unbou
-
GoogleSheets_ReplyToCommentAdd a reply to an existing comment on a spreadsheet. To resolve or reopen the comment instead, use comment_on_spreadsheet with a status.
-
GoogleSheets_ScanForDataIssuesDeterministically flag 'weird'/bad cells in spreadsheet data. No LLM judgement: the same input always returns the same flags. Each cell-level finding carries a coord, a 0-based row_index/column_index (ready for a Sheets GridRange), the rule, a severity (high -> red, medium/low -> yellow), and a note-ready reason — so the output drops straight into an annotate/format recipe. In the default `mode='grouped'` these are aggregated per rule+column within each table into `groups` (with A1 `coords`); u
-
GoogleSheets_SearchSpreadsheetsSearches for spreadsheets in the user's Google Drive based on the titles and content and returns the title, ID, and URL for each matching spreadsheet. Does not return the content/data of the sheets in the spreadsheets - only the metadata. Excludes spreadsheets that are in the trash.
-
GoogleSheets_WhoAmIGet comprehensive user profile and Google Sheets environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Sheets access permissions, and other important profile details from Google services.