Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GOOGLE_DOCS_MCP_TOKENNoPath to the token file (preferred for standalone use). Defaults to ~/.google-docs-mcp/token.json if not provided.~/.google-docs-mcp/token.json
GOOGLE_DOCS_MCP_APPS_SCRIPT_IDNoOptional Apps Script bridge project ID for bookmark_jump=true.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
docs_getA

Read a Google Doc and return its structure as JSON.

Returns title, list of paragraphs (with text, style, start/end indices), and the full plain text. Use this before editing to understand the document.

docs_search_replaceA

Find text in a Google Doc and replace a specific occurrence.

Preserves document history — uses real batchUpdate, not delete-and-rewrite.

docs_insert_afterA

Insert a new paragraph immediately after the paragraph containing anchor.

The anchor is matched case-insensitively as a substring of the paragraph.

Rich formatting is ON by default. Set rich=False to insert literal text.

docs_insert_beforeA

Insert a new paragraph immediately before the paragraph containing anchor.

The anchor is matched case-insensitively as a substring of the paragraph.

Rich formatting is ON by default. Set rich=False to insert literal text.

docs_delete_paragraphA

Delete the paragraph(s) containing anchor text.

Deletes ALL paragraphs that contain the anchor string (case-insensitive). If the anchor matches only one paragraph, only that paragraph is deleted.

docs_appendA

Append a new paragraph at the end of a Google Doc.

Rich formatting is ON by default. Set rich=False to append literal text.

docs_batch_replaceA

Apply multiple find→replace operations atomically in a single batchUpdate.

All replacements are applied in one API call (end-of-document first to preserve index validity). Either ALL changes succeed, or none do.

docs_add_commentA

Add a comment anchored to specific text in a Google Doc.

NOTE: The current implementation uses the Drive comments API plus a Docs named range. In the Docs UI this still shows as "Original content deleted" rather than a proper inline comment highlight. The comments ARE readable via docs_read_comments and the Docs 💬 panel.

The next path to investigate is Apps Script automation. The OAuth token must include the script.* scopes, and the Google account must also have the Apps Script API enabled at https://script.google.com/home/usersettings before remote Apps Script project creation/execution will work.

By default the tool also appends the matched anchor text into the comment body so the user can understand what was targeted even though the Docs UI does not render a proper inline highlight with the current API path.

When bookmark_jump=True, the tool also uses a persistent Apps Script bridge (configured via GOOGLE_DOCS_MCP_APPS_SCRIPT_ID) to create a bookmark at the target text, then appends a #bookmark jump URL into the comment body.

docs_reply_to_commentA

Reply to an existing comment on a Google Doc.

docs_resolve_commentB

Resolve (close) a comment on a Google Doc, optionally with a final reply.

docs_delete_commentB

Delete a comment from a Google Doc.

docs_read_commentsA

Read all comments on a Google Doc.

Returns each comment with its content, author, anchor status, and whether it's resolved or deleted. Useful for auditing what comments exist and whether they are properly anchored to text.

docs_listB

List Google Docs from Drive, optionally filtered by a search query.

docs_createA

Create a new Google Doc with an optional initial paragraph of text.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/dbuxton/google-docs-mcp'

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