github taylorwilsdon/google_workspace_mcp v2.2.1

4 hours ago

Mostly a Gmail reading release: message bodies now come back intact when they use a non-UTF-8 charset or are stored behind an attachment, and reads can opt into link lists and drop the header summary. Alongside that, Calendar can edit "this and following" occurrences, comments on Docs/Sheets/Slides can be edited and deleted, Docs gains person chips and dropdown rendering, and the default runtime moves to Python 3.13.

Heads up: manage_document_comment, manage_spreadsheet_comment and manage_presentation_comment can now delete comments, so they are annotated destructiveHint=True. Clients that gate destructive tools may start asking for confirmation.

New

  • gmail: get_gmail_message_content takes include_headers=False to skip the Subject/From/To/Date summary, and full exports are then named by message ID instead of subject (#1296) - feat(gmail): add include_headers to get_gmail_message_content by @taylorwilsdon in #1296
  • gmail: opt-in include_links on message, thread and batch reads appends a LINKS section with the URLs from the HTML body that text mode would otherwise drop (#1297) - feat(gmail): opt-in include_links on message and thread reads by @taylorwilsdon in #1297
  • gcalendar: manage_event gains this_and_following for recurring instances, splitting the series at that occurrence and restoring the original if the new series fails to insert (#1301) - feat(calendar): add this_and_following to manage_event for recurring instances by @taylorwilsdon in #1301
  • comments: the Docs, Sheets and Slides comment tools add update and delete actions for top-level comments you wrote (#1302) - feat(comments): add update and delete actions to the comment tools by @taylorwilsdon in #1302
  • gdocs: batch_update_doc adds an insert_person operation, so person chips can be written by email instead of only read back (#1304) - feat(docs): add insert_person operation to batch_update_doc by @taylorwilsdon in #1304

Fixes

  • gmail: bodies are decoded with the part's declared charset, so windows-1252, iso-8859-1 and shift_jis mail stops losing characters (#1299) - fix(gmail): decode message bodies with the part's declared charset by @taylorwilsdon in #1299
  • gmail: text and HTML bodies Gmail stores behind an attachmentId are fetched instead of coming back empty, across reads, exports, forwards and reply context (#1305) - fix(gmail): read text and HTML bodies stored behind an attachmentId by @taylorwilsdon in #1305
  • gmail: the HTML signature separator matches how the body ends, so signatures stop sitting under a stack of extra blank lines (#1298) - fix(gmail): size the HTML signature separator to how the body ends by @taylorwilsdon in #1298
  • gdocs: docs built from markdown use paragraph spacing between blocks instead of inserting empty paragraphs after each one (#1300) - fix(docs): space markdown blocks with paragraph spacing instead of empty paragraphs by @taylorwilsdon in #1300
  • gdocs: dropdown chips render their selected value in markdown and plain text instead of vanishing or showing an "unsupported element" placeholder (#1303) - fix(docs): render dropdown chips with their selected value by @taylorwilsdon in #1303

Runtime

  • core: Python 3.13 is now the default for .python-version, the Docker image and the registry workflow, CI tests on 3.11 and 3.13, and external OAuth token validation releases its concurrency slot inline instead of relying on a done callback running first (#1306) - Python 3.13 by @taylorwilsdon in #1306

Full Changelog: v2.2.0...v2.2.1

Don't miss a new google_workspace_mcp release

NewReleases is sending notifications on new releases.