Google MCP Server
README.md
# Google MCP Server
MCP server for connecting Claude Desktop to Google Mail, Docs, Sheets, and Tasks.
## Setup
### 1. Google Cloud Console Setup
1. Go to [Google Cloud Console](https://console.cloud.google.com/)
2. Create a new project (or select existing)
3. Enable these APIs (APIs & Services → Library):
- Gmail API
- Google Docs API
- Google Sheets API
- Google Tasks API
4. 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`, `tasks`
- Add your email as a test user
5. 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
```bash
# 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 auth
```
### 3. Claude Desktop Configuration
#### Windows with WSL
Add to your Claude Desktop config (`%APPDATA%\Claude\claude_desktop_config.json`):
```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`:
```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`:
```json
{
"mcpServers": {
"google": {
"command": "node",
"args": ["/path/to/google-mcp-server/dist/index.js"]
}
}
}
```
## Available Tools
### Gmail
- `gmail_search` - Search emails with Gmail query syntax
- `gmail_read` - Read a specific email by ID
- `gmail_send` - Send an email
### Google Docs
- `docs_get` - Get document content
- `docs_create` - Create a new document
- `docs_append` - Append text to a document
### Google Sheets
- `sheets_read` - Read data from a range
- `sheets_write` - Write data to a range
- `sheets_create` - Create a new spreadsheet
### Google Tasks
- `tasks_list` - List task lists or tasks
- `tasks_create` - Create a new task
- `tasks_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"
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues