⚡ Quick Start Guide - Gmail & Drive MCP
🎯 Goal
Access your Gmail and Google Drive data through a beautiful Streamlit interface.
---
📦 Step 1: Install (2 minutes)
# Install dependencies
pip install -r requirements.txt
---
🔐 Step 2: Get Google Credentials (5 minutes)
A. Create Project
- Go to https://console.cloud.google.com/
- Click "New Project" → Name:
gmail-drive-mcp→ Create
B. Enable APIs
- Go to "APIs & Services" → "Library"
- Search and Enable:
- Gmail API
- Google Drive API
C. Create OAuth Credentials
- "APIs & Services" → "Credentials"
- "Create Credentials" → "OAuth client ID"
- First time? Click "Configure Consent Screen":
- User Type: External
- App name:
Gmail Drive MCP - Add your email twice (support + developer)
- Scopes: Add these URLs:
https://www.googleapis.com/auth/gmail.readonly
https://www.googleapis.com/auth/drive.readonly
- Test users: Add your Gmail
- Save
- Now "Create Credentials" → "OAuth client ID":
- Type: Desktop app
- Name:
Gmail Drive Desktop - Download JSON
- Rename downloaded file to
credentials.json - Put it in your project folder
---
🚀 Step 3: First Run & Authentication (2 minutes)
# This will open browser for authentication
python gmail_drive_rest.py
What happens:
- ✅ Browser opens automatically
- ✅ Sign in with your Google account
- ✅ Click "Allow"
- ✅
token.jsoncreated (your access token) - ✅ Server starts on port 8000
Keep this terminal running!
---
🎨 Step 4: Open Streamlit UI (1 minute)
New terminal: ``bash streamlit run gmail_drive_ui.py ``
Access: http://localhost:8501
---
🎉 You're Done!
What you can do now:
📊 Dashboard Tab:
- See inbox count
- See spam count
- See total Drive files
- View storage usage
- Recent emails & files
📧 Gmail Manager Tab:
- Count emails by label
- List recent emails
- Search emails (e.g.,
from:boss@company.com)
📁 Drive Manager Tab:
- Count all files
- List recent files
- Search files by name
- Check storage quota
---
🔧 Troubleshooting
"credentials.json not found"
→ Download it from Google Cloud Console, rename it, put it in project folder
"Access blocked"
→ Make sure you enabled both Gmail API and Drive API
Browser doesn't open
→ Copy the URL from terminal and paste in browser
"Invalid grant"
→ Delete token.json and run again to re-authenticate
Connection error in Streamlit
→ Make sure gmail_drive_rest.py is still running in another terminal
---
📁 File Structure
your-project/
├── credentials.json ← Download from Google
├── token.json ← Auto-generated after auth
├── requirements.txt
├── gmail_drive_mcp.py ← MCP Server (for Claude)
├── gmail_drive_rest.py ← REST API (run this!)
├── gmail_drive_ui.py ← Streamlit UI (run this!)
└── .gitignore
---
🎓 Next Steps
Use with Claude Desktop:
- Run MCP server:
python gmail_drive_mcp.py
- Add to Claude config (
~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"gmail-drive": {
"command": "python",
"args": ["/full/path/to/gmail_drive_mcp.py"]
}
}
}
- Restart Claude Desktop
- Ask Claude:
- "How many emails do I have?"
- "Search my emails for messages from John"
- "How many files are in my Drive?"
---
⚡ Quick Commands Reference
# Install
pip install -r requirements.txt
# Run REST API (Terminal 1)
python gmail_drive_rest.py
# Run Streamlit (Terminal 2)
streamlit run gmail_drive_ui.py
# Run MCP for Claude (Alternative)
python gmail_drive_mcp.py
---
🔒 Security Reminder
NEVER commit these files to Git:
- ❌ credentials.json
- ❌ token.json
They contain your private keys! Already added to .gitignore ✅
---
🎯 Summary
| Terminal | Command | Purpose | |----------|---------|---------| | 1 | python gmail_drive_rest.py | REST API server | | 2 | streamlit run gmail_drive_ui.py | Web interface |
Access UI: http://localhost:8501
That's it! 🎉











