universal-mcp-applications 0.1.21__py3-none-any.whl → 0.1.23__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of universal-mcp-applications might be problematic. Click here for more details.

Files changed (78) hide show
  1. universal_mcp/applications/BEST_PRACTICES.md +166 -0
  2. universal_mcp/applications/airtable/app.py +0 -1
  3. universal_mcp/applications/apollo/app.py +0 -1
  4. universal_mcp/applications/aws_s3/app.py +40 -39
  5. universal_mcp/applications/browser_use/README.md +1 -0
  6. universal_mcp/applications/browser_use/__init__.py +0 -0
  7. universal_mcp/applications/browser_use/app.py +71 -0
  8. universal_mcp/applications/calendly/app.py +125 -125
  9. universal_mcp/applications/canva/app.py +95 -99
  10. universal_mcp/applications/confluence/app.py +0 -1
  11. universal_mcp/applications/contentful/app.py +4 -5
  12. universal_mcp/applications/domain_checker/app.py +11 -15
  13. universal_mcp/applications/e2b/app.py +4 -4
  14. universal_mcp/applications/elevenlabs/app.py +18 -15
  15. universal_mcp/applications/exa/app.py +17 -17
  16. universal_mcp/applications/falai/app.py +28 -29
  17. universal_mcp/applications/file_system/app.py +9 -9
  18. universal_mcp/applications/firecrawl/app.py +36 -36
  19. universal_mcp/applications/fireflies/app.py +55 -56
  20. universal_mcp/applications/fpl/app.py +49 -50
  21. universal_mcp/applications/ghost_content/app.py +0 -1
  22. universal_mcp/applications/github/app.py +41 -43
  23. universal_mcp/applications/google_calendar/app.py +40 -39
  24. universal_mcp/applications/google_docs/app.py +168 -232
  25. universal_mcp/applications/google_drive/app.py +212 -215
  26. universal_mcp/applications/google_gemini/app.py +1 -5
  27. universal_mcp/applications/google_mail/app.py +91 -90
  28. universal_mcp/applications/google_searchconsole/app.py +29 -29
  29. universal_mcp/applications/google_sheet/app.py +115 -115
  30. universal_mcp/applications/hashnode/README.md +6 -3
  31. universal_mcp/applications/hashnode/app.py +174 -25
  32. universal_mcp/applications/http_tools/app.py +10 -11
  33. universal_mcp/applications/hubspot/__init__.py +1 -1
  34. universal_mcp/applications/hubspot/api_segments/api_segment_base.py +36 -7
  35. universal_mcp/applications/hubspot/api_segments/crm_api.py +368 -368
  36. universal_mcp/applications/hubspot/api_segments/marketing_api.py +115 -115
  37. universal_mcp/applications/hubspot/app.py +131 -72
  38. universal_mcp/applications/jira/app.py +0 -1
  39. universal_mcp/applications/linkedin/app.py +20 -20
  40. universal_mcp/applications/markitdown/app.py +10 -5
  41. universal_mcp/applications/ms_teams/app.py +123 -123
  42. universal_mcp/applications/openai/app.py +40 -39
  43. universal_mcp/applications/outlook/app.py +32 -32
  44. universal_mcp/applications/perplexity/app.py +4 -4
  45. universal_mcp/applications/reddit/app.py +69 -70
  46. universal_mcp/applications/resend/app.py +116 -117
  47. universal_mcp/applications/rocketlane/app.py +0 -1
  48. universal_mcp/applications/scraper/__init__.py +1 -1
  49. universal_mcp/applications/scraper/app.py +80 -81
  50. universal_mcp/applications/serpapi/app.py +14 -14
  51. universal_mcp/applications/sharepoint/app.py +19 -20
  52. universal_mcp/applications/shopify/app.py +0 -1
  53. universal_mcp/applications/slack/app.py +48 -48
  54. universal_mcp/applications/tavily/app.py +4 -4
  55. universal_mcp/applications/twitter/api_segments/compliance_api.py +13 -15
  56. universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +20 -20
  57. universal_mcp/applications/twitter/api_segments/dm_events_api.py +12 -12
  58. universal_mcp/applications/twitter/api_segments/likes_api.py +12 -12
  59. universal_mcp/applications/twitter/api_segments/lists_api.py +37 -39
  60. universal_mcp/applications/twitter/api_segments/spaces_api.py +24 -24
  61. universal_mcp/applications/twitter/api_segments/trends_api.py +4 -4
  62. universal_mcp/applications/twitter/api_segments/tweets_api.py +105 -105
  63. universal_mcp/applications/twitter/api_segments/usage_api.py +4 -4
  64. universal_mcp/applications/twitter/api_segments/users_api.py +136 -136
  65. universal_mcp/applications/twitter/app.py +6 -2
  66. universal_mcp/applications/unipile/app.py +90 -97
  67. universal_mcp/applications/whatsapp/app.py +53 -54
  68. universal_mcp/applications/whatsapp/audio.py +39 -35
  69. universal_mcp/applications/whatsapp/whatsapp.py +176 -154
  70. universal_mcp/applications/whatsapp_business/app.py +92 -92
  71. universal_mcp/applications/yahoo_finance/app.py +105 -63
  72. universal_mcp/applications/youtube/app.py +193 -196
  73. universal_mcp/applications/zenquotes/__init__.py +2 -0
  74. universal_mcp/applications/zenquotes/app.py +5 -5
  75. {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.23.dist-info}/METADATA +2 -1
  76. {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.23.dist-info}/RECORD +78 -74
  77. {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.23.dist-info}/WHEEL +0 -0
  78. {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.23.dist-info}/licenses/LICENSE +0 -0
@@ -22,17 +22,17 @@ class GoogleSheetApp(APIApplication):
22
22
  def create_spreadsheet(self, title: str) -> dict[str, Any]:
23
23
  """
24
24
  Creates a new, blank Google Spreadsheet file with a specified title. This function generates a completely new document, unlike `add_sheet` which adds a worksheet (tab) to an existing spreadsheet. It returns the API response containing the new spreadsheet's metadata.
25
-
25
+
26
26
  Args:
27
27
  title: String representing the desired title for the new spreadsheet
28
-
28
+
29
29
  Returns:
30
30
  Dictionary containing the full response from the Google Sheets API, including the spreadsheet's metadata and properties
31
-
31
+
32
32
  Raises:
33
33
  HTTPError: When the API request fails due to invalid authentication, network issues, or API limitations
34
34
  ValueError: When the title parameter is empty or contains invalid characters
35
-
35
+
36
36
  Tags:
37
37
  create, spreadsheet, google-sheets, api, important
38
38
  """
@@ -44,18 +44,18 @@ class GoogleSheetApp(APIApplication):
44
44
  def get_spreadsheet_metadata(self, spreadsheetId: str) -> dict[str, Any]:
45
45
  """
46
46
  Retrieves a spreadsheet's metadata and structural properties, such as sheet names, IDs, and named ranges, using its unique ID. This function intentionally excludes cell data, distinguishing it from `get_values` which fetches the actual content within cells.
47
-
47
+
48
48
  Args:
49
49
  spreadsheetId: The unique identifier of the Google Spreadsheet to retrieve (found in the spreadsheet's URL)
50
-
50
+
51
51
  Returns:
52
52
  A dictionary containing the full spreadsheet metadata and contents, including properties, sheets, named ranges, and other spreadsheet-specific information from the Google Sheets API
53
-
53
+
54
54
  Raises:
55
55
  HTTPError: When the API request fails due to invalid spreadsheetId or insufficient permissions
56
56
  ConnectionError: When there's a network connectivity issue
57
57
  ValueError: When the response cannot be parsed as JSON
58
-
58
+
59
59
  Tags:
60
60
  get, retrieve, spreadsheet, api, metadata, read, important
61
61
  """
@@ -73,21 +73,21 @@ class GoogleSheetApp(APIApplication):
73
73
  ) -> dict[str, Any]:
74
74
  """
75
75
  Retrieves cell values from a single, specified A1 notation range. Unlike `batch_get_values_by_range` which fetches multiple ranges, this function is for a singular query and provides options to control the data's output format (e.g., rows vs. columns, formatted vs. raw values).
76
-
76
+
77
77
  Args:
78
78
  spreadsheetId: The unique identifier of the Google Spreadsheet to retrieve values from
79
79
  range: A1 notation range string (e.g., 'Sheet1!A1:B2')
80
80
  majorDimension: The major dimension that results should use. "ROWS" or "COLUMNS". Example: "ROWS"
81
81
  valueRenderOption: How values should be represented in the output. "FORMATTED_VALUE", "UNFORMATTED_VALUE", or "FORMULA". Example: "FORMATTED_VALUE"
82
82
  dateTimeRenderOption: How dates, times, and durations should be represented. "SERIAL_NUMBER" or "FORMATTED_STRING". Example: "FORMATTED_STRING"
83
-
83
+
84
84
  Returns:
85
85
  A dictionary containing the API response with the requested spreadsheet values and metadata
86
-
86
+
87
87
  Raises:
88
88
  HTTPError: If the API request fails due to invalid spreadsheetId, insufficient permissions, or invalid range format
89
89
  ValueError: If the spreadsheetId is empty or invalid
90
-
90
+
91
91
  Tags:
92
92
  get, read, spreadsheet, values, important
93
93
  """
@@ -109,18 +109,18 @@ class GoogleSheetApp(APIApplication):
109
109
  ) -> dict[str, Any]:
110
110
  """
111
111
  Efficiently retrieves values from multiple predefined A1 notation ranges in a single API request. Unlike `get_values`, which fetches a single range, or `batch_get_values_by_data_filter`, which uses dynamic filtering criteria, this function operates on a simple list of range strings for bulk data retrieval.
112
-
112
+
113
113
  Args:
114
114
  spreadsheetId: The unique identifier of the Google Spreadsheet to retrieve values from
115
115
  ranges: Optional list of A1 notation or R1C1 notation range strings (e.g., ['Sheet1!A1:B2', 'Sheet2!C3:D4']). If None, returns values from the entire spreadsheet
116
-
116
+
117
117
  Returns:
118
118
  A dictionary containing the API response with the requested spreadsheet values and metadata
119
-
119
+
120
120
  Raises:
121
121
  HTTPError: If the API request fails due to invalid spreadsheetId, insufficient permissions, or invalid range format
122
122
  ValueError: If the spreadsheetId is empty or invalid
123
-
123
+
124
124
  Tags:
125
125
  get, batch, read, spreadsheet, values
126
126
  """
@@ -145,10 +145,10 @@ class GoogleSheetApp(APIApplication):
145
145
  ) -> dict[str, Any]:
146
146
  """
147
147
  Inserts a specified number of empty rows or columns at a given index, shifting existing content. Distinct from `append_dimensions`, which only adds to the end, this function creates space within the sheet's data grid, preserving surrounding data and formatting.
148
-
148
+
149
149
  This function inserts empty rows or columns at a specified location, shifting existing content.
150
150
  Use this when you need to add rows/columns in the middle of your data.
151
-
151
+
152
152
  Args:
153
153
  spreadsheetId: The ID of the spreadsheet to update. Example: "abc123spreadsheetId"
154
154
  sheet_id: The ID of the sheet where the dimensions will be inserted. Example: 0
@@ -159,14 +159,14 @@ class GoogleSheetApp(APIApplication):
159
159
  include_spreadsheet_in_response: True if the updated spreadsheet should be included in the response. Example: True
160
160
  response_include_grid_data: True if grid data should be included in the response (if includeSpreadsheetInResponse is true). Example: True
161
161
  response_ranges: Limits the ranges of the spreadsheet to include in the response. Example: ["Sheet1!A1:B10"]
162
-
162
+
163
163
  Returns:
164
164
  A dictionary containing the Google Sheets API response with update details
165
-
165
+
166
166
  Raises:
167
167
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
168
168
  ValueError: When spreadsheetId is empty or dimension is not "ROWS" or "COLUMNS"
169
-
169
+
170
170
  Tags:
171
171
  insert, modify, spreadsheet, rows, columns, dimensions, important
172
172
  """
@@ -224,23 +224,23 @@ class GoogleSheetApp(APIApplication):
224
224
  ) -> dict[str, Any]:
225
225
  """
226
226
  Adds a specified number of empty rows or columns to the end of a designated sheet. Unlike `insert_dimensions`, which adds space at a specific index, this function exclusively extends the sheet's boundaries at the bottom or to the right without affecting existing content.
227
-
227
+
228
228
  This function adds empty rows or columns to the end of the sheet without affecting existing content.
229
229
  Use this when you need to extend the sheet with additional space at the bottom or right.
230
-
230
+
231
231
  Args:
232
232
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
233
233
  sheet_id: The ID of the sheet within the spreadsheet (0 for first sheet)
234
234
  dimension: The type of dimension to append - "ROWS" or "COLUMNS"
235
235
  length: The number of rows or columns to append to the end
236
-
236
+
237
237
  Returns:
238
238
  A dictionary containing the Google Sheets API response with update details
239
-
239
+
240
240
  Raises:
241
241
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
242
242
  ValueError: When spreadsheetId is empty, dimension is not "ROWS" or "COLUMNS", or length is not positive
243
-
243
+
244
244
  Tags:
245
245
  append, modify, spreadsheet, rows, columns, dimensions, important
246
246
  """
@@ -283,7 +283,7 @@ class GoogleSheetApp(APIApplication):
283
283
  ) -> dict[str, Any]:
284
284
  """
285
285
  Deletes a specified range of rows or columns, permanently removing them and shifting subsequent cells. This alters the sheet's structure, unlike `clear_values` which only removes cell content. It is the direct counterpart to `insert_dimensions`, which adds space within the data grid.
286
-
286
+
287
287
  Args:
288
288
  spreadsheetId: The ID of the spreadsheet. Example: "abc123xyz789"
289
289
  sheet_id: The ID of the sheet from which to delete the dimension. Example: 0 for first sheet
@@ -293,14 +293,14 @@ class GoogleSheetApp(APIApplication):
293
293
  include_spreadsheet_in_response: Determines if the update response should include the spreadsheet resource. Example: True
294
294
  response_include_grid_data: True if grid data should be returned. This parameter is ignored if a field mask was set in the request. Example: True
295
295
  response_ranges: Limits the ranges of cells included in the response spreadsheet. Example: ["Sheet1!A1:B2", "Sheet2!C:C"]
296
-
296
+
297
297
  Returns:
298
298
  A dictionary containing the Google Sheets API response with update details
299
-
299
+
300
300
  Raises:
301
301
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
302
302
  ValueError: When spreadsheetId is empty, dimension is not "ROWS" or "COLUMNS", or indices are invalid
303
-
303
+
304
304
  Tags:
305
305
  delete, modify, spreadsheet, rows, columns, dimensions, important
306
306
  """
@@ -372,7 +372,7 @@ class GoogleSheetApp(APIApplication):
372
372
  ) -> dict[str, Any]:
373
373
  """
374
374
  Adds a new worksheet (tab) to an existing Google Spreadsheet. It allows extensive customization of the new sheet's properties, such as its title, position, and dimensions. This is distinct from `create_spreadsheet`, which generates a completely new spreadsheet file instead of modifying an existing one.
375
-
375
+
376
376
  Args:
377
377
  spreadsheetId: The ID of the spreadsheet to add the sheet to. This is the long string of characters in the URL of your Google Sheet. Example: "abc123xyz789"
378
378
  title: The name of the sheet. Example: "Q3 Report"
@@ -391,14 +391,14 @@ class GoogleSheetApp(APIApplication):
391
391
  columnGroupControlAfter: True if the column group control toggle is shown after the group, false if before.
392
392
  includeSpreadsheetInResponse: Whether the response should include the entire spreadsheet resource. Defaults to false.
393
393
  responseIncludeGridData: True if grid data should be returned. This parameter is ignored if includeSpreadsheetInResponse is false. Defaults to false.
394
-
394
+
395
395
  Returns:
396
396
  A dictionary containing the Google Sheets API response with the new sheet details
397
-
397
+
398
398
  Raises:
399
399
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
400
400
  ValueError: When spreadsheetId is empty or invalid parameters are provided
401
-
401
+
402
402
  Tags:
403
403
  add, sheet, spreadsheet, create
404
404
  """
@@ -492,10 +492,10 @@ class GoogleSheetApp(APIApplication):
492
492
  ) -> dict[str, Any]:
493
493
  """
494
494
  Adds various axis-based charts (e.g., column, bar, line, area) to a spreadsheet from specified data ranges. The chart can be placed on a new sheet or positioned on an existing one. This is distinct from `add_pie_chart`, which creates proportional visualizations instead of axis-based charts.
495
-
495
+
496
496
  This function creates various types of charts from the specified data ranges and places it in a new sheet or existing sheet.
497
497
  Use this when you need to visualize data in different chart formats.
498
-
498
+
499
499
  Args:
500
500
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
501
501
  source_sheet_id: The ID of the sheet containing the source data
@@ -507,14 +507,14 @@ class GoogleSheetApp(APIApplication):
507
507
  chart_position: Optional positioning for chart when new_sheet=False. Example: {"overlayPosition": {"anchorCell": {"sheetId": 0, "rowIndex": 10, "columnIndex": 5}, "offsetXPixels": 0, "offsetYPixels": 0, "widthPixels": 600, "heightPixels": 400}}
508
508
  x_axis_title: Optional title for the X-axis (bottom axis). If not provided, defaults to "Categories"
509
509
  y_axis_title: Optional title for the Y-axis (left axis). If not provided, defaults to "Values"
510
-
510
+
511
511
  Returns:
512
512
  A dictionary containing the Google Sheets API response with the chart details
513
-
513
+
514
514
  Raises:
515
515
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
516
516
  ValueError: When spreadsheetId is empty or invalid parameters are provided
517
-
517
+
518
518
  Tags:
519
519
  add, chart, basic-chart, visualization
520
520
  """
@@ -639,10 +639,10 @@ class GoogleSheetApp(APIApplication):
639
639
  ) -> dict[str, Any]:
640
640
  """
641
641
  Adds a pie or donut chart to a Google Spreadsheet from a specified data range. Unlike the more general `add_basic_chart`, this is specialized for visualizing data as proportions of a whole and supports pie-specific options like creating a donut chart via the `pie_hole` parameter.
642
-
642
+
643
643
  This function creates a pie chart from the specified data range and places it in a new sheet or existing sheet.
644
644
  Use this when you need to visualize data as proportions of a whole.
645
-
645
+
646
646
  Args:
647
647
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
648
648
  source_sheet_id: The ID of the sheet containing the source data
@@ -652,14 +652,14 @@ class GoogleSheetApp(APIApplication):
652
652
  chart_position: Optional positioning for chart when new_sheet=False. Example: {"overlayPosition": {"anchorCell": {"sheetId": 0, "rowIndex": 10, "columnIndex": 5}, "offsetXPixels": 0, "offsetYPixels": 0, "widthPixels": 600, "heightPixels": 400}}
653
653
  legend_position: Position of the legend. Options: "BOTTOM_LEGEND", "LEFT_LEGEND", "RIGHT_LEGEND", "TOP_LEGEND", "NO_LEGEND"
654
654
  pie_hole: Optional hole size for creating a donut chart (0.0 to 1.0). 0.0 = solid pie, 0.5 = 50% hole
655
-
655
+
656
656
  Returns:
657
657
  A dictionary containing the Google Sheets API response with the chart details
658
-
658
+
659
659
  Raises:
660
660
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
661
661
  ValueError: When spreadsheetId is empty or invalid parameters are provided
662
-
662
+
663
663
  Tags:
664
664
  add, chart, pie, visualization
665
665
  """
@@ -759,10 +759,10 @@ class GoogleSheetApp(APIApplication):
759
759
  ) -> dict[str, Any]:
760
760
  """
761
761
  Creates a structured table within a specified range on a Google Sheet. Defines the table's name, ID, and dimensions, and can optionally configure column properties like data types and validation rules. This action creates a formal table object, distinct from functions that only write cell values.
762
-
762
+
763
763
  This function creates a table with specified properties and column types.
764
764
  Use this when you need to create structured data with headers, footers, and column types.
765
-
765
+
766
766
  Args:
767
767
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
768
768
  sheet_id: The ID of the sheet where the table will be created
@@ -775,11 +775,11 @@ class GoogleSheetApp(APIApplication):
775
775
  column_properties: Optional list of column properties with types and validation rules. Valid column types: "TEXT", "PERCENT", "DROPDOWN", "DOUBLE", "CURRENCY", "DATE", "TIME", "DATE_TIME". Example: [{"columnIndex": 0, "columnName": "Model Number", "columnType": "TEXT"}, {"columnIndex": 1, "columnName": "Sales - Jan", "columnType": "DOUBLE"}, {"columnIndex": 2, "columnName": "Price", "columnType": "CURRENCY"}, {"columnIndex": 3, "columnName": "Progress", "columnType": "PERCENT"}, {"columnIndex": 4, "columnName": "Created Date", "columnType": "DATE"}, {"columnIndex": 5, "columnName": "Status", "columnType": "DROPDOWN", "dataValidationRule": {"condition": {"type": "ONE_OF_LIST", "values": [{"userEnteredValue": "Active"}, {"userEnteredValue": "Inactive"}]}}}]
776
776
  Returns:
777
777
  A dictionary containing the Google Sheets API response with the table details
778
-
778
+
779
779
  Raises:
780
780
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
781
781
  ValueError: When spreadsheetId is empty or invalid parameters are provided
782
-
782
+
783
783
  Tags:
784
784
  add, table, structured-data
785
785
  """
@@ -865,10 +865,10 @@ class GoogleSheetApp(APIApplication):
865
865
  ) -> dict[str, Any]:
866
866
  """
867
867
  Modifies properties of an existing table within a Google Sheet, such as its name, data range, or column specifications. This function updates the table's structural metadata, distinguishing it from `update_values` which alters the cell data within the table's range.
868
-
868
+
869
869
  This function modifies table properties such as name, range, and column properties.
870
870
  Use this when you need to modify an existing table's structure or properties.
871
-
871
+
872
872
  Args:
873
873
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
874
874
  table_id: The unique identifier of the table to update
@@ -878,14 +878,14 @@ class GoogleSheetApp(APIApplication):
878
878
  start_column_index: Optional new starting column index (0-based)
879
879
  end_column_index: Optional new ending column index (exclusive)
880
880
  column_properties: Optional list of column properties with types and validation rules. Valid column types: "TEXT", "PERCENT", "DROPDOWN", "DOUBLE", "CURRENCY", "DATE", "TIME", "DATE_TIME". Example: [{"columnIndex": 0, "columnName": "Model Number", "columnType": "TEXT"}, {"columnIndex": 1, "columnName": "Sales - Jan", "columnType": "DOUBLE"}, {"columnIndex": 2, "columnName": "Price", "columnType": "CURRENCY"}, {"columnIndex": 3, "columnName": "Progress", "columnType": "PERCENT"}, {"columnIndex": 4, "columnName": "Created Date", "columnType": "DATE"}, {"columnIndex": 5, "columnName": "Status", "columnType": "DROPDOWN", "dataValidationRule": {"condition": {"type": "ONE_OF_LIST", "values": [{"userEnteredValue": "Active"}, {"userEnteredValue": "Inactive"}]}}}]
881
-
881
+
882
882
  Returns:
883
883
  A dictionary containing the Google Sheets API response with the updated table details
884
-
884
+
885
885
  Raises:
886
886
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
887
887
  ValueError: When spreadsheetId or table_id is empty or invalid parameters are provided
888
-
888
+
889
889
  Tags:
890
890
  update, table, modify, structured-data
891
891
  """
@@ -998,18 +998,18 @@ class GoogleSheetApp(APIApplication):
998
998
  def clear_values(self, spreadsheetId: str, range: str) -> dict[str, Any]:
999
999
  """
1000
1000
  Clears data from a single, specified cell range while preserving all formatting. Unlike `delete_dimensions`, it only removes content, not the cells themselves. For clearing multiple ranges simultaneously, use the `batch_clear_values` function.
1001
-
1001
+
1002
1002
  Args:
1003
1003
  spreadsheetId: The unique identifier of the Google Spreadsheet to modify
1004
1004
  range: The A1 or R1C1 notation range of cells to clear (e.g., 'Sheet1!A1:B2')
1005
-
1005
+
1006
1006
  Returns:
1007
1007
  A dictionary containing the Google Sheets API response
1008
-
1008
+
1009
1009
  Raises:
1010
1010
  HttpError: When the API request fails due to invalid spreadsheetId, invalid range format, or insufficient permissions
1011
1011
  ValueError: When spreadsheetId is empty or range is in invalid format
1012
-
1012
+
1013
1013
  Tags:
1014
1014
  clear, modify, spreadsheet, api, sheets, data-management, important
1015
1015
  """
@@ -1026,20 +1026,20 @@ class GoogleSheetApp(APIApplication):
1026
1026
  ) -> dict[str, Any]:
1027
1027
  """
1028
1028
  Overwrites cell values within a specific A1 notation range using a provided 2D list. This function replaces existing data in a predefined area, distinguishing it from `append_values`, which adds new rows after a table instead of overwriting a specific block of cells.
1029
-
1029
+
1030
1030
  Args:
1031
1031
  spreadsheetId: The unique identifier of the target Google Spreadsheet
1032
1032
  range: The A1 notation range where values will be updated (e.g., 'Sheet1!A1:B2')
1033
1033
  values: A list of lists containing the data to write, where each inner list represents a row of values
1034
1034
  value_input_option: Determines how input data should be interpreted: 'RAW' (as-is) or 'USER_ENTERED' (parsed as UI input). Defaults to 'RAW'
1035
-
1035
+
1036
1036
  Returns:
1037
1037
  A dictionary containing the Google Sheets API response with update details
1038
-
1038
+
1039
1039
  Raises:
1040
1040
  RequestError: When the API request fails due to invalid parameters or network issues
1041
1041
  AuthenticationError: When authentication with the Google Sheets API fails
1042
-
1042
+
1043
1043
  Tags:
1044
1044
  update, write, sheets, api, important, data-modification, google-sheets
1045
1045
  """
@@ -1056,18 +1056,18 @@ class GoogleSheetApp(APIApplication):
1056
1056
  ) -> dict[str, Any]:
1057
1057
  """
1058
1058
  Clears cell values from multiple specified ranges in a single batch operation, preserving existing formatting. Unlike `clear_values`, which handles a single range, this method efficiently processes a list of ranges at once, removing only the content and not the cells themselves.
1059
-
1059
+
1060
1060
  Args:
1061
1061
  spreadsheetId: The ID of the spreadsheet to update. Example: "1q2w3e4r5t6y7u8i9o0p"
1062
1062
  ranges: The ranges to clear, in A1 notation or R1C1 notation. Example: ["Sheet1!A1:B2", "Sheet1!C3:D4"]
1063
-
1063
+
1064
1064
  Returns:
1065
1065
  A dictionary containing the Google Sheets API response with clear details
1066
-
1066
+
1067
1067
  Raises:
1068
1068
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1069
1069
  ValueError: When spreadsheetId is empty or ranges is empty
1070
-
1070
+
1071
1071
  Tags:
1072
1072
  clear, batch, values, spreadsheet
1073
1073
  """
@@ -1094,7 +1094,7 @@ class GoogleSheetApp(APIApplication):
1094
1094
  ) -> dict[str, Any]:
1095
1095
  """
1096
1096
  Retrieves values from spreadsheet ranges matching a list of data filters. This method provides dynamic, criteria-based selection using A1 notation or grid coordinates, unlike `batch_get_values_by_range` which uses a simple list of range strings. It is ideal for fetching multiple, specific datasets in one request.
1097
-
1097
+
1098
1098
  Args:
1099
1099
  spreadsheetId: The ID of the spreadsheet to retrieve data from. Example: "1q2w3e4r5t6y7u8i9o0p"
1100
1100
  data_filters: The data filters used to match the ranges of values to retrieve. Ranges that match any of the specified data filters are included in the response. Each filter can contain:
@@ -1103,14 +1103,14 @@ class GoogleSheetApp(APIApplication):
1103
1103
  major_dimension: The major dimension that results should use. For example, if the spreadsheet data is: A1=1,B1=2,A2=3,B2=4, then a request that selects that range and sets majorDimension=ROWS returns [[1,2],[3,4]], whereas a request that sets majorDimension=COLUMNS returns [[1,3],[2,4]]. Options: "ROWS" or "COLUMNS". Example: "ROWS"
1104
1104
  value_render_option: How values should be represented in the output. The default render option is FORMATTED_VALUE. Options: "FORMATTED_VALUE", "UNFORMATTED_VALUE", or "FORMULA". Example: "FORMATTED_VALUE"
1105
1105
  date_time_render_option: How dates, times, and durations should be represented in the output. This is ignored if valueRenderOption is FORMATTED_VALUE. The default dateTime render option is SERIAL_NUMBER. Options: "SERIAL_NUMBER" or "FORMATTED_STRING". Example: "SERIAL_NUMBER"
1106
-
1106
+
1107
1107
  Returns:
1108
1108
  A dictionary containing the filtered values that match the specified data filters
1109
-
1109
+
1110
1110
  Raises:
1111
1111
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1112
1112
  ValueError: When spreadsheetId is empty or data_filters is empty
1113
-
1113
+
1114
1114
  Tags:
1115
1115
  get, batch, data-filter, values, spreadsheet
1116
1116
  """
@@ -1169,20 +1169,20 @@ class GoogleSheetApp(APIApplication):
1169
1169
  ) -> dict[str, Any]:
1170
1170
  """
1171
1171
  Copies a specific sheet, including all its data and formatting, from a source spreadsheet to a different destination spreadsheet. This action duplicates an entire worksheet into another workbook, returning properties of the newly created sheet.
1172
-
1173
-
1172
+
1173
+
1174
1174
  Args:
1175
1175
  spreadsheetId: The ID of the spreadsheet containing the sheet to copy. Example: "1qZ_..."
1176
1176
  sheet_id: The ID of the sheet to copy. Example: 0
1177
1177
  destination_spreadsheetId: The ID of the spreadsheet to copy the sheet to. Example: "2rY_..."
1178
-
1178
+
1179
1179
  Returns:
1180
1180
  A dictionary containing the Google Sheets API response with copy details
1181
-
1181
+
1182
1182
  Raises:
1183
1183
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1184
1184
  ValueError: When any required parameter is empty or invalid
1185
-
1185
+
1186
1186
  Tags:
1187
1187
  copy, sheet, spreadsheet, duplicate
1188
1188
  """
@@ -1213,7 +1213,7 @@ class GoogleSheetApp(APIApplication):
1213
1213
  ) -> dict[str, Any]:
1214
1214
  """
1215
1215
  Writes a 2D list of values to a sheet, overwriting existing data. Data is written starting from a specified cell, or defaults to cell A1 if no location is provided. This differs from `append_values`, which adds new rows after existing data without replacing content.
1216
-
1216
+
1217
1217
  Args:
1218
1218
  spreadsheetId: The unique identifier of the Google Sheets spreadsheet to be updated. Example: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
1219
1219
  sheet_name: The name of the specific sheet within the spreadsheet to update. Example: "Sheet1"
@@ -1221,14 +1221,14 @@ class GoogleSheetApp(APIApplication):
1221
1221
  first_cell_location: The starting cell for the update range, specified in A1 notation (e.g., 'A1', 'B2'). The update will extend from this cell to the right and down, based on the provided values. If omitted, values are appended to the end of the sheet. Example: "A1"
1222
1222
  value_input_option: How input data is interpreted. 'USER_ENTERED': Values parsed as if typed by a user (e.g., strings may become numbers/dates, formulas are calculated); recommended for formulas. 'RAW': Values stored as-is without parsing (e.g., '123' stays string, '=SUM(A1:B1)' stays string). Defaults to 'USER_ENTERED'. Example: "USER_ENTERED"
1223
1223
  include_values_in_response: If set to True, the response will include the updated values from the spreadsheet. Defaults to False. Example: True
1224
-
1224
+
1225
1225
  Returns:
1226
1226
  A dictionary containing the Google Sheets API response with update details
1227
-
1227
+
1228
1228
  Raises:
1229
1229
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1230
1230
  ValueError: When spreadsheetId is empty, sheet_name is empty, or values is empty
1231
-
1231
+
1232
1232
  Tags:
1233
1233
  batch, update, write, sheets, api, important, data-modification, google-sheets
1234
1234
  """
@@ -1279,7 +1279,7 @@ class GoogleSheetApp(APIApplication):
1279
1279
  ) -> dict[str, Any]:
1280
1280
  """
1281
1281
  Appends rows of data after a specified table in a Google Sheet. Distinct from `update_values` which overwrites data, this function adds new rows at the end of the table. It can also insert rows, shifting existing cells down, offering finer control over data addition.
1282
-
1282
+
1283
1283
  Args:
1284
1284
  spreadsheetId: The ID of the spreadsheet to update. Example: "1q0gLhLdGXYZblahblahblah"
1285
1285
  range: The A1 notation of a range to search for a logical table of data. Values are appended after the last row of the table. Example: "Sheet1!A1:B2"
@@ -1289,14 +1289,14 @@ class GoogleSheetApp(APIApplication):
1289
1289
  include_values_in_response: Determines if the update response should include the values of the cells that were appended. By default, responses do not include the updated values. Example: True
1290
1290
  response_value_render_option: Determines how values in the response should be rendered. The default render option is FORMATTED_VALUE. Options: "FORMATTED_VALUE", "UNFORMATTED_VALUE", or "FORMULA". Example: "FORMATTED_VALUE"
1291
1291
  response_date_time_render_option: Determines how dates, times, and durations in the response should be rendered. This is ignored if responseValueRenderOption is FORMATTED_VALUE. The default dateTime render option is SERIAL_NUMBER. Options: "SERIAL_NUMBER" or "FORMATTED_STRING". Example: "SERIAL_NUMBER"
1292
-
1292
+
1293
1293
  Returns:
1294
1294
  A dictionary containing the Google Sheets API response with append details
1295
-
1295
+
1296
1296
  Raises:
1297
1297
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1298
1298
  ValueError: When required parameters are empty or invalid
1299
-
1299
+
1300
1300
  Tags:
1301
1301
  append, values, spreadsheet, data, important
1302
1302
  """
@@ -1372,18 +1372,18 @@ class GoogleSheetApp(APIApplication):
1372
1372
  ) -> dict[str, Any]:
1373
1373
  """
1374
1374
  Removes the basic filter from a specified sheet, clearing active sorting and filtering criteria to restore the default data view. As the direct counterpart to `set_basic_filter`, this function removes the entire filter object, not just the cell content.
1375
-
1375
+
1376
1376
  Args:
1377
1377
  spreadsheetId: The ID of the spreadsheet. Example: "abc123xyz789"
1378
1378
  sheet_id: The ID of the sheet on which the basic filter should be cleared. Example: 0
1379
-
1379
+
1380
1380
  Returns:
1381
1381
  A dictionary containing the Google Sheets API response with update details
1382
-
1382
+
1383
1383
  Raises:
1384
1384
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1385
1385
  ValueError: When spreadsheetId is empty or sheet_id is negative
1386
-
1386
+
1387
1387
  Tags:
1388
1388
  clear, filter, basic-filter, spreadsheet
1389
1389
  """
@@ -1407,18 +1407,18 @@ class GoogleSheetApp(APIApplication):
1407
1407
  ) -> dict[str, Any]:
1408
1408
  """
1409
1409
  Permanently deletes a specific sheet (worksheet) from a Google Spreadsheet using its sheet ID. This operation removes the target sheet and all its contents, acting as the direct counterpart to the `add_sheet` function which creates new sheets within a spreadsheet.
1410
-
1410
+
1411
1411
  Args:
1412
1412
  spreadsheetId: The ID of the spreadsheet from which to delete the sheet. Example: "abc123xyz789"
1413
1413
  sheet_id: The ID of the sheet to delete. If the sheet is of DATA_SOURCE type, the associated DataSource is also deleted. Example: 123456789
1414
-
1414
+
1415
1415
  Returns:
1416
1416
  A dictionary containing the Google Sheets API response with update details
1417
-
1417
+
1418
1418
  Raises:
1419
1419
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1420
1420
  ValueError: When spreadsheetId is empty or sheet_id is negative
1421
-
1421
+
1422
1422
  Tags:
1423
1423
  delete, sheet, spreadsheet, worksheet
1424
1424
  """
@@ -1444,20 +1444,20 @@ class GoogleSheetApp(APIApplication):
1444
1444
  ) -> dict[str, Any]:
1445
1445
  """
1446
1446
  Heuristically analyzes a spreadsheet to discover and list all table-like data structures, identifying headers and data boundaries. It returns informal data blocks meeting specified size criteria, distinguishing it from functions like `add_table` that manage formally defined tables.
1447
-
1447
+
1448
1448
  Args:
1449
1449
  spreadsheetId: Google Sheets ID from the URL (e.g., '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'). Example: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
1450
1450
  min_rows: Minimum number of data rows to consider a valid table. Example: 2
1451
1451
  min_columns: Minimum number of columns to consider a valid table. Example: 1
1452
1452
  min_confidence: Minimum confidence score (0.0-1.0) to consider a valid table. Example: 0.5
1453
-
1453
+
1454
1454
  Returns:
1455
1455
  A dictionary containing the list of discovered tables with their properties
1456
-
1456
+
1457
1457
  Raises:
1458
1458
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1459
1459
  ValueError: When spreadsheetId is empty or parameters are invalid
1460
-
1460
+
1461
1461
  Tags:
1462
1462
  list, tables, discover, analyze, spreadsheet, important
1463
1463
  """
@@ -1515,20 +1515,20 @@ class GoogleSheetApp(APIApplication):
1515
1515
  ) -> dict[str, Any]:
1516
1516
  """
1517
1517
  Infers a specified table's schema by analyzing a data sample. After locating the table by name (a value discovered via `discover_tables`), this function determines the most likely data type and properties for each column, providing a detailed structural breakdown of its content.
1518
-
1518
+
1519
1519
  Args:
1520
1520
  spreadsheetId: Google Sheets ID from the URL (e.g., '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms')
1521
1521
  table_name: Specific table name from LIST_TABLES response (e.g., 'Sales_Data', 'Employee_List'). Use 'auto' to analyze the largest/most prominent table
1522
1522
  sheet_name: Sheet/tab name if table_name is ambiguous across multiple sheets
1523
1523
  sample_size: Number of rows to sample for type inference (1-1000, default 50)
1524
-
1524
+
1525
1525
  Returns:
1526
1526
  A dictionary containing the table schema with column names, types, and constraints
1527
-
1527
+
1528
1528
  Raises:
1529
1529
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1530
1530
  ValueError: When spreadsheetId is empty, table_name is empty, or sample_size is invalid
1531
-
1531
+
1532
1532
  Tags:
1533
1533
  schema, analyze, table, structure, types, columns
1534
1534
  """
@@ -1596,7 +1596,7 @@ class GoogleSheetApp(APIApplication):
1596
1596
  ) -> dict[str, Any]:
1597
1597
  """
1598
1598
  Sets or updates a basic filter on a specified range within a sheet, enabling data sorting and filtering. The filter's target range and optional sort specifications are defined in a dictionary argument. It is the counterpart to `clear_basic_filter`, which removes an existing filter.
1599
-
1599
+
1600
1600
  Args:
1601
1601
  spreadsheetId: The ID of the spreadsheet. Example: "abc123xyz789"
1602
1602
  filter: The filter to set. This parameter is required. Contains:
@@ -1609,14 +1609,14 @@ class GoogleSheetApp(APIApplication):
1609
1609
  - sortSpecs: The sort specifications for the filter (optional)
1610
1610
  - dimensionIndex: The dimension the sort should be applied to
1611
1611
  - sortOrder: The order data should be sorted ("ASCENDING", "DESCENDING", "SORT_ORDER_UNSPECIFIED")
1612
-
1612
+
1613
1613
  Returns:
1614
1614
  A dictionary containing the Google Sheets API response with filter details
1615
-
1615
+
1616
1616
  Raises:
1617
1617
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1618
1618
  ValueError: When spreadsheetId is empty or filter is missing required fields
1619
-
1619
+
1620
1620
  Tags:
1621
1621
  filter, basic-filter, spreadsheet, sort, important
1622
1622
  """
@@ -1682,7 +1682,7 @@ class GoogleSheetApp(APIApplication):
1682
1682
  ) -> dict[str, Any]:
1683
1683
  """
1684
1684
  Applies comprehensive formatting to a specified cell range in a worksheet. It modifies visual properties like text style, color, alignment, borders, and can merge cells, without altering the underlying cell values, distinguishing it from data-modification functions like `update_values`.
1685
-
1685
+
1686
1686
  Args:
1687
1687
  spreadsheetId: Identifier of the Google Sheets spreadsheet. Example: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
1688
1688
  worksheetId: ID (sheetId) of the worksheet. Use `get_spreadsheet_metadata` to find this ID. Example: 123456789
@@ -1690,44 +1690,44 @@ class GoogleSheetApp(APIApplication):
1690
1690
  startColumnIndex: 0-based index of the first column in the range. Example: 0
1691
1691
  endRowIndex: 0-based index of the row *after* the last row in the range (exclusive). Example: 1
1692
1692
  endColumnIndex: 0-based index of the column *after* the last column in the range (exclusive). Example: 2
1693
-
1694
-
1693
+
1694
+
1695
1695
  bold: Apply bold formatting. Example: True
1696
1696
  italic: Apply italic formatting. Example: False
1697
1697
  underline: Apply underline formatting. Example: False
1698
1698
  strikethrough: Apply strikethrough formatting. Example: False
1699
1699
  fontSize: Font size in points. Example: 12
1700
1700
  fontFamily: Font family name. Example: "Arial", "Times New Roman"
1701
-
1701
+
1702
1702
  backgroundRed: Red component of background color. Example: 0.9
1703
1703
  backgroundGreen: Green component of background color. Example: 0.9
1704
1704
  backgroundBlue: Blue component of background color. Example: 0.9
1705
-
1705
+
1706
1706
  textRed: Red component of text color. Example: 0.0
1707
1707
  textGreen: Green component of text color. Example: 0.0
1708
1708
  textBlue: Blue component of text color. Example: 0.0
1709
-
1709
+
1710
1710
  horizontalAlignment: "LEFT", "CENTER", or "RIGHT". Example: "CENTER"
1711
1711
  verticalAlignment: "TOP", "MIDDLE", or "BOTTOM". Example: "MIDDLE"
1712
-
1712
+
1713
1713
  wrapStrategy: "OVERFLOW_CELL", "LEGACY_WRAP", "CLIP", or "WRAP". Example: "WRAP"
1714
-
1714
+
1715
1715
  numberFormat: Number format string. Example: "#,##0.00", "0.00%", "$#,##0.00"
1716
-
1716
+
1717
1717
  borderTop: Top border settings. Example: {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}}
1718
1718
  borderBottom: Bottom border settings. Example: {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}}
1719
1719
  borderLeft: Left border settings. Example: {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}}
1720
1720
  borderRight: Right border settings. Example: {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}}
1721
-
1721
+
1722
1722
  mergeCells: Whether to merge the specified range into a single cell. Example: True
1723
-
1723
+
1724
1724
  Returns:
1725
1725
  A dictionary containing the Google Sheets API response with formatting details
1726
-
1726
+
1727
1727
  Raises:
1728
1728
  HTTPError: When the API request fails due to invalid parameters or insufficient permissions
1729
1729
  ValueError: When spreadsheetId is empty, indices are invalid, or color values are out of range
1730
-
1730
+
1731
1731
  Tags:
1732
1732
  format, cells, styling, text-formatting, background-color, borders, alignment, merge
1733
1733
  """