Google MCP Server
Google MCP Server
MCP server for connecting Claude Desktop to Google Mail, Docs, Sheets, and Tasks.
Setup
1. Google Cloud Console Setup
Go to Google Cloud Console
Create a new project (or select existing)
Enable these APIs (APIs & Services → Library):
Gmail API
Google Docs API
Google Sheets API
Google Tasks API
Configure OAuth Consent Screen:
Go to APIs & Services → OAuth consent screen
Select "External" user type
Fill in app name and your email
Add scopes:
gmail.modify,documents,spreadsheets,tasksAdd your email as a test user
Create OAuth Credentials:
Go to APIs & Services → Credentials
Click "Create Credentials" → "OAuth client ID"
Select "Desktop app" as application type
Download the JSON file
2. Install and Configure
# Install dependencies
npm install
# Build the project
npm run build
# Create config directory and save credentials
mkdir -p ~/.google-mcp
# Save your downloaded credentials.json to ~/.google-mcp/credentials.json
# Authenticate with Google
npm run auth3. Claude Desktop Configuration
Windows with WSL
Add to your Claude Desktop config (%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"google": {
"command": "wsl",
"args": [
"/path/to/node",
"/path/to/google-mcp-server/dist/index.js"
]
}
}
}Note: Use full path to node (run which node in WSL to find it), e.g., /home/user/.nvm/versions/node/v22.21.1/bin/node
Linux
Add to ~/.config/claude-desktop/claude_desktop_config.json:
{
"mcpServers": {
"google": {
"command": "node",
"args": [
"/path/to/google-mcp-server/dist/index.js"
]
}
}
}macOS
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"google": {
"command": "node",
"args": ["/path/to/google-mcp-server/dist/index.js"]
}
}
}Available Tools
Gmail
gmail_search- Search emails with Gmail query syntaxgmail_read- Read a specific email by IDgmail_send- Send an email
Google Docs
docs_get- Get document contentdocs_create- Create a new documentdocs_append- Append text to a document
Google Sheets
sheets_read- Read data from a rangesheets_write- Write data to a rangesheets_create- Create a new spreadsheet
Google Tasks
tasks_list- List task lists or taskstasks_create- Create a new tasktasks_update- Update/complete a task
Usage Examples
After setup, you can ask Claude Desktop to:
"Search my emails for messages from john@example.com"
"Read my latest unread emails"
"Create a new Google Doc called 'Meeting Notes'"
"Read the data from my spreadsheet"
"Show me my task lists"
"Create a task to call dentist tomorrow"
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nosferatu-concorde/claude-google-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server