google-docs-mcp
Provides read-only access to Google Docs documents, including document content, full comment threads with replies and resolution status, comment summaries, and context around quoted text.
Enables searching and listing Google Docs files in Google Drive, including shared drives, and supports retrieving document comments through the Drive API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@google-docs-mcpSummarize the comments on the Q4 project plan doc"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
google-docs-mcp
A read-only Model Context Protocol server for Google Docs. Its job is to explain a document's comments to an AI assistant (Claude or any MCP client) in full detail: who wrote each one, when, on which piece of text, whether it is open or resolved, the complete reply thread, and who resolved it.
Read-only by design. It only requests the
documents.readonlyanddrive.readonlyscopes. There is no tool that creates, edits, resolves or deletes anything, and every tool is advertised withreadOnlyHint: true.OAuth 2.0 sign-in. Users authenticate with their own Google account through the desktop-app flow with PKCE. Tokens are stored locally and refreshed automatically.
Zero configuration for the assistant. Tools accept a document ID or a full Google Docs URL.
Tools
Tool | What it does |
| The main tool. Every comment in full detail: author, dates, open/resolved status, quoted text, the whole reply thread (including who resolved or reopened it) and, optionally, the paragraph of the document where the quoted text appears. Filter by status, include deleted comments, paginate, and choose |
| Aggregate view: counts by status, participants and their activity, open comments with no replies, open comments waiting for the original author, oldest open comment and latest activity. |
| A single comment thread by ID, with context. |
| Document metadata plus plain-text content (all tabs), so the assistant can understand what the comments refer to. |
| Search Google Docs in Drive (shared drives included) by title or full text. |
| Whether the server is signed in and with which account. |
Example: list_comments
# Q4 project plan
- Document ID: `1AbC...`
- Link: https://docs.google.com/document/d/1AbC.../edit
- Owner: Ana <ana@example.com>
- Last modified: 2026-09-22 08:00 UTC by Jose <jose@example.com> (you)
## Comments (all): 2
### [1] 🟢 OPEN — Ana <ana@example.com> · 2026-09-22 08:00 UTC
**Quoted text (what the comment refers to):**
> delivery date
**Surrounding paragraph (#7):**
> The delivery date will be shared with the client once the scope is final.
**Comment:**
The delivery date is missing.
_No replies yet._
Comment ID: `AAAAxyz`
### [2] ✅ RESOLVED — Ana <ana@example.com> · 2026-09-20 10:32 UTC
...
**Thread (2 replies):**
- Jose <jose@example.com> (you) · 2026-09-21 09:00 UTC: Yes, moving it.
- Jose <jose@example.com> (you) · 2026-09-21 12:00 UTC — marked as RESOLVED
Resolved by Jose <jose@example.com> (you) on 2026-09-21 12:00 UTC.Related MCP server: Google Sheets MCP Server
Quick start
Prerequisites
Node.js >= 20
A Google Cloud project with the Google Drive API and Google Docs API enabled
1. Create an OAuth client in Google Cloud
Open the Google Cloud Console and create or select a project.
APIs & Services → Library: enable Google Drive API and Google Docs API.
APIs & Services → OAuth consent screen: configure it. Use Internal for a Workspace organization; for External apps in testing mode, add your account as a test user.
APIs & Services → Credentials → Create credentials → OAuth client ID, application type Desktop app.
Download the JSON and save it as
~/.config/google-docs-mcp/credentials.json.
You can use environment variables instead of the file:
export GOOGLE_CLIENT_ID="...apps.googleusercontent.com"
export GOOGLE_CLIENT_SECRET="..."2. Sign in with Google
npx -y -p @yeyo11/google-docs-mcp google-docs-mcp-authYour browser opens (or the URL is printed so you can paste it). Google asks for read-only access to Drive and
Docs. Tokens are saved to ~/.config/google-docs-mcp/token.json with 0600 permissions. Run the same command
again to switch accounts.
3. Register the server with your MCP client
No clone or build step is needed; npx fetches the package on first use.
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"google-docs": {
"command": "npx",
"args": ["-y", "@yeyo11/google-docs-mcp"]
}
}
}Claude Code:
claude mcp add google-docs -- npx -y @yeyo11/google-docs-mcpAny other MCP client that supports stdio servers works the same way. If you use environment variables for the OAuth
client, add them to the env block of your client configuration.
git clone https://github.com/yeyo11/google-docs-mcp.git
cd google-docs-mcp
npm install
npm run build
npm run authThen point your MCP client at node /absolute/path/to/google-docs-mcp/dist/index.js.
4. Ask away
"Summarize the open comments in https://docs.google.com/document/d/…/edit and tell me which ones are waiting on me."
Configuration
Variable | Description | Default |
| Path to the OAuth client JSON. |
|
| Alternative to the JSON file. | — |
| Where the user's tokens are stored. |
|
| Base directory for the two files above. |
|
How it works
MCP client ──stdio──▶ google-docs-mcp ──OAuth2 (read-only)──▶ Google Drive API (files, comments)
└▶ Google Docs API (document text)Comments come from the Drive API (
comments.list/comments.get) with every field requested explicitly, so nothing is silently dropped: quoted text, replies,resolve/reopenactions, deleted flags.The "surrounding paragraph" is found by locating the quoted text inside the document body fetched from the Docs API (all tabs are traversed, including tables).
Google API errors (401/403/404/429) are returned as MCP
isErrorresults with an actionable message instead of breaking the session. Logs go tostderr;stdoutis reserved for the protocol.
Development
npm run dev # run the server from src/ with tsx
npm run typecheck # type-check without emitting
npm test # smoke test: tool listing, error handling without credentials, comment formattingSee CONTRIBUTING.md for the workflow and commit conventions.
Security
Only read-only scopes are requested; Google never grants this client write access.
If the stored token lacks the expected scopes, the server refuses to use it and asks you to sign in again.
credentials.jsonandtoken.jsonare git-ignored. Never commit them.To revoke access, remove the app at https://myaccount.google.com/permissions and delete
token.json.
To report a vulnerability, see SECURITY.md.
Limitations (v0.1)
Read-only: comments cannot be created, replied to or resolved.
One Google account per installation (switch with
npm run auth).The surrounding paragraph is located by searching for the quoted text; if that text was edited after the comment was made, it may not be found.
Roadmap
Optional write tools (reply, resolve) behind an explicit opt-in scope
Multiple accounts / profiles
Streamable HTTP transport for remote deployments
License
Available Tools
6 toolsget_auth_statusGet authentication statusARead-onlyIdempotent
Check whether the server is signed in to Google and which account is being used. Call this first if other tools fail with authentication errors.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds useful context about what is checked (signed-in status and active account) and frames it as a diagnostic first step, going slightly beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The primary purpose is stated first, and the usage guidance is added in the second sentence without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter diagnostic tool, the description fully covers what it does, what it reveals, and when to use it. No output schema exists, but none is needed for this simple status check.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to clarify beyond the empty schema. The absence of parameters makes the baseline score of 4 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('check whether the server is signed in to Google') and specifies the additional detail of which account is being used. It is clearly distinct from sibling document/comment tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to call this tool first when other tools fail with authentication errors, giving a concrete condition for when it should be used. This is strong contextual guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_commentGet a single comment threadARead-onlyIdempotent
Fetch one comment of a Google Doc by ID with its full reply thread, quoted text and surrounding paragraph.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | markdown | |
| document | Yes | Google Docs document ID or full URL (https://docs.google.com/document/d/<id>/edit). | |
| comment_id | Yes | Comment ID as returned by list_comments. | |
| include_context | No | Attach the paragraph where the quoted text appears. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds behavioral value by disclosing what is returned: the full reply thread, quoted text, and optional surrounding paragraph. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense 19-word sentence that front-loads the verb and resource and then lists key output elements. There is no filler or repeated schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description supplies enough return-value detail (reply thread, quoted text, surrounding paragraph) while annotations and schema cover safety and parameters. It could mention error/not-found behavior or explicitly distinguish alternatives, but these are minor gaps for this simple fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents document, comment_id, and include_context with descriptions, and format has an enum/default, so schema coverage is high. The description adds little parameter-level nuance beyond restating 'by ID' and the returned thread context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Fetch') and resource ('one comment of a Google Doc by ID') and lists what is included ('full reply thread, quoted text and surrounding paragraph'). This clearly distinguishes it from list_comments and get_comments_summary without needing the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description's focus on a single ID implies targeted retrieval, and the schema clarifies the prerequisite by saying comment_id is 'as returned by list_comments.' It does not explicitly name sibling tools or state when not to use it, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_comments_summarySummarize commentsARead-onlyIdempotent
Aggregate view of all comments in a Google Doc: counts by status, participants and their activity, open comments with no replies, open comments waiting for the original author, oldest open comment and latest activity. Reads every page of comments.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | markdown | |
| document | Yes | Google Docs document ID or full URL (https://docs.google.com/document/d/<id>/edit). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations: it explicitly states 'Reads every page of comments,' which signals that this operation may be costly or time-consuming. The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, but the description's note about reading all pages is an additional useful disclosure. No contradictions with annotations exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The first sentence front-loads the core purpose and lists the key outputs, and the second adds a single behavioral note. It is tightly written and every phrase contributes value, making it an excellent example of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a summary tool with no output schema, the description covers the key return content (counts by status, participants, open comments, etc.) and the behavior (reads all pages). It does not explicitly mention the format parameter or the output format, but the format parameter with its enum is present in the schema. The annotations handle the read-only safety. Overall, the description provides sufficient context for an agent to invoke it correctly, with minor gaps like not stating the return type directly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%: the document parameter has a clear description, but format has no description beyond its enum values. The description does not elaborate on either parameter. However, the format enum (markdown/json) is self-explanatory, and the document parameter is already well-documented. Since the coverage is not high (>80%) but also not low (<50%), the baseline is 3, and the description adds no extra parameter meaning, so a 3 is justified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool provides an aggregate view of all comments in a Google Doc, listing specific metrics like counts by status, participant activity, and open comment details. It distinguishes itself from siblings like list_comments or get_comment by focusing on summary data rather than raw comment listings, though it does not use an explicit verb like 'get' or 'retrieve'. The resource (comments in a Google Doc) and the nature of the output are clear, so it earns a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool—when an aggregate summary is needed rather than individual comments—but it does not explicitly mention alternatives or conditions for choosing this over list_comments or get_comment. It says 'Aggregate view' which suggests it's for high-level insights, but there is no direct 'use this when' or 'use list_comments for details' guidance. This is adequate but not explicit, so a 3 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_documentGet documentARead-onlyIdempotent
Read a Google Doc: metadata (title, owner, last modified) and its plain-text content across all tabs. Useful to understand what the comments refer to.
| Name | Required | Description | Default |
|---|---|---|---|
| document | Yes | Google Docs document ID or full URL (https://docs.google.com/document/d/<id>/edit). | |
| max_chars | No | Maximum number of characters of content to return. | |
| include_content | No | Include the document text. Set false for metadata only. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds valuable behavioral detail beyond annotations: it specifies that the tool returns metadata fields and plain-text content, and that it spans all tabs. This is useful context for return-value expectations, though it doesn't cover edge cases like truncation or permission failures.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no filler. The first sentence front-loads the core function and output, and the second gives a practical use case. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with no output schema, the description does a good job of summarizing what the agent will receive (metadata plus plain-text content) and why it's useful. It doesn't fully cover what happens when max_chars is hit or whether the content is formatted, but the schema covers the main parameter, and the core use case is clearly supported.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters already documented in the input schema. The description adds little parameter-level semantics beyond what the schema provides, e.g., it doesn't describe the interaction between max_chars and content truncation. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Read') and identifies the resource ('a Google Doc') and the exact scope: metadata (title, owner, last modified) and plain-text content across all tabs. It distinguishes itself from sibling tools like list_documents and the comment-specific tools by clarifying this is about reading the document text, not listing or fetching comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Useful to understand what the comments refer to' provides clear context for when to use this tool, especially alongside the comment-related siblings. It doesn't explicitly state when not to use it or name alternatives, but the context is strong enough for an agent to infer the intended use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_commentsList commentsARead-onlyIdempotent
List the comments of a Google Doc in full detail: author, dates, open/resolved status, the quoted text each comment refers to, every reply in the thread (with who resolved or reopened it) and, optionally, the surrounding paragraph of the document. This is the main tool of this server.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | markdown is easier to read; json returns the structured objects. | markdown |
| status | No | Filter by resolution status. | all |
| document | Yes | Google Docs document ID or full URL (https://docs.google.com/document/d/<id>/edit). | |
| page_token | No | Token from a previous call to fetch the next page. | |
| max_results | No | Page size. Comments are returned newest first. | |
| include_context | No | Fetch the document text and attach the paragraph where each quoted text appears. | |
| include_deleted | No | Also return deleted comments and replies. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is established. The description adds meaningful behavioral/return detail: every reply thread, who resolved or reopened it, and the optional surrounding paragraph, though pagination and result-shape behavior are left to the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and the specific output contents, with no filler. The second sentence adds useful context about the tool's role on the server rather than repeating schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with 100% schema coverage, strong safety annotations, and no output schema, the description supplies the missing output-content context. It does not describe pagination or result shape, but page_token and max_results are already schema-described, leaving only a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3 even without parameter info in the description. The description only hints at include_context via 'optionally, the surrounding paragraph,' but the schema already documents that; it adds no extra meaning for the other six parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List'), resource ('comments of a Google Doc'), and the scope of what is returned: author, dates, status, quoted text, replies, and who resolved/reopened. The 'full detail' framing and 'main tool' context distinguish it from get_comments_summary and get_comment without needing to inspect schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Calling it 'the main tool of this server' faintly implies it is the default for reading comments, but there is no explicit when-to-use or when-not-to-use guidance relative to get_comments_summary or get_comment. This is implied usage rather than clear exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_documentsList Google DocsARead-onlyIdempotent
Search the user's Google Drive for Google Docs documents (including shared drives). Returns name, ID, owner and last-modified date, newest first. Use the returned ID with the other tools.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Optional free-text search matched against the document title and full text. | |
| page_token | No | Token from a previous call to fetch the next page. | |
| max_results | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (read-only, idempotent, non-destructive), so the description's job is to add behavioral context. It adds that shared drives are included, results are sorted newest first, and the returned fields include name, ID, owner, and last-modified date. This is meaningful beyond the annotations, though it does not mention pagination behavior explicitly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences with no filler. It front-loads the core action and scope, then gives returned fields/sorting, then closes with actionable guidance. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple read-only list operation with no required parameters and no output schema. The description covers what it searches, the fields returned, the ordering, the shared-drive scope, and how to use the result IDs with other tools. Pagination is already explained by the page_token schema description, so nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, with query and page_token already documented in the schema and max_results constrained by minimum/maximum/default values. The description adds little parameter-level meaning beyond the verb "Search," so it neither compensates for gaps nor adds value beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: "Search the user's Google Drive for Google Docs documents." It further clarifies scope by noting shared drives are included and distinguishes the tool from siblings by stating the returned fields and sort order. An agent can immediately understand this is the entry-point listing tool as opposed to get_document or list_comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage context: it searches Drive and says "Use the returned ID with the other tools," which implies this is the discovery step before calling document or comment tools. It does not explicitly name alternatives or exclusions, but the sibling tools are distinct enough that no conflict arises.
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.
6 tool updates
v0.1.0- First observed
get_auth_status - First observed
get_comment - First observed
get_comments_summary - First observed
get_document - First observed
list_comments - First observed
list_documents
TDQS
Scored across 6 tools
The tools separate cleanly by resource and granularity: auth, document discovery, document content, and comment retrieval. The three comment tools overlap somewhat, but full-detail listing, single-comment retrieval, and aggregate summary are distinct enough from their descriptions.
All tools follow a consistent snake_case verb_noun pattern using get_ or list_. Collection retrieval uses list_, single-resource retrieval uses get_, and the aggregate tool is still clearly named as a summary.
Six tools is well-scoped for a read-focused Google Docs and comments server. Each tool serves a distinct step in the workflow without unnecessary redundancy.
The read/comments-analysis surface is nearly complete: auth, document discovery, document contents, full comment threads, and summary analytics are all covered. The only gap is the absence of write or comment-management operations, which matters if the server is expected to be a full Google Docs MCP rather than a read-only one.
Maintenance
Related MCP Connectors
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Publish drafts to Google Docs for review, then revise and resolve reviewer comments in your AI tool
Document sharing, invoicing, and personal finance platform. 15+ AI tools via OAuth 2.1.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive interaction with Google Docs and Google Drive through AI assistants, supporting document reading/writing, rich formatting, table/image insertion, comment management, and complete file/folder operations with secure OAuth authentication.3 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides read-only access to Google Sheets data through OAuth 2.0 authentication, enabling users to retrieve spreadsheet metadata, list tabs, and read cell data using natural language queries.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables searching, reading, and commenting on Google Drive documents through secure OAuth2 authentication, with support for creating styled notes directly in document content.13 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables creating anchored comments, replies, and real suggested edits in Google Docs from Claude.MIT