manage_sheet_tabs
Rename, delete, or duplicate a sheet tab in a Google Sheets spreadsheet.
Instructions
Rename, delete, or duplicate a sheet tab inside a spreadsheet.
Single entrypoint for the three most common tab lifecycle operations.
To CREATE a new tab from scratch, use create_sheet (separate tool).
To reorder tabs, use batch_update with updateSheetProperties.index.
Deletion is permanent — the undo is only available through the Sheets UI,
not via the API.
Requires OAuth scope: https://www.googleapis.com/auth/spreadsheets (write).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| user_google_email | Yes | ||
| spreadsheet_id | Yes | Google Sheets spreadsheet ID (from the URL after `/d/`). | |
| action | Yes | Which operation to perform. One of: - `"rename"` — change the tab's title. Requires `new_name`. - `"delete"` — remove the tab and all its data. Cannot delete the last remaining sheet in a spreadsheet (Google API error). - `"duplicate"` — create a copy of the tab. `new_name` optional (defaults to "Copy of <original>"). | |
| sheet_id | No | Numeric sheet ID (NOT the spreadsheet ID). Preferred over `sheet_name` because it's unique and stable. Get it from `get_spreadsheet_info` under `sheets[].properties.sheetId`. The first sheet is typically `0`. Either `sheet_id` or `sheet_name` must be provided. | |
| sheet_name | No | Tab title (case-sensitive). Used only when `sheet_id` is omitted — the tool looks up the ID by name. Ambiguous if multiple tabs share the name (rare — Sheets UI normally prevents this). | |
| new_name | No | New title for the tab. Required for `"rename"`. Optional for `"duplicate"` (auto-generated if omitted). Ignored for `"delete"`. Must be unique within the spreadsheet. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |