Skip to Content
ResourcesIntegrationsProductivity & DocsGoogle Docs

Google Docs

Service domainDOCUMENTS
Google Docs icon
Arcade Optimized

Arcade.dev LLM tools for Google Docs

Author:Arcade
Version:7.0.0
Auth:User authorization via the Google auth provider
13tools
9require secrets

Google Docs Toolkit

The Google Docs toolkit lets LLM agents create, read, edit, search, and annotate Google Docs documents through the Google Docs and Drive APIs via Arcade.

Capabilities

  • Document creation: Create blank documents or populate them from plain text or Markdown (with automatic heading, bold, italic, and list formatting).
  • Document reading & metadata: Retrieve full document content in DocMD format (block IDs, character indices, text styles, tab structure) or fetch metadata-only (title, ID, URL, character counts, tab hierarchy).
  • Structured editing: Apply batchUpdate requests using DocMD indices for precise in-document edits; append text to document ends.
  • Search & discovery: Search Drive for documents by query, with options to return metadata only or include full body content; trash is automatically excluded.
  • Comments: Add new comments to a document or list all existing comments.
  • User & access management: Retrieve authenticated user profile and permissions; generate a Google Drive inline file picker URL to grant per-file access when a document is not found or access is denied.

OAuth

This toolkit uses OAuth 2.0 with Google as the provider. See the Arcade Google auth provider docs for setup details.

Secrets

  • ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL — A flag/URL secret that activates the GenerateGoogleFilePickerUrl tool, which opens Google's first-party Drive file picker so users can grant the app access to specific files without a full re-authentication flow. To obtain or configure this value, you set it in your Arcade environment to enable the picker endpoint. Refer to the Arcade secrets documentation for how to define secrets, and manage them at https://api.arcade.dev/dashboard/auth/secrets.

Available tools(13)

13 of 13 tools
Operations
Behavior
Tool nameDescriptionSecrets
Comment on a specific document by its ID.
1
Create a blank Google Docs document with the specified title.
Create a Google Docs document with the specified title and text content. When input_format is MARKDOWN, the text_content is parsed as Markdown and the resulting document is formatted with headings, bold, italic, bullet lists, and numbered lists.
Read or edit a Google Docs document using structured batchUpdate requests. When called without requests, returns the document content in DocMD format (block IDs, character indices, and text styles). When called with requests, applies the edits and returns the updated DocMD. Use the DocMD indices from the response to construct requests for subsequent calls.
1
Generate a URL where the user can grant this app access to specific Drive files. Opens Google's first-party Drive picker. The user selects which files to share with this application — it is not a sign-in or credential prompt. Use this when a prior tool reported that a file was not found or access was denied, and the user expects the file to exist. After the user completes the picker flow, retry the prior tool.
Get the latest version of the specified Google Docs document as DocMD. The DocMD output will include tags that can be used to annotate the document with location information, the type of block, block IDs, and other metadata. If the document has tabs, all tabs are included in sequential order unless a specific tab_id is provided.
1
DEPRECATED DO NOT USE THIS TOOL Get the latest version of the specified Google Docs document.
1
Get metadata for a Google Docs document including hierarchical tab structure. Returns document title, ID, URL, total character count, and nested tab information with character counts for each tab.
1
Updates an existing Google Docs document using the batchUpdate API endpoint.
1
List all comments on the specified Google Docs document.
1
Searches for documents in the user's Google Drive and returns documents with their main body content and tab metadata. Excludes documents that are in the trash. Returns main body content only with metadata about tabs. Use get_document_as_docmd() to retrieve full tab content for specific documents. Use search_documents() for metadata-only searches.
1
Searches for documents in the user's Google Drive. Excludes documents in trash. Returns metadata only. Use get_document_metadata or get_document_as_docmd for content.
1
Get comprehensive user profile and Google Docs environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Docs access permissions, and other important profile details from Google services.

Selected tools

No tools selected.

Click "Show all tools" to add tools.

Requirements

Select tools to see requirements

#

GoogleDocs.CommentOnDocument

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Documents
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Comment on a specific document by its ID.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to comment on
comment_textstringRequiredThe comment to add to the document

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonThe comment's ID, documentId, and documentUrl in a dictionary
#

GoogleDocs.CreateBlankDocument

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Documents
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Create a blank Google Docs document with the specified title.

Parameters

ParameterTypeReq.Description
titlestringRequiredThe title of the blank document to create

Requirements

No secrets required

Output

Type:jsonThe created document's title, documentId, and documentUrl in a dictionary
#

GoogleDocs.CreateDocumentFromText

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Documents
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Create a Google Docs document with the specified title and text content. When input_format is MARKDOWN, the text_content is parsed as Markdown and the resulting document is formatted with headings, bold, italic, bullet lists, and numbered lists.

Parameters

ParameterTypeReq.Description
titlestringRequiredThe title of the document to create
text_contentstringRequiredThe text content to insert into the document. When input_format is MARKDOWN, supports Markdown formatting: headings (# through ######), bold (**text**), italic (*text*), bullet lists (- item), and numbered lists (1. item).
input_formatstringOptionalThe format of text_content. MARKDOWN applies rich formatting (headings, bold, italic, bullet lists, numbered lists). PLAIN inserts text as-is with no formatting. Defaults to MARKDOWN.
markdownplain

Requirements

No secrets required

Output

Type:jsonThe created document's title, documentId, and documentUrl in a dictionary
#

GoogleDocs.EditDocument

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
ReadUpdate
Service domains
Documents
MCP behavior
No

Reads data without modifying any state in the target system.

Yes

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Read or edit a Google Docs document using structured batchUpdate requests. When called without requests, returns the document content in DocMD format (block IDs, character indices, and text styles). When called with requests, applies the edits and returns the updated DocMD. Use the DocMD indices from the response to construct requests for subsequent calls.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the Google Docs document to edit.
requestsarray<json>OptionalA list of Google Docs batchUpdate request objects. Each object must have exactly one key (the request type) whose value is the request body. Omit to read the document without applying any edits. IMPORTANT: When making multiple index-based edits, order requests from highest index to lowest so earlier edits do not shift the indices of later ones. Alternatively, use replaceAllText which does not depend on indices. The response always includes the document in DocMD format, which shows each block with its character index range, e.g. [P3 74-104 PARAGRAPH styles=bold:74-86] means paragraph P3 spans indices 74 to 104 with bold from 74 to 86. Use these indices for ranges in subsequent calls. ## Common request examples replaceAllText — find and replace all occurrences: {"replaceAllText": {"containsText": {"text": "old", "matchCase": true}, "replaceText": "new"}} insertText — insert at an index (inherits adjacent styling): {"insertText": {"location": {"index": 50}, "text": "hello"}} deleteContentRange — delete between two indices: {"deleteContentRange": {"range": {"startIndex": 10, "endIndex": 25}}} updateTextStyle — change formatting with a comma-separated "fields" mask: {"updateTextStyle": {"range": {"startIndex": 10, "endIndex": 20}, "textStyle": {"bold": true}, "fields": "bold"}} updateParagraphStyle — change paragraph alignment, spacing, etc.: {"updateParagraphStyle": {"range": {"startIndex": 10, "endIndex": 50}, "paragraphStyle": {"alignment": "CENTER"}, "fields": "alignment"}} createParagraphBullets — apply bullets (presets: BULLET_DISC_CIRCLE_SQUARE, NUMBERED_DECIMAL_ALPHA_ROMAN, BULLET_CHECKBOX, etc.): {"createParagraphBullets": {"range": {"startIndex": 100, "endIndex": 200}, "bulletPreset": "BULLET_DISC_CIRCLE_SQUARE"}} insertTable: {"insertTable": {"location": {"index": 50}, "rows": 3, "columns": 4}} Table operations use tableCellLocation with tableStartLocation (the TABLE start index from DocMD), rowIndex, and columnIndex: {"insertTableRow": {"tableCellLocation": {"tableStartLocation": {"index": 1749}, "rowIndex": 1, "columnIndex": 0}, "insertBelow": true}} createNamedRange — anchor a named range to a span of text: {"createNamedRange": {"name": "my-range", "range": {"startIndex": 10, "endIndex": 50}}} deleteNamedRange — delete by name or ID: {"deleteNamedRange": {"name": "my-range"}} replaceNamedRangeContent — replace the text inside a named range: {"replaceNamedRangeContent": {"namedRangeName": "my-range", "text": "new content"}} insertInlineImage — insert an image at an index: {"insertInlineImage": {"uri": "https://example.com/img.png", "location": {"index": 50}}} replaceImage — swap an existing image for a new one: {"replaceImage": {"imageObjectId": "kix.abc123", "uri": "https://example.com/new.png", "imageReplaceMethod": "CENTER_CROP"}} deletePositionedObject — remove a floating image or drawing: {"deletePositionedObject": {"objectId": "kix.abc123"}} createHeader — add a header to the document: {"createHeader": {"type": "DEFAULT"}} createFooter — add a footer to the document: {"createFooter": {"type": "DEFAULT"}} deleteHeader / deleteFooter — remove by ID: {"deleteHeader": {"headerId": "kix.abc123"}} {"deleteFooter": {"footerId": "kix.abc123"}} createFootnote — insert a footnote reference: {"createFootnote": {"location": {"index": 50}}} addDocumentTab — add a new tab: {"addDocumentTab": {"tabProperties": {"title": "Notes"}}} deleteTab — remove a tab: {"deleteTab": {"tabId": "t.123"}} updateDocumentTabProperties — rename or reorder a tab: {"updateDocumentTabProperties": {"tabProperties": {"tabId": "t.123", "title": "Renamed"}, "fields": "title"}} insertPerson — insert a person smart chip: {"insertPerson": {"personProperties": {"email": "alice@example.com"}, "location": {"index": 50}}} insertDate — insert a date smart chip: {"insertDate": {"dateElementProperties": {"timestamp": "2025-08-23T00:00:00Z"}, "location": {"index": 50}}} Style "fields" mask: comma-separated list of properties to update (e.g. "bold,italic"). Properties listed in fields but absent from the style object are cleared/reset. Use "*" to update all fields. ## Full JSON Schema {"type":"array","items":{"type":"object","properties":{"replaceAllText":{"type":"object","properties":{"containsText":{"type":"object","properties":{"text":{"type":"string"},"matchCase":{"type":"boolean"},"searchByRegex":{"type":"boolean"}}},"replaceText":{"type":"string"}}},"insertText":{"type":"object","properties":{"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"text":{"type":"string"}}},"deleteContentRange":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}}},"required":["range"]},"updateTextStyle":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"textStyle":{"type":"object","properties":{"bold":{"type":"boolean"},"italic":{"type":"boolean"},"underline":{"type":"boolean"},"strikethrough":{"type":"boolean"},"smallCaps":{"type":"boolean"},"fontSize":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"weightedFontFamily":{"type":"object","properties":{"fontFamily":{"type":"string"},"weight":{"type":"integer"}}},"foregroundColor":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"backgroundColor":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"link":{"type":"object","properties":{"url":{"type":"string"},"bookmarkId":{"type":"string"},"headingId":{"type":"string"},"tabId":{"type":"string"}}},"baselineOffset":{"type":"string"}}},"fields":{"type":"string"}},"required":["fields","range","textStyle"]},"updateParagraphStyle":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"paragraphStyle":{"type":"object","properties":{"alignment":{"type":"string"},"namedStyleType":{"type":"string"},"lineSpacing":{"type":"number"},"direction":{"type":"string"},"spacingMode":{"type":"string"},"spaceAbove":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"spaceBelow":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"indentFirstLine":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"indentStart":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"indentEnd":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"borderTop":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"padding":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderBottom":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"padding":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderLeft":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"padding":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderRight":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"padding":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderBetween":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"padding":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"shading":{"type":"object","properties":{"backgroundColor":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]}}},"keepLinesTogether":{"type":"boolean"},"keepWithNext":{"type":"boolean"},"avoidWidowAndOrphan":{"type":"boolean"},"pageBreakBefore":{"type":"boolean"},"tabStops":{"type":"array","items":{"type":"object","properties":{"offset":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"alignment":{"type":"string"}}}}}},"fields":{"type":"string"}},"required":["fields","paragraphStyle","range"]},"createParagraphBullets":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"bulletPreset":{"type":"string"}},"required":["bulletPreset","range"]},"deleteParagraphBullets":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}}},"required":["range"]},"insertTable":{"type":"object","properties":{"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rows":{"type":"integer"},"columns":{"type":"integer"}}},"insertTableRow":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]},"insertBelow":{"type":"boolean"}},"required":["insertBelow","tableCellLocation"]},"insertTableColumn":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]},"insertRight":{"type":"boolean"}},"required":["insertRight","tableCellLocation"]},"deleteTableRow":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]}},"required":["tableCellLocation"]},"deleteTableColumn":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]}},"required":["tableCellLocation"]},"updateTableCellStyle":{"type":"object","properties":{"tableRange":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]},"rowSpan":{"type":"integer"},"columnSpan":{"type":"integer"}},"required":["columnSpan","rowSpan","tableCellLocation"]},"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"tableCellStyle":{"type":"object","properties":{"backgroundColor":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"borderTop":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderBottom":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderLeft":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"borderRight":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"dashStyle":{"type":"string"}}},"paddingTop":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"paddingBottom":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"paddingLeft":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"paddingRight":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"contentAlignment":{"type":"string"}}},"fields":{"type":"string"}}},"updateTableColumnProperties":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"columnIndices":{"type":"array","items":{"type":"integer"}},"tableColumnProperties":{"type":"object","properties":{"widthType":{"type":"string"},"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]}}},"fields":{"type":"string"}}},"updateTableRowStyle":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndices":{"type":"array","items":{"type":"integer"}},"tableRowStyle":{"type":"object","properties":{"minRowHeight":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"tableHeader":{"type":"boolean"},"preventOverflow":{"type":"boolean"}}},"fields":{"type":"string"}}},"mergeTableCells":{"type":"object","properties":{"tableRange":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]},"rowSpan":{"type":"integer"},"columnSpan":{"type":"integer"}},"required":["columnSpan","rowSpan","tableCellLocation"]}},"required":["tableRange"]},"unmergeTableCells":{"type":"object","properties":{"tableRange":{"type":"object","properties":{"tableCellLocation":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"rowIndex":{"type":"integer"},"columnIndex":{"type":"integer"}},"required":["columnIndex","rowIndex","tableStartLocation"]},"rowSpan":{"type":"integer"},"columnSpan":{"type":"integer"}},"required":["columnSpan","rowSpan","tableCellLocation"]}},"required":["tableRange"]},"pinTableHeaderRows":{"type":"object","properties":{"tableStartLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"pinnedHeaderRowsCount":{"type":"integer"}},"required":["pinnedHeaderRowsCount","tableStartLocation"]},"updateDocumentStyle":{"type":"object","properties":{"documentStyle":{"type":"object","properties":{"marginTop":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginBottom":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginLeft":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginRight":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"pageSize":{"type":"object","properties":{"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"height":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]}}},"background":{"type":"object","properties":{"color":{"type":"object","properties":{"color":{"type":"object","properties":{"rgbColor":{"type":"object","properties":{"red":{"type":"number"},"green":{"type":"number"},"blue":{"type":"number"}}}},"required":["rgbColor"]}},"required":["color"]}}},"defaultHeaderId":{"type":"string"},"defaultFooterId":{"type":"string"},"evenPageHeaderId":{"type":"string"},"evenPageFooterId":{"type":"string"},"firstPageHeaderId":{"type":"string"},"firstPageFooterId":{"type":"string"},"useFirstPageHeaderFooter":{"type":"boolean"},"useEvenPageHeaderFooter":{"type":"boolean"},"pageNumberStart":{"type":"integer"},"useCustomHeaderFooterMargins":{"type":"boolean"},"marginHeader":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginFooter":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"flipPageOrientation":{"type":"boolean"}}},"fields":{"type":"string"},"tabId":{"type":"string"}}},"updateSectionStyle":{"type":"object","properties":{"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"sectionStyle":{"type":"object","properties":{"columnProperties":{"type":"array","items":{"type":"object","properties":{"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"paddingEnd":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]}}}},"columnSeparatorStyle":{"type":"string"},"contentDirection":{"type":"string"},"marginTop":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginBottom":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginLeft":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginRight":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginHeader":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"marginFooter":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"defaultHeaderId":{"type":"string"},"defaultFooterId":{"type":"string"},"evenPageHeaderId":{"type":"string"},"evenPageFooterId":{"type":"string"},"firstPageHeaderId":{"type":"string"},"firstPageFooterId":{"type":"string"},"useFirstPageHeaderFooter":{"type":"boolean"},"flipPageOrientation":{"type":"boolean"},"pageNumberStart":{"type":"integer"}}},"fields":{"type":"string"}},"required":["fields","range","sectionStyle"]},"insertSectionBreak":{"type":"object","properties":{"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"sectionType":{"type":"string"}}},"insertPageBreak":{"type":"object","properties":{"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"createNamedRange":{"type":"object","properties":{"name":{"type":"string"},"range":{"type":"object","properties":{"startIndex":{"type":"integer"},"endIndex":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}}},"required":["name","range"]},"deleteNamedRange":{"type":"object","properties":{"tabsCriteria":{"type":"object","properties":{"tabIds":{"type":"array","items":{"type":"string"}}}},"namedRangeId":{"type":"string"},"name":{"type":"string"}}},"replaceNamedRangeContent":{"type":"object","properties":{"tabsCriteria":{"type":"object","properties":{"tabIds":{"type":"array","items":{"type":"string"}}}},"namedRangeId":{"type":"string"},"namedRangeName":{"type":"string"},"text":{"type":"string"}}},"insertInlineImage":{"type":"object","properties":{"uri":{"type":"string"},"objectSize":{"type":"object","properties":{"width":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]},"height":{"type":"object","properties":{"magnitude":{"type":"number"},"unit":{"type":"string"}},"required":["magnitude","unit"]}}},"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"replaceImage":{"type":"object","properties":{"imageObjectId":{"type":"string"},"uri":{"type":"string"},"imageReplaceMethod":{"type":"string"},"tabId":{"type":"string"}}},"deletePositionedObject":{"type":"object","properties":{"objectId":{"type":"string"},"tabId":{"type":"string"}}},"createHeader":{"type":"object","properties":{"type":{"type":"string"},"sectionBreakLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"createFooter":{"type":"object","properties":{"type":{"type":"string"},"sectionBreakLocation":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"deleteHeader":{"type":"object","properties":{"headerId":{"type":"string"},"tabId":{"type":"string"}}},"deleteFooter":{"type":"object","properties":{"footerId":{"type":"string"},"tabId":{"type":"string"}}},"createFootnote":{"type":"object","properties":{"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"addDocumentTab":{"type":"object","properties":{"tabProperties":{"type":"object","properties":{"title":{"type":"string"},"parentTabId":{"type":"string"},"index":{"type":"integer"},"iconEmoji":{"type":"string"}}}}},"deleteTab":{"type":"object","properties":{"tabId":{"type":"string"}},"required":["tabId"]},"updateDocumentTabProperties":{"type":"object","properties":{"tabProperties":{"type":"object","properties":{"tabId":{"type":"string"},"title":{"type":"string"},"parentTabId":{"type":"string"},"index":{"type":"integer"},"iconEmoji":{"type":"string"}}},"fields":{"type":"string"}}},"insertPerson":{"type":"object","properties":{"personProperties":{"type":"object","properties":{"email":{"type":"string"}}},"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}},"insertDate":{"type":"object","properties":{"dateElementProperties":{"type":"object","properties":{"timestamp":{"type":"string"},"timeZoneId":{"type":"string"},"locale":{"type":"string"},"dateFormat":{"type":"string"},"timeFormat":{"type":"string"}}},"location":{"type":"object","properties":{"index":{"type":"integer"},"segmentId":{"type":"string"},"tabId":{"type":"string"}}},"endOfSegmentLocation":{"type":"object","properties":{"segmentId":{"type":"string"},"tabId":{"type":"string"}}}}}}}}

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonThe result including document ID, URL, number of applied edits, and the document content in DocMD format.
#

GoogleDocs.GenerateGoogleFilePickerUrl

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Generate a URL where the user can grant this app access to specific Drive files. Opens Google's first-party Drive picker. The user selects which files to share with this application — it is not a sign-in or credential prompt. Use this when a prior tool reported that a file was not found or access was denied, and the user expects the file to exist. After the user completes the picker flow, retry the prior tool.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:jsonGoogle File Picker URL for user file selection and permission granting
#

GoogleDocs.GetDocumentAsDocmd

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Get the latest version of the specified Google Docs document as DocMD. The DocMD output will include tags that can be used to annotate the document with location information, the type of block, block IDs, and other metadata. If the document has tabs, all tabs are included in sequential order unless a specific tab_id is provided.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to retrieve.
tab_idstringOptionalThe ID of a specific tab to retrieve. If provided, returns only content from that tab. If omitted, returns all tabs in sequential depth-first order.

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:stringThe document contents as DocMD
#

GoogleDocs.GetDocumentById

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

DEPRECATED DO NOT USE THIS TOOL Get the latest version of the specified Google Docs document.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to retrieve.

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonThe document contents as a dictionary
#

GoogleDocs.GetDocumentMetadata

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Get metadata for a Google Docs document including hierarchical tab structure. Returns document title, ID, URL, total character count, and nested tab information with character counts for each tab.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to get metadata for

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonDocument metadata including hierarchical tab structure
#

GoogleDocs.InsertTextAtEndOfDocument

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Update
Service domains
Documents
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Updates an existing Google Docs document using the batchUpdate API endpoint.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to update.
text_contentstringRequiredThe text content to insert into the document

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonThe response from the batchUpdate API as a dict.
#

GoogleDocs.ListDocumentComments

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List all comments on the specified Google Docs document.

Parameters

ParameterTypeReq.Description
document_idstringRequiredThe ID of the document to list comments for
include_deletedbooleanOptionalWhether to include deleted comments in the results. Defaults to False.

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonA dictionary containing the comments
#

GoogleDocs.SearchAndRetrieveDocuments

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Searches for documents in the user's Google Drive and returns documents with their main body content and tab metadata. Excludes documents that are in the trash. Returns main body content only with metadata about tabs. Use get_document_as_docmd() to retrieve full tab content for specific documents. Use search_documents() for metadata-only searches.

Parameters

ParameterTypeReq.Description
return_formatstringOptionalThe format of the document to return. Defaults to Markdown.
docmdmarkdownhtmlgoogle_api_json
document_containsarray<string>OptionalKeywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.
document_not_containsarray<string>OptionalKeywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.
search_only_in_shared_drive_idstringOptionalThe ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.
include_shared_drivesbooleanOptionalWhether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').
include_organization_domain_documentsbooleanOptionalWhether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.
order_byarray<string>OptionalSort order. Defaults to listing the most recently modified documents first
createdTimecreatedTime descfolderfolder descmodifiedByMeTimemodifiedByMeTime descmodifiedTimemodifiedTime descnamename descname_naturalname_natural descquotaBytesUsedquotaBytesUsed descrecencyrecency descsharedWithMeTimesharedWithMeTime descstarredstarred descviewedByMeTimeviewedByMeTime desc
limitintegerOptionalThe number of documents to list
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonA dictionary containing document count, list of documents with content and metadata, pagination token, and has_more flag
#

GoogleDocs.SearchDocuments

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Searches for documents in the user's Google Drive. Excludes documents in trash. Returns metadata only. Use get_document_metadata or get_document_as_docmd for content.

Parameters

ParameterTypeReq.Description
document_containsarray<string>OptionalKeywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.
document_not_containsarray<string>OptionalKeywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.
search_only_in_shared_drive_idstringOptionalThe ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.
include_shared_drivesbooleanOptionalWhether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').
include_organization_domain_documentsbooleanOptionalWhether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.
order_byarray<string>OptionalSort order. Defaults to listing the most recently modified documents first. If document_contains or document_not_contains is provided, then the order_by will be ignored.
createdTimecreatedTime descfolderfolder descmodifiedByMeTimemodifiedByMeTime descmodifiedTimemodifiedTime descnamename descname_naturalname_natural descquotaBytesUsedquotaBytesUsed descrecencyrecency descsharedWithMeTimesharedWithMeTime descstarredstarred descviewedByMeTimeviewedByMeTime desc
limitintegerOptionalThe number of documents to list
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

Secrets:ENABLE_GOOGLE_DRIVE_INLINE_PICKER_URL

Output

Type:jsonDocument count, list of documents, pagination token, and has_more flag
#

GoogleDocs.WhoAmI

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Documents
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Get comprehensive user profile and Google Docs environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Docs access permissions, and other important profile details from Google services.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:jsonGet comprehensive user profile and Google Docs environment information.
Last updated on