Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"google-docs": {
"env": {
"SUBJECT_EMAIL": "you@yourdomain.com",
"SERVICE_ACCOUNT_PATH": "/path/to/your-service-account-key.json"
},
"args": [
"google-docs-mcp-server"
],
"command": "uvx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A Model Context Protocol server for Google Docs with full tab support — something most existing servers get wrong or skip entirely.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'google-docs-mcp-server' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked google-docs-mcp-server against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in writing / productivity
Persistent memory using a knowledge graph
Dynamic problem-solving through sequential thought chains
mini cli search engine for your docs, knowledge bases, meeting notes, whatever. Tracking current sota approaches while being all local
A markdown editor — and the bridge to your LLM. Local-first, MIT, ~15 MB. Bundled MCP server lets Claude Code / Codex / Cursor drive your vault directly. 14 AI providers BYOK.
MCP Security Weekly
Get CVE alerts and security updates for io.github.gigabrain-observer/google-docs-mcp-server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A Model Context Protocol server for Google Docs with full tab support — something most existing servers get wrong or skip entirely.
Uses Google service accounts with domain-wide delegation, so it works in Workspace orgs without OAuth consent screens.
| Tool | Description |
|---|---|
list_tabs | List all tabs (including nested) in a document |
read_document | Read one tab or all tabs as markdown with proper heading levels |
get_document_info | Lightweight metadata: title, ID, link, tab list |
create_document | Create a new doc with optional initial text |
append_text | Append text to the end of a specific tab |
insert_text | Insert text at a character index in a tab |
replace_text | Find and replace within a tab (or whole doc) |
batch_update | Full batchUpdate access — formatting, tables, images, styles |
list_documents | Search Drive for docs by name |
All tab-targeting tools accept tab_id or tab_title (case-insensitive). The batch_update tool auto-injects tabId into requests so you don't have to.
Google Docs has supported tabs since late 2024, but most MCP servers either:
includeTabsContent=True, so tab content is invisibleThis server handles all of that correctly and converts content to markdown with proper heading structure.
pip install google-docs-mcp-server
Or run directly with uv:
uvx google-docs-mcp-server
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/drive.readonly
Add to your MCP config (e.g. ~/.claude/mcp.json or .mcp.json):
{
"mcpServers": {
"google-docs": {
"command": "uvx",
"args": ["google-docs-mcp-server"],
"env": {
"SERVICE_ACCOUNT_PATH": "/path/to/your-service-account-key.json",
"SUBJECT_EMAIL": "you@yourdomain.com"
}
}
}
}
SUBJECT_EMAIL is the Workspace user the service account impersonates.
| Variable | Required | Description |
|---|---|---|
SERVICE_ACCOUNT_PATH | Yes | Path to the service account JSON key file |
SUBJECT_EMAIL | Yes | Email of the Workspace user to impersonate |
MIT