B

Google Workspace MCP

Well-maintained community Google Workspace MCP server for Gmail, Drive, Docs, Sheets, Calendar, Slides, Chat, Forms, Tasks, Contacts, Apps Script, and Custom Search with full OAuth 2.1 support

Overall Score75/100

Score Breakdown

Server Info

Package
workspace-mcp
Registry
pypi
Maintainer
Community
Category
Communication
Tags
googleemailcalendardocs
Last Scanned
28 May 2026

Findings

7 issues

Tool Schema Quality

MEDIUMOnly 0 of 113 schemas have parameter constraints

Most schemas lack maxLength, enum, or pattern constraints on string parameters.

Remediation

Add constraints to string parameters, especially on write operations.

CRITICALDangerous execution surface: Run Script Function executes arbitrary Google Apps Script code in the user's Google account context

Tool allows raw code/query execution which could be exploited via prompt injection.

Remediation

Use parameterized queries or validated command sets.

Permission Granularity

MEDIUM12 tools combine read and write operations

ToolAnnotations with readOnlyHint and destructiveHint are applied to all 113 tools: 58 readOnlyHint=True, 58 readOnlyHint=False (write), 30 destructiveHint=True. Granular permission control via --permissions flag allows service:level configuration (gmail:readonly, gmail:send, gmail:full, etc.). --read-only flag disables all write tools globally. --tools flag restricts which services are loaded. The 'Manage' pattern tools (Manage Event, Manage Contact, Manage Task, etc.) are classified as mixed read-write since they combine create/update/delete in a single tool, reducing the ability to allow updates while blocking deletes.

Remediation

Split into separate read and write tools.

LLM Safety

MEDIUM15 tool descriptions are too vague

Short or generic descriptions make tool selection unreliable.

Remediation

Expand descriptions with specific actions, data types, and side effects.

Data Exposure

MEDIUM6 list operations lack pagination

Multiple list tools support pagination via page_token/page_size parameters (Search Gmail Messages, Search Drive Files, List Drive Items, Get Messages from Chat, List Tasks, Search Contacts, List Spreadsheets). Drive search_drive_files and get messages both expose nextPageToken in responses. No field selection supported; responses return full records. A 2GB download safety limit is applied to URL-based file downloads. Some list tools (List Calendars, List Task Lists, List Script Projects) return all items without pagination.

Remediation

Add limit/offset or cursor-based pagination.

LOWNo field selection on responses

Responses return full records rather than projected fields.

Remediation

Implement field selection to return only relevant fields.

Maintenance & Trust

LOWCommunity-maintained by Taylor Wilsdon

No official vendor backing.

Remediation

Seek vendor verification.

Tools

113 total
NameDescriptionRisk
Search Gmail MessagesSearch Gmail messages using query syntax with pagination supportread
Get Gmail Message ContentRetrieve full content of a specific Gmail message by IDread
Get Gmail Messages Content BatchRetrieve content for multiple Gmail messages in a single batch requestread
Get Gmail Attachment ContentDownload and return the content of a Gmail message attachmentread
Send Gmail MessageSend an email message via Gmailwrite
Draft Gmail MessageCreate a draft email message in Gmail without sendingwrite
Get Gmail Thread ContentRetrieve all messages in a Gmail thread by thread IDread
Get Gmail Threads Content BatchRetrieve content for multiple Gmail threads in a batch requestread
List Gmail LabelsList all Gmail labels in the user's mailboxread
Manage Gmail LabelCreate, update, or delete a Gmail labelwrite
List Gmail FiltersList all Gmail filters for the user's mailboxread
Manage Gmail FilterCreate or delete Gmail filters for automatic message categorizationwrite
Modify Gmail Message LabelsAdd or remove labels from a single Gmail messagewrite
Batch Modify Gmail Message LabelsAdd or remove labels from multiple Gmail messages in a batch operationwrite
Search Drive FilesSearch Google Drive files using Drive search query syntax with pagination supportread
Get Drive File ContentDownload and return the content of a Google Drive file by IDread
Get Drive File Download URLGet a direct download URL for a Google Drive fileread
List Drive ItemsList files and folders in a Google Drive folder with paginationread
Create Drive FolderCreate a new folder in Google Drivewrite
Create Drive FileCreate a new file in Google Drive with specified contentwrite
Import to Google DocImport a file into Google Drive as a Google Docwrite
Get Drive File PermissionsList all permissions on a Google Drive file or folderread
Check Drive File Public AccessCheck whether a Google Drive file has public link sharing enabledread
Update Drive FileUpdate the content or metadata of an existing Google Drive filewrite
Get Drive Shareable LinkGet or create a shareable link for a Google Drive filewrite
Manage Drive AccessAdd, remove, or modify access permissions for a Google Drive file or folderwrite
Copy Drive FileCopy a Google Drive file to a new location with optional renamewrite
Set Drive File PermissionsSet specific access permissions on a Google Drive filewrite
Search DocsSearch Google Docs in Drive by name or contentread
Get Doc ContentRetrieve the full content of a Google Doc by IDread
List Docs in FolderList Google Docs in a specific Drive folderread
Create DocCreate a new Google Doc with optional initial contentwrite
Modify Doc TextModify text content within an existing Google Docwrite
Find and Replace DocPerform find and replace operations within a Google Docwrite
Insert Doc ElementsInsert elements (tables, page breaks, bullet lists) into a Google Docwrite
Insert Doc ImageInsert an image into a Google Doc at a specified locationwrite
Update Doc Headers FootersUpdate or create headers and footers in a Google Docwrite
Batch Update DocApply multiple structured update operations to a Google Doc in a single batchwrite
Inspect Doc StructureAnalyze and return the structural elements of a Google Docread
Debug Docs Runtime InfoReturn runtime debugging information about the Docs tools environmentread
Create Table with DataCreate a table with data in a Google Docwrite
Debug Table StructureReturn structural debugging information about tables in a Google Docread
Export Doc to PDFExport a Google Doc as a PDF fileread
Update Paragraph StyleUpdate the paragraph style (heading level, alignment, spacing) in a Google Docwrite
Get Doc as MarkdownExport a Google Doc converted to Markdown formatread
Manage Doc TabCreate, update, or delete tabs within a Google Docwrite
List SpreadsheetsList Google Sheets spreadsheets in Drive with optional filteringread
Get Spreadsheet InfoRetrieve metadata and sheet list for a Google Sheets spreadsheetread
Read Sheet ValuesRead cell values from a range in a Google Sheets spreadsheetread
Modify Sheet ValuesWrite or update cell values in a Google Sheets spreadsheetwrite
Format Sheet RangeApply formatting to a range of cells in a Google Sheets spreadsheetwrite
Manage Conditional FormattingCreate, update, or delete conditional formatting rules in Google Sheetswrite
Create SpreadsheetCreate a new Google Sheets spreadsheetwrite
Create SheetAdd a new sheet tab to an existing Google Sheets spreadsheetwrite
List Sheet TablesList tables defined within a Google Sheets spreadsheetread
Append Table RowsAppend rows to a table or range in a Google Sheets spreadsheetwrite
Resize Sheet DimensionsResize rows or columns in a Google Sheets spreadsheetwrite
Move Sheet RowsMove rows within a Google Sheets spreadsheetwrite
List CalendarsList Google Calendars accessible to the userread
Get EventsRetrieve calendar events within a time rangeread
Manage EventCreate, update, or delete a Google Calendar eventwrite
Manage Out of OfficeCreate or manage out of office periods in Google Calendarwrite
Manage Focus TimeCreate or manage focus time blocks in Google Calendarwrite
Query FreebusyQuery free/busy availability for one or more Google Calendar usersread
Create CalendarCreate a new Google Calendarwrite
Create PresentationCreate a new Google Slides presentationwrite
Get PresentationRetrieve a Google Slides presentation by IDread
Batch Update PresentationApply multiple update operations to a Google Slides presentation in a batchwrite
Get PageRetrieve a specific slide page from a Google Slides presentationread
Get Page ThumbnailGet a thumbnail image of a specific slide in a Google Slides presentationread
List SpacesList Google Chat spaces accessible to the userread
Get MessagesRetrieve messages from a Google Chat space with paginationread
Send MessageSend a message to a Google Chat space or direct messagewrite
Search MessagesSearch for messages across Google Chat spacesread
Create ReactionAdd an emoji reaction to a Google Chat messagewrite
Download Chat AttachmentDownload a file attachment from Google Chatread
Create FormCreate a new Google Formwrite
Get FormRetrieve a Google Form by ID including all questions and settingsread
Set Publish SettingsUpdate publication settings for a Google Formwrite
Get Form ResponseRetrieve a specific response to a Google Form by response IDread
List Form ResponsesList all responses submitted to a Google Formread
Batch Update FormApply multiple update operations to a Google Form in a batchwrite
List Task ListsList Google Tasks task lists for the userread
Get Task ListRetrieve a specific Google Tasks task list by IDread
Manage Task ListCreate, update, or delete a Google Tasks task listwrite
List TasksList tasks within a Google Tasks task listread
Get TaskRetrieve a specific task from a Google Tasks task listread
Manage TaskCreate, update, or delete a task in Google Taskswrite
List ContactsList Google Contacts for the userread
Get ContactRetrieve a specific Google Contact by resource nameread
Search ContactsSearch Google Contacts by name, email, or other fieldsread
Manage ContactCreate, update, or delete a Google Contactwrite
List Contact GroupsList contact groups (labels) in Google Contactsread
Get Contact GroupRetrieve a specific Google Contacts group by resource nameread
Manage Contacts BatchCreate, update, or delete multiple Google Contacts in a batch operationwrite
Manage Contact GroupCreate, update, or delete a Google Contacts groupwrite
List Script ProjectsList Google Apps Script projectsread
Get Script ProjectRetrieve metadata for a Google Apps Script projectread
Get Script ContentRetrieve the source code content of a Google Apps Script projectread
Create Script ProjectCreate a new Google Apps Script projectwrite
Update Script ContentUpdate the source code of a Google Apps Script projectwrite
Run Script FunctionExecute a function within a deployed Google Apps Script projectadmin
Manage DeploymentCreate, update, or delete a deployment of a Google Apps Script projectwrite
List DeploymentsList deployments for a Google Apps Script projectread
List Script ProcessesList execution processes for a Google Apps Script projectread
Delete Script ProjectDelete a Google Apps Script projectwrite
List VersionsList versions of a Google Apps Script projectread
Create VersionCreate a new version of a Google Apps Script projectwrite
Get VersionRetrieve a specific version of a Google Apps Script projectread
Get Script MetricsRetrieve execution metrics for a Google Apps Script projectread
Generate Trigger CodeGenerate trigger code templates for a Google Apps Script projectread
Search CustomPerform a query using a configured Google Custom Search Engineread
Get Search Engine InfoRetrieve configuration information for a Google Custom Search Engineread

Deploy Google Workspace MCP securely

CompleteFlow adds per-user authentication, permission scoping, and audit logging to any MCP server out of the box.

Deploy on CompleteFlow