Server data from the Official MCP Registry
Minimal MCP server for reading comments on Google Drive files (Docs, Sheets, Slides). Read-only.
Minimal MCP server for reading comments on Google Drive files (Docs, Sheets, Slides). Read-only.
This is a well-designed, security-conscious MCP server with proper OAuth authentication, read-only scopes, and minimal surface area. The code is clean with good input validation and error handling. Minor code-quality observations exist (broad exception handling, missing type hints in places) but do not raise security concerns. Permissions appropriately match the stated purpose of reading Google Drive comments. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 3 high severity). Package verification found 1 issue.
7 files analyzed · 8 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: DRIVE_MCP_CREDENTIALS
Environment variable: DRIVE_MCP_TOKEN
Environment variable: DRIVE_MCP_SCOPES
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-zayansalman-google-drive-comments-mcp": {
"env": {
"DRIVE_MCP_TOKEN": "your-drive-mcp-token-here",
"DRIVE_MCP_SCOPES": "your-drive-mcp-scopes-here",
"DRIVE_MCP_CREDENTIALS": "your-drive-mcp-credentials-here"
},
"args": [
"google-drive-comments-mcp"
],
"command": "uvx"
}
}
}From the project's GitHub README.
A focused Model Context Protocol server (and standalone CLI) for reading comments on Google Drive files — Docs, Sheets, and Slides. Two tools, read-only OAuth scope, no extra surface area.
Built because the hosted Google Drive connectors expose file content and search, but not the comment threads — the review discussion, the anchored quotes, the resolve/reopen history. This server fills that gap for any MCP client (Claude Code, Claude Desktop, Cursor, Cline, etc.), and also works as a plain CLI.
drive_search_files, drive_get_comments. That's the whole API.docs.google.com/document/d/… link or a bare file ID.drive.readonly).DRIVE_MCP_CREDENTIALS, DRIVE_MCP_TOKEN, DRIVE_MCP_SCOPES.pip install google-drive-comments-mcp
# or, with uv:
uv tool install google-drive-comments-mcp
You need a Google Cloud OAuth client. The server runs entirely on your machine; nothing leaves it.
drive.readonly is a restricted scope.google-drive-comments-mcp setup --import-credentials ~/Downloads/client_secret_*.json
A browser window opens for OAuth consent. The refresh token is cached at ~/.config/google-drive-comments-mcp/token.json.
Verify:
google-drive-comments-mcp status
google-drive-comments-mcp comments "https://docs.google.com/document/d/YOUR_DOC_ID/edit"
claude mcp add --scope user google-drive-comments google-drive-comments-mcp -- serve
Then:
Read the open comments on this doc and summarize what reviewers are asking for: https://docs.google.com/document/d/…
~/Library/Application Support/Claude/claude_desktop_config.json (Mac):
{
"mcpServers": {
"google-drive-comments": {
"command": "google-drive-comments-mcp",
"args": ["serve"]
}
}
}
(Use the absolute path from which google-drive-comments-mcp if it isn't on Claude Desktop's $PATH.)
# Find a doc
google-drive-comments-mcp search "Q3 strategy"
# Read all comments (open + resolved) on a doc by URL or ID
google-drive-comments-mcp comments "https://docs.google.com/document/d/abc123/edit"
# Only unresolved comments
google-drive-comments-mcp comments abc123 --open-only
drive_search_files(query, max_results=10)Search Drive. Plain strings are auto-wrapped as a filename search; raw Drive query syntax passes through.
[
{
"id": "1AbC…",
"name": "Q3 Strategy",
"mime_type": "application/vnd.google-apps.document",
"modified": "2026-04-20T09:00:00.000Z",
"owners": ["Jane Doe"],
"web_view_link": "https://docs.google.com/document/d/1AbC…/edit"
}
]
drive_get_comments(file, include_resolved=True)Read all comments on a file. file accepts a Docs/Sheets/Slides/Drive URL or a bare file ID.
{
"file": { "id": "1AbC…", "name": "Q3 Strategy", "mime_type": "…document", "web_view_link": "…", "owners": ["Jane Doe"] },
"open_count": 2,
"resolved_count": 1,
"comments": [
{
"id": "AAAA…",
"author": "Jane Doe",
"content": "Can we add the unit-economics table here?",
"quoted_text": "Our margins improved in Q3.",
"resolved": false,
"created": "2026-04-21T10:00:00Z",
"modified": "2026-04-21T10:00:00Z",
"replies": [
{ "author": "John Smith", "content": "Added.", "action": "", "created": "2026-04-21T11:00:00Z" }
]
}
]
}
quoted_text is the document text the comment is anchored to — useful context for understanding what each comment refers to.
| Variable | Default | What |
|---|---|---|
DRIVE_MCP_CREDENTIALS | ~/.config/google-drive-comments-mcp/credentials.json | OAuth client secret JSON |
DRIVE_MCP_TOKEN | ~/.config/google-drive-comments-mcp/token.json | Cached refresh token |
DRIVE_MCP_SCOPES | https://www.googleapis.com/auth/drive.readonly | OAuth scopes (comma-separated) |
XDG_CONFIG_HOME | ~/.config | Standard XDG override |
If you also run a sibling tool (e.g. gmail-attachments-mcp) and want a single OAuth consent for both, point both tools at the same credential + token files (via the env vars above, or symlinks) and authorize once with the combined scopes:
DRIVE_MCP_SCOPES="https://www.googleapis.com/auth/gmail.readonly,https://www.googleapis.com/auth/drive.readonly" \
google-drive-comments-mcp setup --reauth
A token granted a superset of scopes satisfies each tool's narrower request.
drive.readonly. It cannot edit, comment, or delete — only read file metadata, content, and comments.drive.readonly grants read access to all your Drive files, not just the one you query. There is no per-file read scope that also exposes comments. Treat the cached token like a password (it's written 0600).HttpError 403: Google Drive API has not been used in project … before or it is disabled
Enable the Drive API on the project that owns your OAuth client, then retry.
No valid Google token from Claude Desktop / cron
Run google-drive-comments-mcp setup once in a terminal where a browser can open. Subsequent runs reuse the cached token.
Comments come back empty on a file you know has comments
Confirm you authorized the account that can actually see the file, and that the file genuinely has comments (suggestions are not comments). Resolved comments are included unless you pass --open-only / include_resolved=false.
There are no API keys and no shipped secrets. The server authenticates to your Google account with an OAuth client you create, and caches a refresh token locally. The author has zero access to your data.
drive.readonly) can't be redistributed in a shared app, and an unverified shared app is capped at 100 users. "Bring your own OAuth client" is the standard pattern for personal-data MCP servers.~/.config/google-drive-comments-mcp/token.json (mode 0600). Delete it to revoke locally; revoke fully at myaccount.google.com/permissions.Part of a small family of focused, local MCP servers for Google Workspace data the hosted connectors don't expose:
They can share one OAuth login or stay isolated — see each repo's setup.
MIT. See LICENSE.
Be the first to review this server!
by Modelcontextprotocol · File & Storage
Secure file operations with configurable access controls
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.