Google Docs

MCP server for Google Docs : create, read, edit, format, and manage documents through 26 tools.

Community: Submitted by a user or imported; check the owner before granting accessOnlineAPI key requiredGlobalFreeCan modify data

What it can do

  • Gdoc Create: Create a new Google Docs document with a title. Returns the document ID and metadata.
  • Gdoc Get: Get a Google Docs document including its full content structure, headers, footers, and named ranges.
  • Gdoc Insert Text: Insert text at a specific position in the document. Use index 1 to insert at the beginning of the body.

What data it sees

Do you need an account

An API key from the service settings is required

MCP server for Google Docs : create, read, edit, format, and manage documents through 26 tools.

Features

  • Create and read document content with full structure
  • Insert, delete, and replace text at any position
  • Format text: bold, italic, underline, fonts, colors, links
  • Paragraph styles: alignment, spacing, headings (H1-H6)
  • Bulleted and numbered lists
  • Tables: insert, add/delete rows and columns, merge cells
  • Headers, footers, and section breaks
  • Named ranges for bookmarking content
  • Raw batchUpdate for any Docs API operation

26 Tools

  • Document: create and get document content
  • Content: insert text, delete, replace all, insert image, page break
  • Text Formatting: update text style, update paragraph style
  • Lists: create and delete bullets/numbering
  • Tables: insert table, add/delete rows and columns, merge/unmerge cells
  • Headers & Footers: create and delete headers and footers
  • Sections & Named Ranges: section breaks, create and delete named ranges
  • Advanced: raw batchUpdate pass-through

Configuration

  • GOOGLE_CLIENT_ID : OAuth 2.0 Client ID from Google Cloud Console
  • GOOGLE_CLIENT_SECRET : OAuth 2.0 Client Secret
  • GOOGLE_REFRESH_TOKEN : Refresh token with documents scope
Server tool list (26)

Raw names from tools/list. Only developers need these.

gdoc_createCreate a new Google Docs document with a title. Returns the document ID and metadata.
gdoc_getGet a Google Docs document including its full content structure, headers, footers, and named ranges.
gdoc_insert_textInsert text at a specific position in the document. Use index 1 to insert at the beginning of the body.
gdoc_delete_contentDelete content in a range. Get indices from gdoc_get response.
gdoc_replace_all_textFind and replace all occurrences of text in the entire document.
gdoc_insert_inline_imageInsert an image from a URL at a specific position in the document.
gdoc_insert_page_breakInsert a page break at a specific position in the document.
gdoc_update_text_styleUpdate text style (bold, italic, font, color, etc.) for a range of text. Only specified fields are changed.
gdoc_update_paragraph_styleUpdate paragraph style (alignment, spacing, indentation, heading) for a range.
gdoc_create_bulletsConvert paragraphs in a range to a bulleted or numbered list.
gdoc_delete_bulletsRemove bullets or numbering from paragraphs in a range.
gdoc_insert_tableInsert a new table at a specific position in the document.
gdoc_insert_table_rowInsert a new row in an existing table.
gdoc_insert_table_columnInsert a new column in an existing table.
gdoc_delete_table_rowDelete a row from an existing table.
gdoc_delete_table_columnDelete a column from an existing table.
gdoc_merge_table_cellsMerge cells in a table. Specify the top-left cell and span.
gdoc_unmerge_table_cellsUnmerge previously merged cells in a table.
gdoc_create_headerCreate a header in the document. Returns the header ID for inserting content.
gdoc_create_footerCreate a footer in the document. Returns the footer ID for inserting content.
gdoc_delete_headerDelete a header from the document. Get the header ID from gdoc_get.
gdoc_delete_footerDelete a footer from the document. Get the footer ID from gdoc_get.
gdoc_insert_section_breakInsert a section break at a specific position.
gdoc_create_named_rangeCreate a named range in the document for referencing a section of content.
gdoc_delete_named_rangeDelete a named range by ID or name. Does not delete the content, only the reference.
gdoc_batch_updateSend a raw batchUpdate request with any combination of operations. Use this for complex multi-step updates or operations not covered by other tools.