@piotr-agier/google-drive-mcp 1.3.3 → 1.5.0

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.
package/README.md CHANGED
@@ -362,6 +362,34 @@ Add the server to your Claude Desktop configuration:
362
362
  - `newName`: Name for the copied file (optional, defaults to "Copy of [original name]")
363
363
  - `parentFolderId`: Destination folder ID (optional, defaults to same location)
364
364
 
365
+ #### Sharing and Permissions
366
+ - **listPermissions** - List current sharing permissions on a file/folder
367
+ - `fileId`: File or folder ID
368
+
369
+ - **addPermission** - Add a new permission to a file/folder
370
+ - `fileId`: File or folder ID
371
+ - `type`: Permission target type (`user`, `group`, `domain`, `anyone`)
372
+ - `role`: Permission role (`reader`, `commenter`, `writer`, `fileOrganizer`, `organizer`, `owner`)
373
+ - `emailAddress`: Required for `user`/`group` types
374
+ - `domain`: Required for `domain` type
375
+ - `sendNotificationEmail`: Send notification email (optional)
376
+
377
+ - **updatePermission** - Update role for an existing permission
378
+ - `fileId`: File or folder ID
379
+ - `permissionId`: Permission ID
380
+ - `role`: New role
381
+
382
+ - **removePermission** - Remove a permission from a file/folder
383
+ - `fileId`: File or folder ID
384
+ - `permissionId`: Permission ID (optional if `emailAddress` is provided)
385
+ - `emailAddress`: Email to find permission by (optional fallback)
386
+
387
+ - **shareFile** - Share file with a user email (idempotent helper)
388
+ - `fileId`: File or folder ID
389
+ - `emailAddress`: Recipient email
390
+ - `role`: Role (`reader`, `commenter`, `writer`)
391
+ - `sendNotificationEmail`: Send notification email (optional)
392
+
365
393
  - **uploadFile** - Upload a local file (any type: image, audio, video, PDF, etc.) to Google Drive
366
394
  - `localPath`: Absolute path to the local file
367
395
  - `name`: File name in Drive (optional, defaults to local filename)
@@ -444,6 +472,19 @@ Add the server to your Claude Desktop configuration:
444
472
  - `spaceAbove`, `spaceBelow`: Spacing in points (optional)
445
473
  - `keepWithNext`: Keep with next paragraph (optional)
446
474
 
475
+ - **formatGoogleDocText** - Alias for `applyTextStyle` (compatibility helper)
476
+ - Same parameters as `applyTextStyle`
477
+
478
+ - **formatGoogleDocParagraph** - Alias for `applyParagraphStyle` (compatibility helper)
479
+ - Same parameters as `applyParagraphStyle`
480
+
481
+ - **findAndReplaceInDoc** - Find and replace text across a Google Doc
482
+ - `documentId`: Document ID
483
+ - `findText`: Text to find
484
+ - `replaceText`: Replacement text
485
+ - `matchCase`: Case-sensitive match (optional, default: false)
486
+ - `dryRun`: Only report estimated matches, don’t modify document (optional, default: false)
487
+
447
488
  #### Tables and Images
448
489
  - **insertTable** - Insert a new table at a given index
449
490
  - `documentId`: Document ID
@@ -528,9 +569,41 @@ Add the server to your Claude Desktop configuration:
528
569
  - `valueInputOption`: `RAW` or `USER_ENTERED` (optional, default: USER_ENTERED)
529
570
 
530
571
  - **addSpreadsheetSheet** - Add a new sheet/tab to an existing spreadsheet
572
+ - **addSheet** - Alias for `addSpreadsheetSheet`
531
573
  - `spreadsheetId`: Spreadsheet ID
532
574
  - `sheetTitle`: Title for the new sheet
533
575
 
576
+ - **listSheets** - List tabs/sheets in a spreadsheet
577
+ - `spreadsheetId`: Spreadsheet ID
578
+
579
+ - **renameSheet** - Rename a sheet/tab by `sheetId`
580
+ - `spreadsheetId`: Spreadsheet ID
581
+ - `sheetId`: Sheet ID
582
+ - `newTitle`: New title
583
+
584
+ - **deleteSheet** - Delete a sheet/tab by `sheetId`
585
+ - `spreadsheetId`: Spreadsheet ID
586
+ - `sheetId`: Sheet ID
587
+
588
+ - **addDataValidation** - Add data validation rules to a range
589
+ - `spreadsheetId`: Spreadsheet ID
590
+ - `range`: A1 range (e.g., `Sheet1!A1:A10`)
591
+ - `conditionType`: `ONE_OF_LIST`, `NUMBER_GREATER`, `NUMBER_LESS`, or `TEXT_CONTAINS`
592
+ - `values`: Condition values (e.g. list items, threshold)
593
+ - `strict`: Reject invalid values (optional, default: `true`)
594
+ - `showCustomUi`: Show dropdown/custom UI (optional, default: `true`)
595
+
596
+ - **protectRange** - Protect a range in a spreadsheet
597
+ - `spreadsheetId`: Spreadsheet ID
598
+ - `range`: A1 range
599
+ - `description`: Protection description (optional)
600
+ - `warningOnly`: Warn instead of enforce (optional, default: `false`)
601
+
602
+ - **addNamedRange** - Create a named range
603
+ - `spreadsheetId`: Spreadsheet ID
604
+ - `name`: Named range name
605
+ - `range`: A1 range
606
+
534
607
  - **listGoogleSheets** - List Google Spreadsheets with optional filtering
535
608
  - `query`: Search query to filter by name or content (optional)
536
609
  - `maxResults`: Maximum spreadsheets to return, 1-100 (optional, default: 20)
@@ -653,6 +726,32 @@ Add the server to your Claude Desktop configuration:
653
726
  - `slideIndex`: Slide index (0-based)
654
727
  - `notes`: The speaker notes content to set
655
728
 
729
+ #### Slide Operations and Templating
730
+ - **deleteGoogleSlide** - Delete a slide by object ID
731
+ - `presentationId`: Presentation ID
732
+ - `slideObjectId`: Slide object ID
733
+
734
+ - **duplicateSlide** - Duplicate a slide by object ID
735
+ - `presentationId`: Presentation ID
736
+ - `slideObjectId`: Slide object ID
737
+
738
+ - **reorderSlides** - Reorder slides by object IDs and insertion index
739
+ - `presentationId`: Presentation ID
740
+ - `slideObjectIds`: Array of slide object IDs to move
741
+ - `insertionIndex`: Target insertion index
742
+
743
+ - **replaceAllTextInSlides** - Replace text across a presentation
744
+ - `presentationId`: Presentation ID
745
+ - `containsText`: Text to find
746
+ - `replaceText`: Replacement text
747
+ - `matchCase`: Match case (optional, default: `false`)
748
+
749
+ - **exportSlideThumbnail** - Export a slide thumbnail URL (PNG/JPEG, SMALL/MEDIUM/LARGE)
750
+ - `presentationId`: Presentation ID
751
+ - `slideObjectId`: Slide object ID
752
+ - `mimeType`: `PNG` or `JPEG` (optional, default: `PNG`)
753
+ - `size`: `SMALL`, `MEDIUM`, or `LARGE` (optional, default: `LARGE`)
754
+
656
755
  ### Google Calendar
657
756
  - **listCalendars** - List all accessible Google Calendars
658
757
  - `showHidden`: Include hidden calendars (optional, default: false)