Skip to main content
Glama
taylorwilsdon

Google Workspace MCP Server - Control Gmail, Calendar, Docs, Sheets, Slides, Chat, Forms & Drive

Update Drive File

update_drive_file
Destructive

Update a Google Drive file's content and metadata in place—replace, append, or prepend text, rename, move, trash, or change properties while keeping the same file ID and sharing.

Instructions

Updates metadata, properties, and/or content of a Google Drive file.

Providing one of content, file_path, or file_url replaces the file's content in place, preserving the existing file ID, sharing, comments, and links. For native Google Docs/Sheets/Slides the source is uploaded with its source MIME type so the Drive API applies the same format conversion as import_to_google_doc (markdown headings, tables, bold, etc.). For any other file (.md, .txt, .pdf, ...) there is nothing to convert, so the bytes are written back as-is under the file's own MIME type. Metadata and content can be updated in a single call.

mode='append'/'prepend' splice content onto the file's existing text server-side, so only the new text has to be supplied — no need to send the whole file back to rewrite it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoHow to apply the new content — 'replace' (default), 'append', or 'prepend'. Append/prepend require 'content' and a UTF-8 text file such as .md or .txt; a newline is inserted at the seam if neither side has one. For native Google Docs use insert_doc_elements, modify_doc_text, or find_and_replace_doc, which edit in place instead of rewriting the file.replace
nameNoNew name for the file.
contentNoNew text content for text-based formats (markdown, TXT, HTML).
file_idYesThe ID of the file to update. Required.
starredNoWhether to star/unstar the file.
trashedNoWhether to move file to/from trash.
file_urlNoRemote http(s) URL to fetch new content from.
file_pathNoLocal file path for binary formats (DOCX, ODT). Supports file:// URLs.
mime_typeNoNew MIME type (note: changing type may require content upload).
propertiesNoCustom key-value properties for the file.
add_parentsNoComma-separated folder IDs to add as parents.
descriptionNoNew description for the file.
source_formatNoSource format hint for conversion (md, markdown, docx, txt, html, rtf, odt). Auto-detected when omitted, and ignored for non-Google files, which are uploaded without conversion. Provide at most one of content/file_path/file_url.
remove_parentsNoComma-separated folder IDs to remove from parents.
user_google_emailYesThe user's Google email address. Required.
writers_can_shareNoWhether editors can share the file.
copy_requires_writer_permissionNoWhether copying requires writer permission.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false; description adds that replacing content preserves file ID, sharing, comments, and links, and explains server-side splicing for append/prepend. It also discloses MIME conversion behavior for native formats, which is not evident from schema.

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?

The description is about 150 words, front-loaded with the main purpose, then covers content replacement, conversion behavior, and append/prepend. Every sentence contributes a distinct behavioral rule with no filler or repetition.

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 a 17-parameter tool with an output schema, the description covers all significant behavioral corners: in-place replacement, conversion semantics, append/prepend behavior, and explicit alternatives for Google-native editing. Combined with thorough schema descriptions, an agent has enough to invoke it correctly.

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?

With 100% schema description coverage, the baseline is 3. The description adds group-level meaning by explaining that one of content/file_path/file_url replaces content and that metadata/content can be updated together, but individual parameter details are already in the schema.

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

Purpose5/5

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

Description begins with 'Updates metadata, properties, and/or content of a Google Drive file' – a specific verb and resource. It distinguishes from siblings by naming import_to_google_doc and recommending insert_doc_elements/modify_doc_text for native Docs.

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

Usage Guidelines5/5

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

Explicitly advises that append/prepend on native Google Docs should use insert_doc_elements, modify_doc_text, or find_and_replace_doc instead of rewriting. Also describes when content/file_path/file_url apply and how non-Google files are handled, providing clear selection guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/taylorwilsdon/google_workspace_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server