@starfysh/gdrive-mcp
v1.2.0
Published
MCP server for Google Docs, Sheets, and Drive integration with Claude
Maintainers
Readme
gdrive-mcp
Connect Claude to your Google Workspace: Docs, Sheets, Drive, Slides, Forms, and Apps Script.
Built with FastMCP using the Model Context Protocol. Works with Claude Desktop and other MCP clients.
Features
Documents — Read, write, and format content. Insert tables, images, page breaks. Manage comments and replies. Support for multi-tab documents.
Spreadsheets — Read and write ranges using A1 notation. Append rows, clear cells, create sheets. Get metadata and manage tabs.
Drive — Search and list files. Create, move, copy, rename, and delete files. Manage folders and permissions. Access shared drives.
Slides — Read presentation metadata. Create presentations and manage slides.
Forms — Read form structure and responses (read-only API limitation).
Apps Script — Manage projects, read and update code, list versions and deployments. Execute functions via API.
Authentication — Secure OAuth 2.0 with support for service accounts and domain-wide delegation.
Quick Start
1. Install
git clone https://github.com/starfysh-tech/gdrive-mcp.git
cd gdrive-mcp
npm install
npm run buildOr use npx (requires setup first):
npx @starfysh/gdrive-mcp2. Setup Google Cloud Credentials
- Create a project in Google Cloud Console
- Enable APIs: Docs, Sheets, Drive, Slides, Forms, Apps Script
- Create OAuth 2.0 Desktop credentials
- Download and save as
credentials.jsonin the project directory
3. Authenticate
node ./dist/server.jsBrowser opens automatically for OAuth. Sign in with your Google account. Token saves to token.json.
4. Configure Claude Desktop
Edit claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Add this configuration (replace /PATH/TO with your absolute path from pwd):
{
"mcpServers": {
"gdrive-mcp": {
"command": "node",
"args": ["/PATH/TO/gdrive-mcp/dist/server.js"],
"env": {}
}
}
}Restart Claude Desktop.
Usage
Talk to Claude naturally about your Google Workspace files:
- "List all my Google Docs modified in the last 7 days"
- "Read this document and summarize the key points"
- "Create a new spreadsheet called 'Q1 Sales' with headers Date, Product, Revenue"
- "Append a new row to this spreadsheet with today's data"
- "Insert an image from this URL at the top of the document"
- "List all tabs in this document and show me the content from the Summary tab"
→ Full usage guide with examples
Documentation
- Setup Guide — Detailed Google Cloud setup, OAuth configuration, and troubleshooting
- Usage Guide — Examples for Docs, Sheets, Drive, Slides, Forms, and Apps Script
- Known Limitations — API limitations and workarounds
- Troubleshooting — Common issues and solutions
API Reference
| API | Documentation | OAuth Scopes |
|-----|---------------|--------------|
| Google Docs | developers.google.com/docs/api | auth/documents |
| Google Sheets | developers.google.com/sheets/api | auth/spreadsheets |
| Google Drive | developers.google.com/drive/api | auth/drive |
| Google Slides | developers.google.com/slides/api | auth/presentations |
| Google Forms | developers.google.com/forms/api | auth/forms.body.readonly, auth/forms.responses.readonly |
| Apps Script | developers.google.com/apps-script/api | auth/script.projects |
For the complete list of OAuth 2.0 scopes, see: OAuth 2.0 Scopes for Google APIs
Security & Token Storage
.gitignore: Prevents accidentally committingcredentials.jsonandtoken.json. Do not remove these entries.- Token Storage: For production or security-sensitive environments, consider using system keychains, encrypted files, or secret management services instead of storing
token.jsonin the project folder.
About
Maintained by Starfysh — fractional product + tech leadership for technical founders.
Originally forked from a-bonus/google-docs-mcp.
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
License
This project is licensed under the MIT License - see the LICENSE file for details.
