Skip to main content
Glama
gvbigdata

Gmail Drive MCP

by gvbigdata

⚡ Quick Start Guide - Gmail & Drive MCP

🎯 Goal

Access your Gmail and Google Drive data through a beautiful Streamlit interface.


Related MCP server: Google Workspace MCP

📦 Step 1: Install (2 minutes)

# Install dependencies
pip install -r requirements.txt

🔐 Step 2: Get Google Credentials (5 minutes)

A. Create Project

  1. Go to https://console.cloud.google.com/

  2. Click "New Project" → Name: gmail-drive-mcp → Create

B. Enable APIs

  1. Go to "APIs & Services" → "Library"

  2. Search and Enable:

    • Gmail API

    • Google Drive API

C. Create OAuth Credentials

  1. "APIs & Services" → "Credentials"

  2. "Create Credentials" → "OAuth client ID"

  3. 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

  4. Now "Create Credentials" → "OAuth client ID":

    • Type: Desktop app

    • Name: Gmail Drive Desktop

    • Download JSON

  5. Rename downloaded file to credentials.json

  6. 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:

  1. ✅ Browser opens automatically

  2. ✅ Sign in with your Google account

  3. ✅ Click "Allow"

  4. token.json created (your access token)

  5. ✅ Server starts on port 8000

Keep this terminal running!


🎨 Step 4: Open Streamlit UI (1 minute)

New terminal:

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:

  1. Run MCP server:

    python gmail_drive_mcp.py
  2. 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"]
        }
      }
    }
  3. Restart Claude Desktop

  4. 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! 🎉

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/gvbigdata/mcp_gmail_gdrive'

If you have feedback or need assistance with the MCP directory API, please join our Discord server