# Gmail Assistant MCP
MCP server that integrates with Gmail to fetch unread emails and generate draft emails using Claude.
Also connects with a Google Doc file that outlines my writing style and useful context.
## How it works
There's 3 toosl to use:
- Ask Claude to fetch emails
- Ask Claude to draft replies to any of those emails (where you are the "to" (not "cc"))
- Ask Claude to fetch last 10 emails and draft replies for ones where they are "to" you
## Requirements
- Python 3.10+
- Gmail account with App Password enabled
- Anthropic API key
- Google Cloud project with Docs API enabled (optional, for guidelines)
## Installation
1. Clone the repo
2. Create an activate virtual environment
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
3. Install dependencies
4. Set up Gmail App Password (via https://myaccount.google.com/security)
5. Set up Google Docs API for guidelines (via https://console.cloud.google.com/)
a. Create a project
b. Enable Google Docs API
c. Create credentials
d. Download credentials as `credentials.json` in project root
## Configuration
Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"gmail-assistant": {
"command": "/path/to/gmail-assistant-mcp/venv/bin/python",
"args": ["/path/to/gmail-assistant-mcp/src/gmail_assistant/server.py"],
"env": {
"EMAIL_USER": "your.email@gmail.com",
"EMAIL_APP_PASSWORD": "your-app-password",
"ANTHROPIC_API_KEY": "your-anthropic-api-key",
"GUIDELINES_DOC_ID": "your-google-doc-id-optional"
}
}
}
}
```