skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
taylorwilsdon/google_workspace_mcp109 installs

managing-google-workspace

Manages Google Workspace operations across 12 services (Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks, Contacts, Chat, Apps Script, Custom Search). Supports MCP tools or the workspace-cli client. Provides tool routing, workflows, and parameter guidance for every tool. Triggers for "check my email", "find a file", "schedule a meeting", "update the spreadsheet", "share a doc", "create a presentation", "add a task", "look up a contact", or any mention of Google Workspace services.

How do I install this agent skill?

npx skills add https://github.com/taylorwilsdon/google_workspace_mcp --skill managing-google-workspace
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    This skill provides a comprehensive interface for managing Google Workspace services. It includes excellent security guidance for users regarding OAuth secret management and specifically warns against supply chain attacks like package name-squatting. The primary security consideration is the inherent surface for indirect prompt injection, as the agent is capable of reading content from emails, documents, and chat messages which could contain malicious instructions designed to trigger the powerful management tools provided.

  • Socketpass

    No alerts

  • Snykwarn

    Risk: MEDIUM · 1 issue

What does this agent skill do?

Google Workspace -- Tool Router

Execution Mode

Detect which mode is available and use it.

MCP (preferred)

If MCP tools from the google-workspace server are available, call them directly. The tool names in the tables below are the base names -- prefix with the server name as needed (e.g. google-workspace:search_gmail_messages).

CLI (no MCP)

If no MCP tools are available, call a running server via workspace-cli:

workspace-cli list
workspace-cli call <tool_name> key=value ...
  • Pass user_google_email=USER_EMAIL only when the tool schema requires it (legacy OAuth 2.0 without USER_GOOGLE_EMAIL set). Omit it for OAuth 2.1 and trusted-gateway servers, which take it from the verified identity.
  • Arguments are key=value pairs; values are parsed as JSON when possible, so pass lists and objects as JSON (e.g. label_ids='["INBOX"]').
  • The server must be reachable over HTTP. The default URL is http://localhost:8000/mcp (a server started with --transport streamable-http); override it with --url before the subcommand (workspace-cli --url <url> call ...) or WORKSPACE_MCP_URL. Plugin users on stdio can set WORKSPACE_MCP_HTTP_PORT to expose a loopback sidecar at http://127.0.0.1:<port>/mcp.
  • If workspace-cli is not on PATH, run uv run workspace-cli from a checkout of this repo. Installing it permanently (uv tool install . in that checkout) is a manual setup step for the user. Never use uvx workspace-cli: an unrelated, abandoned PyPI package squats that name.

Before calling a tool, read the relevant reference file for exact parameter names and types. Only use parameters documented there -- do not invent parameters.

First-Time Setup

If a tool call fails with a credential error, walk the user through this setup.

1. Create OAuth credentials

Direct the user to Google Cloud Console:

  • Create OAuth 2.0 Client ID (Desktop application type)
  • Enable the Google APIs they need (Gmail, Drive, Calendar, etc.)
  • Copy the Client ID and Client Secret

2. Store credentials

Direct the user to edit ~/.claude/settings.local.json themselves (this file is gitignored and never shared). Do not ask the user to paste secrets into the conversation. Tell them to add the following to the env block:

{
  "env": {
    "GOOGLE_OAUTH_CLIENT_ID": "their-client-id",
    "GOOGLE_OAUTH_CLIENT_SECRET": "their-secret"
  }
}

If settings.local.json already exists, they should merge into the existing env object, not replace it. These env vars are inherited by all MCP servers and CLI processes that Claude Code spawns.

3. Authenticate

  • MCP mode: call start_google_auth to open the browser OAuth flow
  • CLI mode: run any tool -- the first invocation opens the OAuth flow
  • Credentials are cached in ~/.google_workspace_mcp/credentials (or as configured by WORKSPACE_MCP_CREDENTIALS_DIR) for future sessions

For server options, transport, auth modes, tool filtering, and deployment: references/server-options.md

Universal Patterns

  • Consolidated "manage" tools use an action parameter for create/update/delete.

Tool Reference

Gmail

TaskTool
Search/find emailssearch_gmail_messages
Read one emailget_gmail_message_content
Read multiple emailsget_gmail_messages_content_batch
Read a threadget_gmail_thread_content
Read multiple threadsget_gmail_threads_content_batch
Send email (new or reply)send_gmail_message
Create draftdraft_gmail_message
Download attachmentget_gmail_attachment_content
Add/remove labels (one)modify_gmail_message_labels
Add/remove labels (batch)batch_modify_gmail_message_labels
Manage labelsmanage_gmail_label
List labelslist_gmail_labels
Manage filtersmanage_gmail_filter
List filterslist_gmail_filters

For parameters: references/gmail.md

Google Drive

TaskTool
Search files/folderssearch_drive_files
List items in folderlist_drive_items
Read file contentget_drive_file_content
Download fileget_drive_file_download_url
Create filecreate_drive_file
Create foldercreate_drive_folder
Copy filecopy_drive_file
Update file metadataupdate_drive_file
Share / set permissionsset_drive_file_permissions
Manage access (add/remove)manage_drive_access
Check permissionsget_drive_file_permissions
Get shareable linkget_drive_shareable_link
Check public accesscheck_drive_file_public_access
Import file to Google Docimport_to_google_doc
Import spreadsheet (XLSX, CSV, ...) to Google Sheetsimport_to_google_sheets
Import presentation (PPTX, ...) to Google Slidesimport_to_google_slides

For parameters: references/drive.md

Google Calendar

TaskTool
List calendarslist_calendars
Create secondary calendarcreate_calendar
Get eventsget_events
Create/update/delete eventmanage_event
Out of office (auto-decline)manage_out_of_office
Focus time (auto-decline, DND)manage_focus_time
Check availabilityquery_freebusy

For parameters: references/calendar.md

Google Docs

TaskTool
Read doc as Markdownget_doc_as_markdown
Read doc content (raw)get_doc_content
Read plain text with link/chip targets and document segmentsget_doc_content(preserve_context=True)
Create new doccreate_doc
Modify text / apply styles (by index or by heading)modify_doc_text
Insert elements (tables, lists, breaks)insert_doc_elements
Insert imageinsert_doc_image
Create table with datacreate_table_with_data
Update paragraph stylesupdate_paragraph_style
Find and replacefind_and_replace_doc
Inspect structureinspect_doc_structure
Batch update (multiple ops)batch_update_doc
Headers/footersupdate_doc_headers_footers
Manage tabsmanage_doc_tab
Export to PDFexport_doc_to_pdf
List docs in folderlist_docs_in_folder
Search docssearch_docs
Commentsmanage_document_comment / list_document_comments
Debug table structuredebug_table_structure

For parameters: references/docs.md

Google Sheets

TaskTool
Read cell valuesread_sheet_values
Write/append/clear valuesmodify_sheet_values
Insert smart chipsmodify_sheet_values (chips)
Format cellsformat_sheet_range
Conditional formattingmanage_conditional_formatting
Get spreadsheet infoget_spreadsheet_info
Create spreadsheetcreate_spreadsheet
Create sheet (tab)create_sheet
Rename/delete/hide/reorder/style tabmanage_sheet_tab
Resize/freeze/hide/insert/delete rows and columnsresize_sheet_dimensions
Move rows between sheetsmove_sheet_rows
List structured tableslist_sheet_tables
Append rows to structured tableappend_table_rows
Manage named rangesmanage_named_range
List spreadsheetslist_spreadsheets
Commentsmanage_spreadsheet_comment / list_spreadsheet_comments

For parameters: references/sheets.md

Google Slides

TaskTool
Get presentationget_presentation
Get specific slideget_page
Look at a slide (render to image)render_page_to_image
Create presentationcreate_presentation
Batch updatebatch_update_presentation
Speaker notesget_presentation (include_speaker_notes) + batch_update_presentation
Commentsmanage_presentation_comment / list_presentation_comments

For parameters: references/slides.md

Google Forms

TaskTool
Get formget_form
Create formcreate_form
Batch update formbatch_update_form
List responseslist_form_responses
Get one responseget_form_response
Publish settingsset_publish_settings

For parameters: references/forms.md

Google Tasks

TaskTool
List task listslist_task_lists
Get task listget_task_list
Manage task list (CRUD)manage_task_list
List taskslist_tasks
Get taskget_task
Manage task (CRUD/move)manage_task

For parameters: references/tasks.md

Google Contacts

TaskTool
Search contactssearch_contacts
Get contactget_contact
Manage contact (CRUD)manage_contact
Batch manage contactsmanage_contacts_batch
List contact groupslist_contact_groups
Get contact groupget_contact_group
Manage contact groupmanage_contact_group
List all contactslist_contacts

For parameters: references/contacts.md

Google Chat

TaskTool
List spaceslist_spaces
Get messagesget_messages
Search messagessearch_messages
Send messagesend_message
Edit a message already sentsend_message (message_name)
React to messagecreate_reaction
Download attachmentdownload_chat_attachment

For parameters: references/chat.md

Google Apps Script

TaskTool
Projects/files (list/get)get_script_project (action)
Projects (create/delete)manage_script_project (action)
File content (update)manage_script_content (action="update")
Run functionrun_script_function
Generate trigger codegenerate_trigger_code
Deployments (list)list_script_deployments
Deployments (create/update/delete)manage_deployment (action)
Versions (list/get)get_script_version (action)
Versions (create)manage_script_version (action="create")
Execution metrics / process historyget_script_activity (action="metrics" / "processes")
Current user's triggers (list/delete)manage_script_trigger (action)

For parameters: references/apps-script.md

Google Custom Search

TaskTool
Web searchsearch_custom
Get search engine infoget_search_engine_info

For parameters: references/search.md

Auth

TaskTool
Start OAuth flowstart_google_auth

Legacy OAuth 2.0 only -- disabled when OAuth 2.1 is enabled. In most cases, just call the tool you need and auth happens automatically. For parameters: references/server-options.md

Common Workflows

Reply to an email

  1. search_gmail_messages -- find the email
  2. get_gmail_message_content -- read it (get message_id and thread_id)
  3. send_gmail_message -- reply using thread_id; omit reply headers to target the latest non-draft, non-trash message with an RFC Message-ID

Find and share a file

  1. search_drive_files -- find the file
  2. manage_drive_access -- share it
  3. get_drive_shareable_link -- get the link

Read and update a spreadsheet

  1. get_spreadsheet_info -- get sheet names
  2. read_sheet_values -- read current data
  3. modify_sheet_values -- write updated data
  4. read_sheet_values -- verify the update

Create a formatted document

  1. create_doc -- create the doc
  2. modify_doc_text -- add text with formatting
  3. insert_doc_elements -- add tables, lists, page breaks
  4. update_paragraph_style -- apply heading styles
  5. get_doc_as_markdown -- verify the result

Process email attachments

  1. search_gmail_messages -- find the email
  2. get_gmail_message_content -- get attachment metadata
  3. get_gmail_attachment_content -- download the attachment

Edit a Google Doc

  1. get_doc_as_markdown -- read current content
  2. inspect_doc_structure -- find insertion points and indices
  3. modify_doc_text / insert_doc_elements -- make changes
  4. get_doc_as_markdown -- verify the result

Tips

  • Check parameters: The reference files document every parameter of every tool. In CLI mode, workspace-cli list shows which tools the running server exposes.

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/taylorwilsdon/google_workspace_mcp/managing-google-workspace">View managing-google-workspace on skillZs</a>