universal-mcp-applications 0.1.17__py3-none-any.whl → 0.1.19__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 (88) hide show
  1. universal_mcp/applications/ahrefs/README.md +3 -3
  2. universal_mcp/applications/airtable/README.md +3 -3
  3. universal_mcp/applications/asana/README.md +3 -3
  4. universal_mcp/applications/aws_s3/README.md +29 -0
  5. universal_mcp/applications/bill/README.md +249 -0
  6. universal_mcp/applications/calendly/README.md +45 -45
  7. universal_mcp/applications/canva/README.md +35 -35
  8. universal_mcp/applications/clickup/README.md +4 -4
  9. universal_mcp/applications/contentful/README.md +1 -2
  10. universal_mcp/applications/crustdata/README.md +3 -3
  11. universal_mcp/applications/domain_checker/README.md +2 -2
  12. universal_mcp/applications/e2b/README.md +4 -4
  13. universal_mcp/applications/elevenlabs/README.md +3 -77
  14. universal_mcp/applications/exa/README.md +7 -7
  15. universal_mcp/applications/falai/README.md +13 -12
  16. universal_mcp/applications/falai/app.py +6 -6
  17. universal_mcp/applications/figma/README.md +3 -3
  18. universal_mcp/applications/file_system/README.md +13 -0
  19. universal_mcp/applications/firecrawl/README.md +9 -9
  20. universal_mcp/applications/firecrawl/app.py +10 -10
  21. universal_mcp/applications/fireflies/README.md +14 -14
  22. universal_mcp/applications/fpl/README.md +12 -12
  23. universal_mcp/applications/fpl/app.py +5 -5
  24. universal_mcp/applications/github/README.md +10 -10
  25. universal_mcp/applications/github/app.py +9 -9
  26. universal_mcp/applications/google_calendar/README.md +10 -10
  27. universal_mcp/applications/google_calendar/app.py +10 -10
  28. universal_mcp/applications/google_docs/README.md +14 -14
  29. universal_mcp/applications/google_docs/app.py +12 -12
  30. universal_mcp/applications/google_drive/README.md +54 -57
  31. universal_mcp/applications/google_drive/app.py +38 -38
  32. universal_mcp/applications/google_gemini/README.md +3 -14
  33. universal_mcp/applications/google_gemini/app.py +13 -12
  34. universal_mcp/applications/google_mail/README.md +20 -20
  35. universal_mcp/applications/google_mail/app.py +19 -19
  36. universal_mcp/applications/google_searchconsole/README.md +10 -10
  37. universal_mcp/applications/google_searchconsole/app.py +8 -8
  38. universal_mcp/applications/google_sheet/README.md +25 -25
  39. universal_mcp/applications/google_sheet/app.py +20 -20
  40. universal_mcp/applications/http_tools/README.md +5 -5
  41. universal_mcp/applications/hubspot/__init__.py +1 -1
  42. universal_mcp/applications/hubspot/api_segments/__init__.py +0 -0
  43. universal_mcp/applications/hubspot/api_segments/api_segment_base.py +25 -0
  44. universal_mcp/applications/hubspot/api_segments/crm_api.py +7337 -0
  45. universal_mcp/applications/hubspot/api_segments/marketing_api.py +1467 -0
  46. universal_mcp/applications/hubspot/app.py +74 -146
  47. universal_mcp/applications/klaviyo/README.md +0 -36
  48. universal_mcp/applications/linkedin/README.md +4 -4
  49. universal_mcp/applications/linkedin/app.py +4 -4
  50. universal_mcp/applications/mailchimp/README.md +3 -3
  51. universal_mcp/applications/ms_teams/README.md +31 -31
  52. universal_mcp/applications/ms_teams/app.py +28 -28
  53. universal_mcp/applications/neon/README.md +3 -3
  54. universal_mcp/applications/openai/README.md +18 -17
  55. universal_mcp/applications/outlook/README.md +9 -9
  56. universal_mcp/applications/outlook/app.py +9 -9
  57. universal_mcp/applications/perplexity/README.md +4 -4
  58. universal_mcp/applications/posthog/README.md +128 -127
  59. universal_mcp/applications/reddit/README.md +21 -124
  60. universal_mcp/applications/reddit/app.py +90 -89
  61. universal_mcp/applications/replicate/README.md +10 -10
  62. universal_mcp/applications/resend/README.md +29 -29
  63. universal_mcp/applications/scraper/README.md +4 -4
  64. universal_mcp/applications/scraper/app.py +31 -31
  65. universal_mcp/applications/semrush/README.md +3 -0
  66. universal_mcp/applications/serpapi/README.md +3 -3
  67. universal_mcp/applications/sharepoint/README.md +17 -0
  68. universal_mcp/applications/sharepoint/app.py +7 -7
  69. universal_mcp/applications/shortcut/README.md +3 -3
  70. universal_mcp/applications/slack/README.md +23 -0
  71. universal_mcp/applications/spotify/README.md +3 -3
  72. universal_mcp/applications/supabase/README.md +3 -3
  73. universal_mcp/applications/tavily/README.md +4 -4
  74. universal_mcp/applications/twilio/README.md +15 -0
  75. universal_mcp/applications/twitter/README.md +92 -89
  76. universal_mcp/applications/twitter/app.py +11 -11
  77. universal_mcp/applications/unipile/README.md +17 -17
  78. universal_mcp/applications/unipile/app.py +14 -14
  79. universal_mcp/applications/whatsapp/README.md +12 -12
  80. universal_mcp/applications/whatsapp/app.py +13 -13
  81. universal_mcp/applications/whatsapp_business/README.md +23 -23
  82. universal_mcp/applications/youtube/README.md +46 -46
  83. universal_mcp/applications/youtube/app.py +7 -1
  84. universal_mcp/applications/zenquotes/README.md +1 -1
  85. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/METADATA +2 -89
  86. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/RECORD +88 -83
  87. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/WHEEL +0 -0
  88. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/licenses/LICENSE +0 -0
@@ -25,7 +25,7 @@ class GithubApp(APIApplication):
25
25
 
26
26
  def star_repository(self, repo_full_name: str) -> str:
27
27
  """
28
- Stars a GitHub repository for the authenticated user via an API request. It uses the repository's full name ('owner/repo') and returns a string message indicating whether the operation was successful, the repository was not found, or an error occurred.
28
+ Stars a GitHub repository for the authenticated user. This user-centric action takes the full repository name ('owner/repo') and returns a simple string message confirming the outcome, unlike other functions that list or create repository content like issues or pull requests.
29
29
 
30
30
  Args:
31
31
  repo_full_name: The full name of the repository in 'owner/repo' format (e.g., 'octocat/Hello-World')
@@ -52,7 +52,7 @@ class GithubApp(APIApplication):
52
52
 
53
53
  def list_recent_commits(self, repo_full_name: str) -> str:
54
54
  """
55
- Fetches and formats the 12 most recent commits from a GitHub repository. It returns a human-readable string summarizing each commit's hash, author, and message, providing a quick overview of recent code changes, distinct from functions that list branches, issues, or pull requests.
55
+ Fetches and formats the 12 most recent commits from a repository. It returns a human-readable string summarizing each commit's hash, author, and message, providing a focused overview of recent code changes, unlike functions that list branches, issues, or pull requests.
56
56
 
57
57
  Args:
58
58
  repo_full_name: The full name of the repository in 'owner/repo' format
@@ -85,7 +85,7 @@ class GithubApp(APIApplication):
85
85
 
86
86
  def list_branches(self, repo_full_name: str) -> str:
87
87
  """
88
- Retrieves all branches for a specified GitHub repository via the API. It formats the results into a human-readable string listing each branch name, suitable for direct user display. This contrasts with functions like `list_issues`, which return raw API data.
88
+ Fetches all branches for a specified GitHub repository and formats them into a human-readable string. This method is distinct from others like `search_issues`, as it returns a formatted list for display rather than raw JSON data for programmatic use.
89
89
 
90
90
  Args:
91
91
  repo_full_name: The full name of the repository in 'owner/repo' format (e.g., 'octocat/Hello-World')
@@ -115,7 +115,7 @@ class GithubApp(APIApplication):
115
115
 
116
116
  def list_pull_requests(self, repo_full_name: str, state: str = "open") -> str:
117
117
  """
118
- Fetches pull requests for a repository, filtered by state (e.g., 'open'). It returns a formatted string summarizing each PR's details. This differs from `get_pull_request`, which fetches a single PR, and `list_issues`, which returns raw JSON data for a different entity.
118
+ Fetches pull requests for a repository, filtered by state (e.g., 'open'). It returns a formatted string summarizing each PR's details, distinguishing it from `get_pull_request` (single PR) and `search_issues` (raw issue data).
119
119
 
120
120
  Args:
121
121
  repo_full_name: The full name of the repository in the format 'owner/repo' (e.g., 'tensorflow/tensorflow')
@@ -193,7 +193,7 @@ class GithubApp(APIApplication):
193
193
 
194
194
  def get_pull_request(self, repo_full_name: str, pull_number: int) -> str:
195
195
  """
196
- Fetches a specific pull request from a repository by its number. The function returns a formatted string summarizing its title, creator, status, and description, unlike `list_pull_requests`, which fetches a list.
196
+ Fetches a specific pull request from a repository using its unique number. It returns a human-readable string summarizing the PR's title, creator, status, and description, unlike `list_pull_requests` which retrieves a list of multiple PRs.
197
197
 
198
198
  Args:
199
199
  repo_full_name: The full repository name in 'owner/repo' format (e.g., 'octocat/Hello-World')
@@ -239,7 +239,7 @@ class GithubApp(APIApplication):
239
239
  draft: bool = False,
240
240
  ) -> dict[str, Any]:
241
241
  """
242
- Creates a pull request in a repository between specified `head` and `base` branches. It can also convert an existing issue into a pull request by providing an issue number. Returns the complete GitHub API response as a dictionary upon successful creation.
242
+ Creates a pull request between specified `head` and `base` branches, or converts an issue into a PR. Unlike read functions that return formatted strings, this write operation returns the raw API response as a dictionary, providing comprehensive data on the newly created pull request.
243
243
 
244
244
  Args:
245
245
  repo_full_name: The full name of the repository (e.g. 'owner/repo')
@@ -285,7 +285,7 @@ class GithubApp(APIApplication):
285
285
  self, repo_full_name: str, title: str, body: str = "", labels=None
286
286
  ) -> str:
287
287
  """
288
- Creates a new issue in a specified GitHub repository with a title, body, and optional labels. This function sends a POST request to the API and returns a formatted confirmation string containing the new issue's number and URL upon successful creation.
288
+ Creates a new issue in a GitHub repository using a title, body, and optional labels. It returns a formatted confirmation string with the new issue's number and URL, differing from `update_issue` which modifies existing issues and `search_issues` which returns raw API data.
289
289
 
290
290
  Args:
291
291
  repo_full_name: The full name of the repository in 'owner/repo' format
@@ -328,7 +328,7 @@ class GithubApp(APIApplication):
328
328
  self, repo_full_name: str, direction: str = "desc", per_page: int = 30
329
329
  ) -> str:
330
330
  """
331
- Fetches a list of recent events for a GitHub repository and formats them into a human-readable string. It summarizes activities with actors and timestamps, providing a general event feed, unlike other `list_*` functions which retrieve specific resources like commits or issues.
331
+ Fetches recent events for a GitHub repository and formats them into a human-readable string. It summarizes activities with actors and timestamps, providing a general event feed, unlike other `list_*` functions which retrieve specific resources like commits or issues.
332
332
 
333
333
  Args:
334
334
  repo_full_name: The full name of the repository in 'owner/repo' format
@@ -376,7 +376,7 @@ class GithubApp(APIApplication):
376
376
  state_reason: str = None,
377
377
  ) -> dict[str, Any]:
378
378
  """
379
- Modifies an existing GitHub issue in a repository by updating optional parameters like title, body, assignee, or state. It targets the issue by its number and returns the complete API response as a dictionary, contrasting with `create_issue` which creates new issues.
379
+ Modifies an existing GitHub issue, identified by its number within a repository. It can update optional fields like title, body, or state and returns the raw API response as a dictionary, differentiating it from `create_issue` which makes new issues and returns a formatted string.
380
380
 
381
381
  Args:
382
382
  repo_full_name: The full name of the repository in 'owner/repo' format
@@ -9,13 +9,13 @@ This is automatically generated from OpenAPI schema for the GoogleCalendarApp AP
9
9
 
10
10
  | Tool | Description |
11
11
  |------|-------------|
12
- | `get_event` | Retrieves detailed information about a specific Google Calendar event by its ID |
13
- | `get_today_events` | Retrieves events from Google Calendar for today or a specified number of future days. |
14
- | `list_events` | Retrieves a list of events from Google Calendar with customizable filtering, sorting, and pagination options |
15
- | `quick_add_event` | Creates a calendar event. Use it only when user specfies that they want to add a quick event |
16
- | `add_an_event` | Creates a new calendar event with details like start time, end time, summary, description, location, attendees, and recurrence rules. |
17
- | `update_event` | Updates an existing calendar event. This method updates the entire event resource. |
18
- | `get_event_instances` | Retrieves all instances of a recurring calendar event within a specified time range. |
19
- | `get_user_timezone` | Gets the user's calendar timezone setting to help with timezone-aware event creation. |
20
- | `delete_event` | Deletes an event from the specified calendar. |
21
- | `query_free_busy` | Checks if you have free slots or not by querying the free/busy status of your calendars. |
12
+ | `get_event_by_id` | Retrieves a specific calendar event using its unique ID. Unlike `list_events`, which fetches multiple events based on date ranges or search queries, this function targets a single, known event. It can optionally limit attendees returned and specify a time zone for date formatting in the response. |
13
+ | `get_upcoming_events` | Retrieves events for a specified number of days, starting from today. This function simplifies date-range queries by auto-calculating start/end times, unlike the more comprehensive `list_events` function, which offers granular control with explicit time filters, text search, and custom sorting. |
14
+ | `list_events` | Fetches a customizable list of events using filters for date range, text search, sorting, and pagination. This advanced function provides more granular control than `get_upcoming_events`, which is limited to fetching events for a specific number of upcoming days. |
15
+ | `create_event_from_text` | Creates a calendar event by parsing a natural language string (e.g., "Meeting tomorrow at 10am"). This offers a user-friendly shortcut, contrasting with the structured `create_event` function which requires explicit fields like start and end times. |
16
+ | `create_event` | Creates a calendar event using structured data for start/end times, summary, attendees, and recurrence. This method provides precise control for complex appointments, unlike `create_event_from_text` which parses natural language, making it ideal for detailed or recurring event creation. |
17
+ | `replace_event` | Replaces an existing calendar event, identified by its ID, with new data. This function performs a full update, overwriting all event properties like start/end times and summary. It does not support partial modifications, requiring all necessary fields for the replacement to be provided. |
18
+ | `list_recurring_event_instances` | Retrieves all individual occurrences of a specific recurring event using its ID. Unlike `list_events`, which fetches multiple distinct events, this function expands a single recurring event into its separate instances, allowing filtering by time range and pagination for detailed scheduling views. |
19
+ | `get_primary_calendar_details` | Retrieves metadata for the user's primary calendar, including its default timezone. This information is essential for creating new events with accurate, timezone-aware start and end times using other functions like `create_event`, preventing potential scheduling errors across different regions. |
20
+ | `delete_event` | Permanently deletes a specific event from a Google Calendar using its event and calendar IDs. It can optionally send cancellation notifications to attendees, distinguishing it from functions that retrieve (`get_event_by_id`) or modify events (`replace_event`), which do not remove entries from the calendar. |
21
+ | `get_free_busy_info` | Queries the free/busy status for one or more calendars within a specified time range. It returns a list of busy time intervals, making it ideal for finding open slots and scheduling new events without conflicts. |
@@ -54,7 +54,7 @@ class GoogleCalendarApp(APIApplication):
54
54
  time_zone: str | None = None,
55
55
  ) -> dict[str, Any]:
56
56
  """
57
- Retrieves calendar events for a specified number of days starting from today. It defaults to fetching only the current day's events, simplifying date-range queries for upcoming events in contrast to the more comprehensive `list_events` function which requires explicit start and end times.
57
+ Retrieves events for a specified number of days, starting from today. This function simplifies date-range queries by auto-calculating start/end times, unlike the more comprehensive `list_events` function, which offers granular control with explicit time filters, text search, and custom sorting.
58
58
 
59
59
  Args:
60
60
  days: Number of days to retrieve events for (default: 1, which is just today)
@@ -98,7 +98,7 @@ class GoogleCalendarApp(APIApplication):
98
98
  time_zone: str | None = None,
99
99
  ) -> dict[str, Any]:
100
100
  """
101
- Retrieves a specific Google Calendar event using its unique ID. Optional parameters can limit the number of attendees returned and specify a time zone for formatting dates. It is distinct from `list_events`, which fetches multiple events based on broader criteria like date ranges or search queries.
101
+ Retrieves a specific calendar event using its unique ID. Unlike `list_events`, which fetches multiple events based on date ranges or search queries, this function targets a single, known event. It can optionally limit attendees returned and specify a time zone for date formatting in the response.
102
102
 
103
103
  Args:
104
104
  event_id: The unique identifier of the calendar event to retrieve
@@ -137,7 +137,7 @@ class GoogleCalendarApp(APIApplication):
137
137
  page_token: str | None = None,
138
138
  ) -> dict[str, Any]:
139
139
  """
140
- Fetches a customizable list of events using filters for date range, text search, sorting, and pagination. This advanced function provides more granular control than `get_today_events`, which is limited to fetching events for a specific number of upcoming days.
140
+ Fetches a customizable list of events using filters for date range, text search, sorting, and pagination. This advanced function provides more granular control than `get_upcoming_events`, which is limited to fetching events for a specific number of upcoming days.
141
141
 
142
142
  Args:
143
143
  max_results: Maximum number of events to return (default: 10, max: 2500)
@@ -196,7 +196,7 @@ class GoogleCalendarApp(APIApplication):
196
196
  calendar_id: str = "primary",
197
197
  ) -> dict[str, Any]:
198
198
  """
199
- Creates a detailed calendar event with structured data, including start/end times, summary, attendees, and recurrence rules. Unlike `quick_add_event`, which uses natural language, this method offers precise control for creating complex or recurring appointments.
199
+ Creates a calendar event using structured data for start/end times, summary, attendees, and recurrence. This method provides precise control for complex appointments, unlike `create_event_from_text` which parses natural language, making it ideal for detailed or recurring event creation.
200
200
 
201
201
  Args:
202
202
  start: Start time of the event (required). Must include timezone offset or timeZone field.
@@ -254,7 +254,7 @@ class GoogleCalendarApp(APIApplication):
254
254
 
255
255
  def create_event_from_text(self, text: str, send_updates: str = "none") -> dict[str, Any]:
256
256
  """
257
- Creates a calendar event by parsing a natural language string for details like title and time. This provides a user-friendly shortcut for event creation, contrasting with the structured `add_an_event` method which requires explicit fields for start, end, and summary.
257
+ Creates a calendar event by parsing a natural language string (e.g., "Meeting tomorrow at 10am"). This offers a user-friendly shortcut, contrasting with the structured `create_event` function which requires explicit fields like start and end times.
258
258
 
259
259
  Args:
260
260
  text: Natural language text describing the event (e.g., 'Meeting with John at Coffee Shop tomorrow 3pm-4pm')
@@ -287,7 +287,7 @@ class GoogleCalendarApp(APIApplication):
287
287
  page_token: str | None = None,
288
288
  ) -> dict[str, Any]:
289
289
  """
290
- Retrieves all individual occurrences (instances) of a specific recurring event, identified by its ID. This function allows filtering by a time range and supports pagination, distinguishing it from `list_events` which fetches multiple, distinct events rather than instances of a single one.
290
+ Retrieves all individual occurrences of a specific recurring event using its ID. Unlike `list_events`, which fetches multiple distinct events, this function expands a single recurring event into its separate instances, allowing filtering by time range and pagination for detailed scheduling views.
291
291
 
292
292
  Args:
293
293
  event_id: ID of the recurring event
@@ -341,7 +341,7 @@ class GoogleCalendarApp(APIApplication):
341
341
  userIp=None,
342
342
  ) -> Any:
343
343
  """
344
- Deletes a specific event from a Google Calendar using its event and calendar IDs. This action is permanent and can optionally send cancellation notifications or updates to attendees based on the provided parameters.
344
+ Permanently deletes a specific event from a Google Calendar using its event and calendar IDs. It can optionally send cancellation notifications to attendees, distinguishing it from functions that retrieve (`get_event_by_id`) or modify events (`replace_event`), which do not remove entries from the calendar.
345
345
 
346
346
  Args:
347
347
  calendarId (string): calendarId
@@ -400,7 +400,7 @@ class GoogleCalendarApp(APIApplication):
400
400
  max_attendees: int | None = None,
401
401
  ) -> dict[str, Any]:
402
402
  """
403
- Replaces an existing calendar event, identified by its ID, with new data. This function performs a full update, overwriting all event properties like start/end times, summary, and attendees. It does not support partial modifications; all required fields for the new event version are necessary.
403
+ Replaces an existing calendar event, identified by its ID, with new data. This function performs a full update, overwriting all event properties like start/end times and summary. It does not support partial modifications, requiring all necessary fields for the replacement to be provided.
404
404
 
405
405
  Args:
406
406
  event_id: The unique identifier of the calendar event to update (required)
@@ -458,7 +458,7 @@ class GoogleCalendarApp(APIApplication):
458
458
 
459
459
  def get_primary_calendar_details(self) -> dict[str, Any]:
460
460
  """
461
- Retrieves metadata for the user's primary calendar, including its default timezone. This information is essential for creating new events with accurate, timezone-aware start and end times, as recommended before using functions like `add_an_event` to prevent scheduling errors across different regions.
461
+ Retrieves metadata for the user's primary calendar, including its default timezone. This information is essential for creating new events with accurate, timezone-aware start and end times using other functions like `create_event`, preventing potential scheduling errors across different regions.
462
462
 
463
463
  Returns:
464
464
  Dictionary containing the user's timezone information
@@ -491,7 +491,7 @@ class GoogleCalendarApp(APIApplication):
491
491
  timeZone=None,
492
492
  ) -> dict[str, Any]:
493
493
  """
494
- Queries the Google Calendar API to determine the free/busy status for one or more calendars within a specified time range. It returns a list of busy time intervals, useful for scheduling new events without conflicts.
494
+ Queries the free/busy status for one or more calendars within a specified time range. It returns a list of busy time intervals, making it ideal for finding open slots and scheduling new events without conflicts.
495
495
 
496
496
 
497
497
  Args:
@@ -9,17 +9,17 @@ This is automatically generated from OpenAPI schema for the GoogleDocsApp API.
9
9
 
10
10
  | Tool | Description |
11
11
  |------|-------------|
12
- | `create_document` | Creates a new blank Google Document with the specified title and returns the API response. |
13
- | `get_document` | Retrieves the latest version of a specified document from the Google Docs API. |
14
- | `add_content` | Adds text content at a specified position in an existing Google Document via the Google Docs API. |
15
- | `style_text` | Simplified text styling for Google Document - handles most common cases. |
16
- | `delete_content` | Deletes content from a specified range in a Google Document. |
17
- | `insert_table` | Inserts a table at the specified location in a Google Document. |
18
- | `create_footer` | Creates a Footer in a Google Document. |
19
- | `create_footnote` | Creates a Footnote segment and inserts a new FootnoteReference at the given location. |
20
- | `delete_footer` | Deletes a Footer from the document. |
21
- | `create_header` | Creates a Header in a Google Document. |
22
- | `delete_header` | Deletes a Header from the document. |
23
- | `create_paragraph_bullets` | Creates bullets for all of the paragraphs that overlap with the given range. |
24
- | `delete_paragraph_bullets` | Deletes bullets from all of the paragraphs that overlap with the given range. |
25
- | `update_paragraph_style` | Updates paragraph styling for a specified range in a Google Document. |
12
+ | `create_document` | Creates a blank Google Document with a specified title using a POST request to the Google Docs API. This is the primary creation method, returning the document's metadata, including the ID required by functions like `get_document` or `insert_text` to perform subsequent operations on the new file. |
13
+ | `get_document` | Retrieves the complete content and metadata for a specific Google Document using its unique ID. This function performs a GET request to the API, returning the full JSON response. It's the primary read operation, contrasting with `create_document` which creates new documents. |
14
+ | `insert_text` | Inserts a text string at a specified index within an existing Google Document using the `batchUpdate` API. This function adds new textual content, distinguishing it from functions that insert non-text elements like tables or apply formatting (`apply_text_style`) to existing content. |
15
+ | `apply_text_style` | Applies character-level formatting such as bold, italic, font size, color, and hyperlinks to a specified text range in a document. This function modifies text appearance, distinguishing it from `update_paragraph_style`, which handles block-level formatting like alignment and headings. |
16
+ | `delete_content_range` | Deletes content within a specified index range in a Google Document via the batchUpdate API. It removes any content based on location, distinguishing it from functions like `delete_header` or `delete_paragraph_bullets`, which remove specific structures or styles instead. |
17
+ | `insert_table` | Inserts a table with specified row and column dimensions at a given index in a Google Document. This function uses the `batchUpdate` API for precise placement, allowing the table to be added to the document's body, a header, or a footer, returning the API's response. |
18
+ | `create_footer` | Creates a footer of a specified type in a Google Document via the batch update API. The footer can optionally be associated with a specific section break, enabling distinct footers for different document sections, distinguishing it from the `create_header` and `create_footnote` functions. |
19
+ | `create_footnote` | Creates a footnote via the batch update API, inserting a numbered reference at a specified index or a segment's end. This function adds an in-body citation, distinguishing it from `create_footer` which creates a content block at the bottom of the page. |
20
+ | `delete_footer` | Deletes a specific footer from a Google Document using its unique ID via a `batchUpdate` request. This operation, the counterpart to `create_footer`, removes an entire footer section, unlike `delete_content_range` which targets text within a specified index range. |
21
+ | `create_header` | Creates a header in a specified Google Document via the batchUpdate API endpoint. This function allows defining the header type and can optionally associate it with a specific section break location. It complements the `delete_header` and `create_footer` functions for managing document structure. |
22
+ | `delete_header` | Removes a specific header from a Google Document using its unique ID. This function sends a `deleteHeader` request to the batch update API, acting as the direct counterpart to `create_header` and distinguishing it from `delete_footer` which removes footers. |
23
+ | `apply_list_style` | Applies a predefined bulleted or numbered list format to paragraphs within a specified range using a `bullet_preset`. This function adds list formatting, distinguishing it from its counterpart, `delete_paragraph_bullets`, and other styling functions like `update_paragraph_style`, which handles alignment and headings. |
24
+ | `delete_paragraph_bullets` | Removes bullet points or numbering from paragraphs within a specified range in a Google Document. This function reverts list formatting via the batch update API, acting as the direct counterpart to `apply_list_style` and preserving the underlying text content, unlike `delete_content_range`. |
25
+ | `update_paragraph_style` | Applies paragraph-level formatting, such as named styles (e.g., 'HEADING_1'), alignment, or text direction, to a specified text range. This function handles block-level styles, distinguishing it from `apply_text_style`, which formats individual characters with attributes like bold or italic. |
@@ -11,7 +11,7 @@ class GoogleDocsApp(APIApplication):
11
11
 
12
12
  def create_document(self, title: str) -> dict[str, Any]:
13
13
  """
14
- Creates a new, blank Google Document with a specified title via a POST request to the Google Docs API. It returns the API response containing the new document's metadata, including its ID, which is necessary for other functions like `add_content` or `get_document` to interact with it.
14
+ Creates a blank Google Document with a specified title using a POST request to the Google Docs API. This is the primary creation method, returning the document's metadata, including the ID required by functions like `get_document` or `insert_text` to perform subsequent operations on the new file.
15
15
 
16
16
  Args:
17
17
  title: The title for the new Google Document to be created
@@ -34,7 +34,7 @@ class GoogleDocsApp(APIApplication):
34
34
 
35
35
  def get_document(self, document_id: str) -> dict[str, Any]:
36
36
  """
37
- Retrieves the complete content and metadata for a specific Google Document by its unique ID. This function queries the Google Docs API and returns the full JSON response, representing the document's latest version. It's the primary read operation, contrasting with `create_document` which creates new ones.
37
+ Retrieves the complete content and metadata for a specific Google Document using its unique ID. This function performs a GET request to the API, returning the full JSON response. It's the primary read operation, contrasting with `create_document` which creates new documents.
38
38
 
39
39
  Args:
40
40
  document_id: The unique identifier of the document to retrieve
@@ -57,7 +57,7 @@ class GoogleDocsApp(APIApplication):
57
57
  self, document_id: str, content: str, index: int = 1
58
58
  ) -> dict[str, Any]:
59
59
  """
60
- Inserts a string of text at a specified index in an existing Google Document using the `batchUpdate` API. This function specifically adds new textual content, distinguishing it from functions that insert tables or apply styling to existing text.
60
+ Inserts a text string at a specified index within an existing Google Document using the `batchUpdate` API. This function adds new textual content, distinguishing it from functions that insert non-text elements like tables or apply formatting (`apply_text_style`) to existing content.
61
61
 
62
62
  Args:
63
63
  document_id: The unique identifier of the Google Document to be updated
@@ -204,7 +204,7 @@ class GoogleDocsApp(APIApplication):
204
204
  tab_id: str | None = None,
205
205
  ) -> dict[str, Any]:
206
206
  """
207
- Applies paragraph formatting, such as named styles ('TITLE', 'HEADING_1'), alignment, and text direction, to a specified range in a Google Document. It selectively updates only the provided style attributes, distinguishing it from `style_text`, which handles character-level formatting like bolding or italics.
207
+ Applies paragraph-level formatting, such as named styles (e.g., 'HEADING_1'), alignment, or text direction, to a specified text range. This function handles block-level styles, distinguishing it from `apply_text_style`, which formats individual characters with attributes like bold or italic.
208
208
 
209
209
  Args:
210
210
  document_id: The unique identifier of the Google Document to be updated
@@ -286,7 +286,7 @@ class GoogleDocsApp(APIApplication):
286
286
  tab_id: str | None = None,
287
287
  ) -> dict[str, Any]:
288
288
  """
289
- Deletes content within a specified range in a Google Document via a `batchUpdate` API call. The function targets a range defined by start and end indexes and can operate within optional segments like headers or footers, returning the API's response after the deletion operation.
289
+ Deletes content within a specified index range in a Google Document via the batchUpdate API. It removes any content based on location, distinguishing it from functions like `delete_header` or `delete_paragraph_bullets`, which remove specific structures or styles instead.
290
290
 
291
291
  Args:
292
292
  document_id: The unique identifier of the Google Document to be updated
@@ -333,7 +333,7 @@ class GoogleDocsApp(APIApplication):
333
333
  tab_id: str = None,
334
334
  ) -> dict[str, Any]:
335
335
  """
336
- Inserts a table with specified row and column dimensions at a given location in a Google Document. It uses the `batchUpdate` API endpoint for precise placement within the document's body, header, or footer, returning the API response.
336
+ Inserts a table with specified row and column dimensions at a given index in a Google Document. This function uses the `batchUpdate` API for precise placement, allowing the table to be added to the document's body, a header, or a footer, returning the API's response.
337
337
 
338
338
  Args:
339
339
  document_id: The unique identifier of the Google Document to be updated
@@ -390,7 +390,7 @@ class GoogleDocsApp(APIApplication):
390
390
  section_break_tab_id: str = None,
391
391
  ) -> dict[str, Any]:
392
392
  """
393
- Creates a footer of a specified type in a Google Document via the batch update API. The footer can optionally be associated with a specific section break, enabling distinct footers for different document sections, distinguishing it from `create_header`.
393
+ Creates a footer of a specified type in a Google Document via the batch update API. The footer can optionally be associated with a specific section break, enabling distinct footers for different document sections, distinguishing it from the `create_header` and `create_footnote` functions.
394
394
 
395
395
  Args:
396
396
  document_id: The unique identifier of the Google Document to be updated
@@ -442,7 +442,7 @@ class GoogleDocsApp(APIApplication):
442
442
  end_of_segment_tab_id: str = None,
443
443
  ) -> dict[str, Any]:
444
444
  """
445
- Creates a footnote segment and inserts a corresponding reference into a Google Document via the API's batch update. The reference can be placed at a specific index or at the end of a document segment. Unlike `create_footer`, this adds a numbered citation within the document body.
445
+ Creates a footnote via the batch update API, inserting a numbered reference at a specified index or a segment's end. This function adds an in-body citation, distinguishing it from `create_footer` which creates a content block at the bottom of the page.
446
446
 
447
447
  Args:
448
448
  document_id: The unique identifier of the Google Document to be updated
@@ -505,7 +505,7 @@ class GoogleDocsApp(APIApplication):
505
505
  tab_id: str = None,
506
506
  ) -> dict[str, Any]:
507
507
  """
508
- Deletes a specific footer from a Google Document using its unique ID (`footer_id`). This function constructs and sends a `deleteFooter` request to the Google Docs API's batch update endpoint, optionally targeting a footer within a specific document tab.
508
+ Deletes a specific footer from a Google Document using its unique ID via a `batchUpdate` request. This operation, the counterpart to `create_footer`, removes an entire footer section, unlike `delete_content_range` which targets text within a specified index range.
509
509
 
510
510
  Args:
511
511
  document_id: The unique identifier of the Google Document to be updated
@@ -593,7 +593,7 @@ class GoogleDocsApp(APIApplication):
593
593
  tab_id: str = None,
594
594
  ) -> dict[str, Any]:
595
595
  """
596
- Removes a specific header from a Google Document using its unique ID. This function constructs and sends a `deleteHeader` request to the Google Docs API's batch update endpoint, acting as the direct counterpart to the `create_header` function.
596
+ Removes a specific header from a Google Document using its unique ID. This function sends a `deleteHeader` request to the batch update API, acting as the direct counterpart to `create_header` and distinguishing it from `delete_footer` which removes footers.
597
597
 
598
598
  Args:
599
599
  document_id: The unique identifier of the Google Document to be updated
@@ -634,7 +634,7 @@ class GoogleDocsApp(APIApplication):
634
634
  tab_id: str = None,
635
635
  ) -> dict[str, Any]:
636
636
  """
637
- Applies a specified bulleted or numbered list format to paragraphs within a given range in a Google Document. The list style is determined by a predefined preset, covering various bullet glyphs and numbering schemes like 'BULLET_DISC_CIRCLE_SQUARE' or 'NUMBERED_DECIMAL_ALPHA_ROMAN'.
637
+ Applies a predefined bulleted or numbered list format to paragraphs within a specified range using a `bullet_preset`. This function adds list formatting, distinguishing it from its counterpart, `delete_paragraph_bullets`, and other styling functions like `update_paragraph_style`, which handles alignment and headings.
638
638
 
639
639
  Args:
640
640
  document_id: The unique identifier of the Google Document to be updated
@@ -704,7 +704,7 @@ class GoogleDocsApp(APIApplication):
704
704
  tab_id: str = None,
705
705
  ) -> dict[str, Any]:
706
706
  """
707
- Removes bullet points or numbering from paragraphs within a specified range in a Google Document. This function uses the API's batch update feature to revert list formatting, acting as the direct counterpart to `create_paragraph_bullets` for removing list styles, rather than deleting text content.
707
+ Removes bullet points or numbering from paragraphs within a specified range in a Google Document. This function reverts list formatting via the batch update API, acting as the direct counterpart to `apply_list_style` and preserving the underlying text content, unlike `delete_content_range`.
708
708
 
709
709
  Args:
710
710
  document_id: The unique identifier of the Google Document to be updated
@@ -9,60 +9,57 @@ This is automatically generated from OpenAPI schema for the GoogleDriveApp API.
9
9
 
10
10
  | Tool | Description |
11
11
  |------|-------------|
12
- | `get_drive_info` | Retrieves detailed information about the user's Google Drive storage and account. |
13
- | `list_files` | Lists and retrieves files from Google Drive with optional filtering, pagination, and sorting. |
14
- | `create_file_from_text` | Creates a new file in Google Drive with specified text content and returns the file's metadata. |
15
- | `upload_a_file` | Uploads a file to Google Drive by creating a file metadata entry and uploading the binary content. |
16
- | `find_folder_id_by_name` | Searches for and retrieves a Google Drive folder's ID using its name. |
17
- | `create_folder` | Creates a new folder in Google Drive with optional parent folder specification |
18
- | `get_file` | Retrieves detailed metadata for a specific file using its ID. |
19
- | `delete_file` | Deletes a specified file from Google Drive and returns a status message. |
20
- | `list_user_sinstalled_apps` | List user's installed apps |
21
- | `get_aspecific_app` | Get a specific app |
22
- | `information_about_user_and_drive` | Information about user and drive |
23
- | `list_changes_made_to_afile_or_drive` | List changes made to a file or drive |
24
- | `get_start_page_token` | Gets the starting pageToken for listing future changes |
25
- | `subscribe_to_changes_for_auser` | Subscribe to changes for a user |
26
- | `post_stop_channel` | Stop watching resources through a channel |
27
- | `lists_afile_scomments` | Lists a file's comments |
28
- | `create_acomment_on_afile` | Create a comment on a file |
29
- | `get_comment_by_id` | Get comment by ID |
30
- | `delete_acomment` | Delete a comment |
31
- | `update_comment` | Update comment |
32
- | `list_user_sshared_drive` | List user's shared drive |
33
- | `create_ashared_drive` | Create a shared drive |
34
- | `get_ashared_drive_smetadata_by_id` | Get a shared drive's metadata by ID |
35
- | `permanently_delete_ashared_drive` | Permanently delete a shared drive |
36
- | `update_metadata_for_ashared_drive` | Update metadata for a shared drive |
37
- | `hide_drive_by_id_post` | Hide a shared drive from the default view |
38
- | `unhide_drive` | Restore shared drive to default view |
39
- | `list_user_sfiles` | List user's files |
40
- | `create_anew_file` | Create a new file |
41
- | `generate_aset_of_file_ids` | Generate a set of file IDs |
42
- | `empty_trash_files` | Permanently delete all of the trashed files |
43
- | `get_file_metadata` | Get a file's metadata. Use to it to get infromation like parents |
44
- | `delete_file_by_id` | Permanently delete a file without moving it to the trash |
45
- | `update_file` | Update a file's metadata and/or content |
46
- | `copy_file_by_id` | Create a copy of a file and apply any requested update |
47
- | `export_agoogle_workspace_document` | Export a Google Workspace document |
48
- | `list_the_labels_on_afile` | List the labels on a file |
49
- | `modify_labels_applied_to_afile` | Modify labels applied to a file |
50
- | `subscribe_to_changes_to_afile` | Subscribe to changes to a file |
51
- | `list_file_permissions` | List a file's or shared drive's permissions |
52
- | `post_file_permission` | Create a permission for a file or shared drive |
53
- | `get_permission_by_id` | Get permission by ID |
54
- | `delete_apermission` | Delete a permission |
55
- | `update_apermission` | Update a permission |
56
- | `list_acomment_sreplies` | List a comment's replies |
57
- | `create_areply_to_acomment` | Create a reply to a comment |
58
- | `get_reply_by_id` | Get reply by ID |
59
- | `delete_areply` | Delete a reply |
60
- | `update_areply` | Update a reply |
61
- | `list_afile_srevisions` | List a file's revisions |
62
- | `get_aspecific_revision` | Get a specific revision |
63
- | `permanently_delete_afile_version` | Permanently delete a file version |
64
- | `update_arevision` | Update a revision |
65
- | `list_all_members_of_achannel` | List all members of a channel |
66
- | `fetch_user_email` | Fetch User Email |
67
- | `grant_google_drive_access` | Grant Google Drive Access |
68
- | `move_files` | Moves a file from one folder to another by adding a new parent and removing the old parent. |
12
+ | `get_drive_info` | Fetches key user and storage quota information for the authenticated Google Drive account. This streamlined function offers a focused alternative to `get_about_info`, which queries the same endpoint but exposes all available API parameters, providing a simpler way to get essential account details. |
13
+ | `search_files` | Searches for files in Google Drive, allowing for powerful filtering, sorting, and pagination. This streamlined function offers a more user-friendly alternative to the comprehensive `search_files_advanced` method, making it ideal for targeted queries like finding files by name, type, or parent folder. |
14
+ | `create_text_file` | Creates a file in Google Drive using an in-memory text string. Unlike `upload_file_from_path`, which reads from a local file, this function first creates the file's metadata (name, parent) and then uploads the provided string content, returning the new file's complete metadata upon completion. |
15
+ | `upload_file_from_path` | Uploads a local file to Google Drive by reading its binary content from a path. It creates the file's metadata, uploads the content, and returns the new file's metadata. This differs from `create_text_file` which uses in-memory string content instead of a local file path. |
16
+ | `find_folder_id_by_name` | Searches for a non-trashed folder by its exact name, returning the ID of the first match. As a utility for `create_folder`, it resolves parent names to IDs and returns None if the folder isn't found or an API error occurs, logging the failure internally. |
17
+ | `create_folder` | Creates a new folder in Google Drive, optionally within a parent specified by name or ID. If a parent name is given, it internally resolves it to an ID using the `find_folder_id_by_name` function. Returns the metadata for the newly created folder upon successful creation. |
18
+ | `get_file_details` | Fetches all default metadata for a specific file by its unique ID. This function provides a simple, direct retrieval of a single file's complete attributes, differing from `search_files` which performs broad queries for multiple files based on various criteria. |
19
+ | `trash_file` | Moves a specified file to the trash using its ID. It provides simplified error handling by returning a dictionary with a success or error message, unlike the `permanently_delete_file` function which raises an exception on failure. |
20
+ | `list_installed_apps` | Retrieves a list of the user's installed Google Drive applications. Allows optional filtering by file extensions or MIME types to find apps capable of opening specific file formats, returning a detailed list of matching applications. |
21
+ | `get_app_by_id` | Retrieves detailed information for a single installed Google Drive application using its unique ID. This provides a targeted alternative to `list_installed_apps`, which returns a complete list, allowing for focused data retrieval about a specific application. |
22
+ | `get_about_info` | Retrieves user account and Drive settings from the `/about` endpoint. This generic function provides full parameter control, offering a flexible alternative to the `get_drive_info` method, which requests specific, predefined fields like storage quota and user details. |
23
+ | `list_drive_changes` | Fetches a paginated list of file changes for a user's account or a specific shared drive, using a required page token. Supports various filters to customize the change log, enabling tracking of file activity for synchronization or auditing. |
24
+ | `get_changes_start_token` | Retrieves a starting page token representing the current state of a user's Drive or a shared drive. This token serves as a baseline for subsequent calls to list future file and folder changes, enabling efficient, incremental change tracking. |
25
+ | `watch_drive_changes` | Sets up a push notification channel to monitor changes across a user's Google Drive or a specific shared drive. This allows an external service to receive updates when files are modified, added, or deleted, based on specified filters. |
26
+ | `stop_watching_channel` | Terminates an active push notification channel, ceasing the delivery of updates for a watched Google Drive resource. This requires the channel's ID and resource ID to identify and close the specific notification stream, effectively unsubscribing from real-time changes. |
27
+ | `list_file_comments` | Retrieves a paginated list of all top-level comments for a specified Google Drive file. It supports filtering by modification time and including deleted comments, fetching parent comments rather than replies, unlike `list_comment_replies`. |
28
+ | `create_file_comment` | Creates a new comment on a specified Google Drive file. It requires a file ID and the comment's content, returning the new comment's metadata. This adds top-level comments, distinct from `create_comment_reply` which replies to existing comments. |
29
+ | `get_file_comment_by_id` | Retrieves a single comment's metadata using its unique comment and file IDs. This provides targeted access to one comment, unlike `list_file_comments` which lists all comments for a file. It can optionally include deleted comments in the returned data. |
30
+ | `delete_comment` | Permanently deletes a specific comment from a Google Drive file, identified by both the file and comment IDs. This irreversible action removes the top-level comment and its replies, distinguishing it from the `delete_reply` function which targets only individual replies within a comment thread. |
31
+ | `update_comment` | Updates an existing comment on a specified file using its unique ID. This function allows for partial modification of the comment's properties, such as its content or resolved status, and returns the updated comment's metadata. |
32
+ | `list_shared_drives` | Retrieves a paginated list of shared drives accessible to the user. Supports optional query-based filtering and can be executed with domain administrator privileges to list all shared drives within the domain, returning a dictionary containing the list of drives and pagination details. |
33
+ | `create_shared_drive` | Creates a new shared drive using a unique `requestId` for idempotency. This function allows specifying initial properties such as its name, background image, and access restrictions, returning the created drive's metadata on success. |
34
+ | `get_shared_drive_metadata` | Retrieves metadata for a specific shared drive using its ID. Unlike `get_drive_info`, which gets user account data, this function targets a single drive's properties. It supports domain administrator access and allows specifying fields to customize the response, returning the drive's detailed information. |
35
+ | `delete_shared_drive` | Permanently deletes a shared drive by its ID. This irreversible action removes the entire drive and, unlike `trash_file`, can optionally delete all its contents for domain administrators, providing a complete removal solution for a shared workspace. |
36
+ | `update_shared_drive` | Updates a shared drive's metadata properties, such as its name, theme, or color, using its ID. This function sends a PATCH request to modify the drive and returns a dictionary containing the complete, updated metadata for the shared drive upon success. |
37
+ | `hide_drive` | Hides a specified shared drive from the user's default view using its ID. This function sends a POST request to the API's hide endpoint, returning updated drive metadata. It is the direct counterpart to the `unhide_drive` function, which restores visibility. |
38
+ | `unhide_drive` | Makes a hidden shared drive visible again in the user's default view by its ID. This function sends a POST request to the Google Drive API's `/unhide` endpoint, effectively reversing the action of the `hide_drive` function, and returns the updated drive metadata. |
39
+ | `search_files_advanced` | Exhaustively lists or searches files using advanced parameters for filtering, sorting, and pagination. As a low-level alternative to the simplified `search_files` function, it provides granular control by exposing the full range of Google Drive API query options for complex retrieval. |
40
+ | `create_file_metadata` | Creates a new file's metadata resource in Google Drive, allowing detailed configuration of properties like name, MIME type, and parent folders. Unlike `upload_file_from_path` or `create_text_file`, this function only creates the metadata entry without uploading any file content. |
41
+ | `generate_file_ids` | Generates a batch of unique IDs for future Google Drive files or shortcuts. This utility optimizes creation workflows by allowing identifiers to be fetched in advance, specifying quantity, storage space (e.g., 'drive'), and item type (e.g., 'files'). |
42
+ | `empty_trash` | Permanently deletes all files and folders from the trash. This irreversible action can target the user's main trash or a specific shared drive's trash via its `driveId`, distinguishing it from `trash_file` which only moves a single item to the trash. |
43
+ | `permanently_delete_file` | Permanently deletes a file by its ID, bypassing the trash for irreversible removal. Unlike the simpler `trash_file` function, this method offers advanced control through numerous optional API parameters, such as handling files located in shared drives. |
44
+ | `update_file_metadata` | Modifies a file's metadata properties, such as name, description, or trashed status, using its unique ID. It also moves files by changing parent attributes, acting as a comprehensive alternative to the more specialized `move_file` function. |
45
+ | `copy_file` | Creates a copy of a file using its ID. This function can simultaneously apply metadata updates, such as a new name or parent folder, to the duplicate upon creation and returns the new file's metadata. |
46
+ | `export_file` | Exports a Google Workspace document (e.g., Google Doc) by its ID, converting it to a specified format like PDF using the `mimeType` argument. This function returns the raw, converted file content for download, differentiating it from methods that retrieve metadata. |
47
+ | `list_file_labels` | Retrieves a paginated list of all labels applied to a specific file in Google Drive, identified by its unique ID. It allows controlling the number of results per page and navigating through pages of labels, differing from `modify_file_labels` which alters them. |
48
+ | `modify_file_labels` | Atomically modifies the set of labels on a specified file in Google Drive. It can add, update, or remove labels based on the provided list of modifications, returning the updated label metadata for the file. |
49
+ | `watch_file_for_changes` | Establishes a push notification channel for a specific file, enabling real-time updates via webhook. Unlike `watch_drive_changes`, which monitors an entire drive, this function provides targeted notifications for content or metadata updates to a single file identified by its ID. |
50
+ | `list_file_permissions` | Retrieves the list of permissions for a specified file or shared drive. This function supports pagination and various query parameters to customize results for different access levels, such as domain administration, unlike `get_permission_by_id` which fetches a single permission. |
51
+ | `create_file_permission` | Creates a permission for a file or shared drive, assigning roles like 'reader' to a user, group, or domain. This comprehensive method supports advanced options like notification emails and ownership transfer, distinguishing it from the simplified `create_permission` function which offers fewer parameters. |
52
+ | `get_permission_by_id` | Retrieves metadata for a specific permission on a file or shared drive, identified by its unique ID. This provides targeted access information, unlike `list_file_permissions` which fetches all permissions for a file. |
53
+ | `delete_permission` | Deletes a specific permission from a Google Drive file or shared drive, identified by their respective IDs. This action permanently revokes the access associated with that permission, with optional parameters for shared drives and domain administrator access. |
54
+ | `update_permission` | Updates an existing permission for a file or shared drive using its permission ID. This function can modify a user's role (e.g., from reader to writer), transfer ownership, or change expiration settings, returning the updated permission object upon success. |
55
+ | `list_comment_replies` | Fetches a paginated list of replies for a specific comment, requiring both file and comment IDs. It can optionally include deleted replies. Unlike `list_file_comments`, which retrieves all top-level comments, this function targets replies within a single comment's thread. |
56
+ | `create_comment_reply` | Creates a reply to a specific comment on a Google Drive file. It requires the file ID and the parent comment ID, posting the new reply's content to the correct comment thread. |
57
+ | `get_reply_by_id` | Retrieves a specific reply's metadata from a comment thread using file, comment, and reply IDs. Unlike `list_comment_replies`, which fetches all replies for a comment, this function targets a single one and can optionally include deleted replies in the result. |
58
+ | `delete_reply` | Permanently deletes a specific reply from a comment on a Google Drive file. This targeted operation requires file, comment, and reply IDs to remove a single nested reply, distinguishing it from `delete_comment` which removes an entire top-level comment. |
59
+ | `update_reply` | Updates a specific reply to a comment on a file in Google Drive. It uses file, comment, and reply IDs to locate the reply, allowing modification of its properties like content. The function then returns the updated reply's metadata. |
60
+ | `list_file_revisions` | Retrieves a paginated list of all historical versions (revisions) for a specific file in Google Drive. Supports page size and token parameters to navigate a file's change history, differentiating it from functions that get, update, or delete a single revision. |
61
+ | `get_revision` | Fetches metadata for a single, specific file revision using its file and revision IDs. Unlike `list_file_revisions` which lists a file's complete version history, this function targets one historical version to retrieve its unique metadata. |
62
+ | `delete_file_revision` | Permanently deletes a specific revision of a file, identified by its file and revision IDs. This irreversible action removes a single historical version, distinguishing it from functions like `permanently_delete_file`, which deletes the entire file, or `trash_file`, which moves it to the trash. |
63
+ | `update_revision` | Updates the metadata for a specific file revision using its file and revision IDs. It modifies properties such as pinning the revision (`keepForever`) or its publication status, and returns the updated revision metadata upon success. |
64
+ | `create_permission` | Grants a specified role (e.g., 'reader') to a user or group for a file. This is a simplified alternative to the comprehensive `create_file_permission` function, focusing only on the core arguments required for basic sharing operations and omitting advanced options like notification settings or ownership transfer. |
65
+ | `move_file` | Moves a file to a new folder by updating its parent references. This function adds the file to a destination folder (`add_parents`) and removes it from the source (`remove_parents`), offering a focused alternative to the more comprehensive `update_file_metadata` function. |