AgentPMT
Google Sheets

Google Sheets

Connector

Available ActionsEach successful request consumes credits as outlined below.

create_spreadsheet5crget_spreadsheet5crupdate_spreadsheet_properties5crsearch_spreadsheets5crlist_sheets5cradd_sheet5crdelete_sheet5crduplicate_sheet5crrename_sheet5crupdate_sheet_properties5crget_values5crbatch_get_values5crget_sheet_data5crsearch_values5crupdate_values5crbatch_update_values5crappend_values5crclear_values5crbatch_clear_values5crformat_cells5crset_number_format5crmerge_cells5crunmerge_cells5crset_borders5crinsert_rows5crinsert_columns5crdelete_rows5crdelete_columns5crresize_dimensions5crauto_resize_dimensions5crsort_range5crfind_replace5crcopy_paste5crcut_paste5crset_basic_filter5crclear_filter5crprotect_range5crunprotect_range5cradd_named_range5crdelete_named_range5crset_data_validation5cradd_conditional_formatting5crbatch_update5crshare_spreadsheet5cr

Details

Comprehensive Google Sheets integration tool that enables AI agents to perform all spreadsheet operations through OAuth authentication. This tool provides full access to Google Sheets functionality including creating and managing spreadsheets, reading and writing data with support for formulas and batch operations, managing sheets and tabs with adding deleting and renaming capabilities, applying advanced cell formatting with colors fonts and number formats, inserting and deleting rows and columns with automatic resizing, sorting and filtering data with complex criteria, and executing find and replace operations across entire spreadsheets. The tool supports both single and batch operations for optimal performance, handles all Google Sheets data types including formulas dates and currency, provides granular control over cell formatting and sheet properties, and includes advanced features like merging cells setting filters and protecting ranges. Perfect for data analysis reporting automation spreadsheet generation and collaborative document management workflows.

Use Cases

automated report generation, data import and export, spreadsheet templating, bulk data updates, financial modeling, inventory management, dashboard creation, collaborative data entry, formula automation, batch formatting operations

Credentials

Google OAuth *
Connect your Google account.
oauth token

Manage credentials in your dashboard.

Actions(44)

create_spreadsheet5cr2 params(1 required)

Create a new Google Sheets spreadsheet.

Create a new Google Sheets spreadsheet.

titlerequiredstring

Title for the new spreadsheet

initial_dataobject

Initial data for the first sheet. Contains 'sheet_name' (string) and 'values' (2D array).

Properties:
sheet_name(string)- Name for the initial sheet (defaults to Sheet1)
values(array)- 2D array of initial values
get_spreadsheet5cr1 param(1 required)

Get spreadsheet metadata including title, sheets, locale, and timezone.

Get spreadsheet metadata including title, sheets, locale, and timezone.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

update_spreadsheet_properties5cr2 params(1 required)

Update spreadsheet-level properties such as the title.

Update spreadsheet-level properties such as the title.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

titlestring

New title for the spreadsheet

search_spreadsheets5cr2 params

Search for Google Sheets spreadsheets by name. Returns results sorted by most recently modified.

Search for Google Sheets spreadsheets by name. Returns results sorted by most recently modified.

querystring

Search query matching against spreadsheet name (contains match). Omit to list recent spreadsheets.

max_resultsinteger

Maximum results to return (1-100)

Default: 20
Range: 1 - 100
list_sheets5cr1 param(1 required)

List all sheets/tabs in a spreadsheet.

List all sheets/tabs in a spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

add_sheet5cr6 params(2 required)

Add a new sheet/tab to a spreadsheet.

Add a new sheet/tab to a spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

new_sheet_namerequiredstring

Name for the new sheet

tab_colorobject

RGB color for sheet tab (values 0-1)

Properties:
red(number)- Red component (0-1)
green(number)- Green component (0-1)
blue(number)- Blue component (0-1)
hiddenboolean

Whether the sheet should be hidden

num_rowsinteger

Number of rows for the new sheet

Range: 1 - ...
num_columnsinteger

Number of columns for the new sheet

Range: 1 - ...
delete_sheet5cr4 params(1 required)

Delete a sheet/tab from a spreadsheet.

Delete a sheet/tab from a spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

sheet_namestring

Name of the sheet to delete

sheet_idinteger

Numeric ID of the sheet

sheet_indexinteger

0-based index of the sheet

duplicate_sheet5cr5 params(1 required)

Duplicate an existing sheet within the same spreadsheet.

Duplicate an existing sheet within the same spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

sheet_namestring

Name of the sheet to duplicate

sheet_idinteger

Numeric ID of the sheet to duplicate

sheet_indexinteger

0-based index of the sheet to duplicate

new_sheet_namestring

Name for the duplicated sheet

rename_sheet5cr5 params(2 required)

Rename a sheet/tab.

Rename a sheet/tab.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

new_sheet_namerequiredstring

New name for the sheet

sheet_namestring

Current name of the sheet to rename

sheet_idinteger

Numeric ID of the sheet

sheet_indexinteger

0-based index of the sheet

update_sheet_properties5cr7 params(1 required)

Update sheet-level properties (title, tab color, visibility).

Update sheet-level properties (title, tab color, visibility).

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

sheet_namestring

Name of the sheet to update

sheet_idinteger

Numeric ID of the sheet

new_sheet_namestring

New name for the sheet

tab_colorobject

RGB color for sheet tab (values 0-1)

Properties:
red(number)- Red component (0-1)
green(number)- Green component (0-1)
blue(number)- Blue component (0-1)
hiddenboolean

Whether sheet should be hidden

right_to_leftboolean

Whether sheet should use right-to-left layout

get_values5cr4 params(2 required)

Read values from a single range.

Read values from a single range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range (e.g., 'Sheet1!A1:C10')

value_render_optionstring

How to return values

Values:
FORMATTED_VALUEUNFORMATTED_VALUEFORMULA
Default: FORMATTED_VALUE
major_dimensionstring

Whether to interpret arrays as rows or columns

Values:
ROWSCOLUMNS
Default: ROWS
batch_get_values5cr4 params(2 required)

Read values from multiple ranges at once.

Read values from multiple ranges at once.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangesrequiredarray

Array of A1 notation ranges

Array of: string
value_render_optionstring

How to return values

Values:
FORMATTED_VALUEUNFORMATTED_VALUEFORMULA
Default: FORMATTED_VALUE
major_dimensionstring

Whether to interpret arrays as rows or columns

Values:
ROWSCOLUMNS
Default: ROWS
get_sheet_data5cr2 params(1 required)

Get all data from a specific sheet.

Get all data from a specific sheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

sheet_namestring

Name of the sheet (defaults to 'Sheet1')

search_values5cr6 params(1 required)

Search for text within a spreadsheet.

Search for text within a spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

findstring

Text to search for (or use 'search_query' as alias)

search_querystring

Alias for 'find'

rangestring

A1 notation range to limit the search

match_caseboolean

Whether search is case-sensitive

match_entire_cellboolean

Whether to match entire cell contents only

update_values5cr7 params(3 required)

Write values to a single range (overwrites existing data).

Write values to a single range (overwrites existing data).

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range

valuesrequiredarray

2D array of values (outer array = rows, inner arrays = columns)

Array of: array
value_input_optionstring

How to interpret input values

Values:
USER_ENTEREDRAW
Default: USER_ENTERED
major_dimensionstring

Whether to interpret arrays as rows or columns

Values:
ROWSCOLUMNS
Default: ROWS
include_values_in_responseboolean

Whether to return updated values in response

response_value_render_optionstring

How to render values in response

Values:
FORMATTED_VALUEUNFORMATTED_VALUEFORMULA
Default: FORMATTED_VALUE
batch_update_values5cr4 params(2 required)

Write values to multiple ranges at once.

Write values to multiple ranges at once.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

datarequiredarray

Array of range/values pairs

Array of: object
value_input_optionstring

How to interpret input values

Values:
USER_ENTEREDRAW
Default: USER_ENTERED
include_values_in_responseboolean

Whether to return updated values

append_values5cr6 params(3 required)

Append rows after the last row of existing data.

Append rows after the last row of existing data.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range (data will be appended after the last row in this range)

valuesrequiredarray

2D array of values to append

Array of: array
value_input_optionstring

How to interpret input values

Values:
USER_ENTEREDRAW
Default: USER_ENTERED
major_dimensionstring

Whether to interpret arrays as rows or columns

Values:
ROWSCOLUMNS
Default: ROWS
include_values_in_responseboolean

Whether to return updated values

clear_values5cr2 params(2 required)

Clear values from a range (preserves formatting).

Clear values from a range (preserves formatting).

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to clear

batch_clear_values5cr2 params(2 required)

Clear values from multiple ranges at once.

Clear values from multiple ranges at once.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangesrequiredarray

Array of A1 notation ranges to clear

Array of: string
format_cells5cr5 params(3 required)

Apply text and cell formatting to a range.

Apply text and cell formatting to a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range (can include sheet name like 'Sheet1!A1:B2')

cell_formatrequiredobject

Cell formatting options. Color fields require RGB dicts with 0-1 float values.

Properties:
bold(boolean)- Bold text
italic(boolean)- Italic text
strikethrough(boolean)- Strikethrough text
underline(boolean)- Underline text
font_size(integer)- Font size in points
font_family(string)- Font family name
text_color(object)- Text color (RGB 0-1)
background_color(object)- Background color (RGB 0-1)
horizontal_alignment(string)- Horizontal alignment
vertical_alignment(string)- Vertical alignment
wrap_strategy(string)- Text wrapping strategy
sheet_namestring

Sheet name (can also be embedded in range)

sheet_idinteger

Numeric sheet ID

set_number_format5cr5 params(3 required)

Apply number formatting to a range.

Apply number formatting to a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range

number_formatrequiredobject

Number format specification

Properties:
format_type(string)- Number format type
pattern(string)- Custom number format pattern (e.g., '$#,##0.00')
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

merge_cells5cr5 params(2 required)

Merge cells in a range.

Merge cells in a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to merge

sheet_namestring

Sheet name (can also be embedded in range)

sheet_idinteger

Numeric sheet ID

merge_typestring

How to merge cells

Values:
MERGE_ALLMERGE_ROWSMERGE_COLUMNS
Default: MERGE_ALL
unmerge_cells5cr4 params(2 required)

Unmerge previously merged cells.

Unmerge previously merged cells.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to unmerge

sheet_namestring

Sheet name (can also be embedded in range)

sheet_idinteger

Numeric sheet ID

set_borders5cr4 params(2 required)

Set borders on cells in a range.

Set borders on cells in a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

insert_rows5cr6 params(2 required)

Insert rows at a specified position.

Insert rows at a specified position.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

start_indexrequiredinteger

0-based row index where insertion starts

Range: 0 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

num_rowsinteger

Number of rows to insert (default 1)

Range: 1 - ...
inherit_from_beforeboolean

Whether new rows should inherit formatting from the row before

insert_columns5cr6 params(2 required)

Insert columns at a specified position.

Insert columns at a specified position.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

start_indexrequiredinteger

0-based column index where insertion starts

Range: 0 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

num_columnsinteger

Number of columns to insert (default 1)

Range: 1 - ...
inherit_from_beforeboolean

Whether new columns should inherit formatting from the column before

delete_rows5cr5 params(3 required)

Delete rows by index range.

Delete rows by index range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

start_indexrequiredinteger

0-based starting row index

Range: 0 - ...
end_indexrequiredinteger

0-based ending row index (exclusive)

Range: 0 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

delete_columns5cr5 params(3 required)

Delete columns by index range.

Delete columns by index range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

start_indexrequiredinteger

0-based starting column index

Range: 0 - ...
end_indexrequiredinteger

0-based ending column index (exclusive)

Range: 0 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

resize_dimensions5cr7 params(5 required)

Set row height or column width in pixels.

Set row height or column width in pixels.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

dimensionrequiredstring

Dimension to resize

Values:
ROWSCOLUMNS
start_indexrequiredinteger

0-based starting index

Range: 0 - ...
end_indexrequiredinteger

0-based ending index (exclusive)

Range: 0 - ...
pixel_sizerequiredinteger

Height (for rows) or width (for columns) in pixels

Range: 1 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

auto_resize_dimensions5cr6 params(4 required)

Auto-fit row height or column width to content.

Auto-fit row height or column width to content.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

dimensionrequiredstring

Dimension to auto-resize

Values:
ROWSCOLUMNS
start_indexrequiredinteger

0-based starting index

Range: 0 - ...
end_indexrequiredinteger

0-based ending index (exclusive)

Range: 0 - ...
sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

sort_range5cr5 params(3 required)

Sort data in a range by one or more columns.

Sort data in a range by one or more columns.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to sort

sort_specsrequiredarray

Sorting specifications

Array of: object
sheet_namestring

Sheet name (can also be embedded in range)

sheet_idinteger

Numeric sheet ID

find_replace5cr9 params(3 required)

Find and replace text across the spreadsheet or a specific sheet.

Find and replace text across the spreadsheet or a specific sheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

findrequiredstring

Text to search for

replacementrequiredstring

Text to replace with

sheet_namestring

Sheet name (limit to one sheet)

sheet_idinteger

Numeric sheet ID (limit to one sheet)

match_caseboolean

Whether search is case-sensitive

match_entire_cellboolean

Whether to match entire cell contents only

search_by_regexboolean

Whether to use regex for search

include_formulasboolean

Whether to search in formulas

copy_paste5cr4 params(2 required)

Copy and paste a range to another location.

Copy and paste a range to another location.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

Source A1 notation range

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

cut_paste5cr4 params(2 required)

Cut and paste a range to another location.

Cut and paste a range to another location.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

Source A1 notation range

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

set_basic_filter5cr5 params(2 required)

Apply a basic filter to a data range.

Apply a basic filter to a data range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range for the filter

sheet_namestring

Sheet name (can also be embedded in range)

sheet_idinteger

Numeric sheet ID

filter_criteriaobject

Filter criteria specification

clear_filter5cr3 params(1 required)

Remove the basic filter from a sheet.

Remove the basic filter from a sheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

protect_range5cr6 params(2 required)

Protect a range from editing.

Protect a range from editing.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to protect

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

descriptionstring

Description for the protected range

warning_onlyboolean

Whether protection should be warning-only (users can still edit)

unprotect_range5cr4 params(2 required)

Remove protection from a range.

Remove protection from a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range to unprotect

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

add_named_range5cr5 params(3 required)

Create a named range in the spreadsheet.

Create a named range in the spreadsheet.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

namerequiredstring

Name for the named range

rangerequiredstring

A1 notation range

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

delete_named_range5cr2 params(2 required)

Delete a named range.

Delete a named range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

named_range_idrequiredstring

ID of the named range to delete

set_data_validation5cr5 params(3 required)

Set data validation rules on a range.

Set data validation rules on a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range

validation_rulerequiredobject

Data validation rule specification

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

add_conditional_formatting5cr5 params(3 required)

Add conditional formatting rules to a range.

Add conditional formatting rules to a range.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

rangerequiredstring

A1 notation range

rulerequiredobject

Conditional formatting rule specification

sheet_namestring

Sheet name

sheet_idinteger

Numeric sheet ID

batch_update5cr2 params(2 required)

Execute multiple raw Google Sheets API requests in a single call for advanced operations.

Execute multiple raw Google Sheets API requests in a single call for advanced operations.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

requestsrequiredarray

Array of raw Sheets API batch update request objects

Array of: object
share_spreadsheet5cr4 params(3 required)

Share a spreadsheet with a user, group, domain, or anyone.

Share a spreadsheet with a user, group, domain, or anyone.

spreadsheet_idrequiredstring

Google Sheets ID or full spreadsheet URL

emailrequiredstring

Email address for sharing

Format: email
rolerequiredstring

Sharing role

Values:
ownerorganizerfileOrganizerwritercommenterreader
sharing_typestring

Sharing type

Values:
usergroupdomainanyone
Default: user

Frequently Asked Questions

How do I connect this tool to an external agent?

Install commands

npm install -g @agentpmt/mcp-router
agentpmt-setup

Hosted MCP config

{
  "mcpServers": {
    "agentpmt": {
      "type": "streamable-http",
      "url": "https://api.agentpmt.com/mcp",
      "headers": {
        "Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
        "x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
      }
    }
  }
}

How does an external agent use this tool?

Agent prompt

Call the AgentPMT-Tool-Search-and-Execution tool with action 'get_schema' and tool_id 696302894cf4309309cac7b2 ("Google Sheets"). Then call the same tool with action 'call_tool', tool_id 696302894cf4309309cac7b2, and the parameters needed for my request.

Workflows Using This Tool

2 / 7
Workflow
Saves ~1 hr
File Management
Document OCR Agent
Google Sheets
Chart Generator
Accepts uploaded bank statements, extracts transactions via OCR, categorizes each transaction by expense type, logs categorized data to a spreadsheet, and generates a spending breakdown chart. Perfect for personal finance analysis or small business bookkeeping.

Looking for help integrating AI into your business? Set up a free consultation.

Google Sheets by Apoth3osis | AgentPMT