Skip to main content
Glama

update_draft

Update only the supplied fields of a Gmail draft while keeping omitted fields; attachments are preserved unless replaced or removed. It never sends mail—review and send from Gmail.

Instructions

Change only the supplied fields of one Gmail draft; omitted fields are kept and an empty list clears a recipient field. Existing attachments are kept; a new file with the same name replaces one. The draft is rewritten as plain text, so formatting from Gmail (bold, links) is lost and inline images become regular attachments. The draft gets a new message_id. The MCP never sends mail; the user reviews and sends the draft from Gmail.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ccNoEmail addresses, such as Alice <alice@example.com> or bob@example.com
toNoEmail addresses, such as Alice <alice@example.com> or bob@example.com
bccNoEmail addresses, such as Alice <alice@example.com> or bob@example.com
bodyNoNew plain-text body
subjectNo
draft_idYesDraft ID from list_drafts or create_draft
attachmentsNoAbsolute local paths of files to attach (~ is expanded); only files the user asked to attach; added
remove_attachmentsNoFilenames of existing attachments to drop

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full burden and does so: it discloses data loss (Gmail formatting lost, inline images become attachments), attachment replacement rules, and that the draft gets a new message_id. It also tells the agent no mail is actually sent, which prevents a serious misinterpretation of 'update'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Patch behavior is front-loaded in the first clause, followed by attachment rules, then the destructive formatting caveat, then the no-send guarantee. Five dense sentences, none redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter mutation tool with no annotations and no output schema, the description covers the side effects an agent must weigh before calling: field preservation, clearing semantics, attachment replacement, formatting loss, and new draft identity. Nothing required to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 88%, so baseline is 3, but the description adds semantics the schema does not: an empty recipient list clears the field, and attachments follow replace-by-filename rather than append. The body being rewritten as plain text clarifies the body parameter's effect.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Change only the supplied fields of one Gmail draft', with patch semantics made explicit. It implicitly distinguishes from create_draft via 'omitted fields are kept', but never names the sibling, so an agent must infer the create-vs-update routing rather than read it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear usage context: partial updates, empty list to clear a recipient field, existing attachments retained, same-name file replaces. The 'MCP never sends mail; the user reviews and sends from Gmail' line sets the workflow boundary. No explicit exclusion naming create_draft as the alternative for new drafts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.