Provides comprehensive tools for creating, reading, and editing Google Docs, featuring full support for modern document tabs (including nested tabs), markdown conversion, and complex batch updates for formatting and structure.
Enables searching for and listing Google Docs files within a user's Google Drive storage.
Click on "Install 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 MCP ServerRead the 'Project Roadmap' doc and summarize its tabs"
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 Server
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.
What it does
Tool | Description |
| List all tabs (including nested) in a document |
| Read one tab or all tabs as markdown with proper heading levels |
| Lightweight metadata: title, ID, link, tab list |
| Create a new doc with optional initial text |
| Append text to the end of a specific tab |
| Insert text at a character index in a tab |
| Find and replace within a tab (or whole doc) |
| Full batchUpdate access — formatting, tables, images, styles |
| 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.
Why this exists
Google Docs has supported tabs since late 2024, but most MCP servers either:
Ignore tabs entirely (only read the first tab)
Don't use
includeTabsContent=True, so tab content is invisibleDon't handle nested tabs
This server handles all of that correctly and converts content to markdown with proper heading structure.
Install
Or run directly with uv:
Prerequisites
Python 3.11+
A Google Cloud service account with domain-wide delegation
Setup
1. Create a GCP service account
Go to Google Cloud Console and create (or select) a project
Enable the Google Docs API and Google Drive API
Create a service account under IAM & Admin > Service Accounts
Create a JSON key and download it
2. Enable domain-wide delegation
In GCP, on the service account details page, enable Domain-wide Delegation and note the Client ID
In Google Workspace Admin > Security > API Controls > Domain-wide Delegation
Add the Client ID with these scopes:
https://www.googleapis.com/auth/documents https://www.googleapis.com/auth/drive.readonly
3. Configure your MCP client
Add to your MCP config (e.g. ~/.claude/mcp.json or .mcp.json):
SUBJECT_EMAIL is the Workspace user the service account impersonates.
Environment variables
Variable | Required | Description |
| Yes | Path to the service account JSON key file |
| Yes | Email of the Workspace user to impersonate |
License
MIT