google-workspace-mcp
Enables read/write access to Google Docs, Sheets, Drive, and Calendar through Claude Desktop, with 24 tools for creating, editing, searching, and managing files and events.
README
Google Workspace MCP Server for Claude Desktop
A TypeScript MCP (Model Context Protocol) server that gives Claude Desktop read/write access to Google Docs, Sheets, Drive, and Calendar.
24 tools across four services — create, edit, search, and manage your Google Workspace files and events directly from Claude.
Features
Google Docs
docs_get— Read full document contentdocs_create— Create a new documentdocs_append— Append text to a documentdocs_replace— Find and replace textdocs_delete— Move a document to trash
Google Sheets
sheets_get— Read cell values from a rangesheets_create— Create a new spreadsheetsheets_update— Write values to a rangesheets_append— Append rows to a sheetsheets_clear— Clear a rangesheets_delete— Move a spreadsheet to trash
Google Drive
drive_list— List files and foldersdrive_search— Search files by namedrive_get— Get file metadatadrive_create_folder— Create a folderdrive_move— Move a file to a different folderdrive_delete— Move a file to trash
Google Calendar
calendar_list— List all calendarscalendar_events— List upcoming eventscalendar_search— Search events by textcalendar_get— Get full event detailscalendar_create— Create a new eventcalendar_update— Update an existing eventcalendar_delete— Delete an event
Prerequisites
- Node.js 18 or higher
- A Google Cloud project with OAuth 2.0 credentials
Setup
1. Google Cloud Console
- Go to console.cloud.google.com
- Create a new project (or select an existing one)
- Navigate to APIs & Services → Credentials
- Click Create Credentials → OAuth Client ID
- Choose Desktop Application as the application type
- Download or note the Client ID and Client Secret
Enable the following APIs for your project:
2. Install and Build
git clone https://github.com/laltaffer/google-workspace-mcp.git
cd google-workspace-mcp
npm install
npm run build
3. Configure Claude Desktop
Add the following to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"google-workspace": {
"command": "node",
"args": ["/absolute/path/to/google-workspace-mcp/dist/index.js"],
"env": {
"GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"GOOGLE_CLIENT_SECRET": "your-client-secret"
}
}
}
}
Replace /absolute/path/to/google-workspace-mcp with the actual path where you cloned the repo.
4. Restart Claude Desktop
Fully quit and reopen Claude Desktop.
5. Authorize
In a new Claude chat, say:
"Call the authorize tool"
Claude will return a Google authorization URL. Open it in your browser, sign in, and grant access. Your browser will show "Authorization complete!" — you only need to do this once. Tokens are saved to ~/.google-workspace-mcp/tokens.json.
You can now use all Google Workspace tools in Claude.
Upgrading? If you previously authorized without Calendar support, delete
~/.google-workspace-mcp/tokens.jsonand re-authorize to grant calendar permissions.
Usage Examples
"List my Google Drive files"
"Create a new Google Doc called 'Meeting Notes' and add an agenda"
"Read the spreadsheet with ID 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms and summarize it"
"Find all documents with 'Q1' in the name"
"Append a new row to my budget spreadsheet: ['March', '4500', 'Rent']"
"What's on my calendar this week?"
"Create a meeting called 'Design Review' tomorrow at 2pm for 1 hour"
Development
npm test # run tests
npm run test:watch # watch mode
npm run build # compile TypeScript
The project uses vitest for testing with mocked googleapis clients. 29 tests across auth, Drive, Docs, Sheets, and Calendar modules.
Token Storage
OAuth tokens are stored locally at ~/.google-workspace-mcp/tokens.json. They are never committed to this repository. To revoke access, delete that file or revoke the app in your Google Account security settings.
Tech Stack
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.