MCP ExplorerExplorer

Google Mcp Remote

@vakharwalad23on 10 months ago
5 MIT
FreeCommunity
AI Systems
#agents#cloudflare#cloudflare-workers#durable-objects#google#google-api#mcp#mcp-server#modelcontextprotocol
Collection of Google-native tools (e.g., Gmail, Calendar) for the MCP

Overview

What is Google Mcp Remote

google-mcp-remote is a Cloudflare Workers-based MCP server implementation that provides access to various Google API tools such as Gmail, Calendar, Drive, and more, designed to integrate with AI clients like Claude or Cursor.

Use cases

Use cases include automating email sending, scheduling events, managing tasks, organizing files, and retrieving information from Google services, making it suitable for developers, businesses, and individual users.

How to use

To use google-mcp-remote, deploy your own instance to ensure control over your data and API access. Follow the deployment instructions provided in the README to set it up and configure it according to your needs.

Key features

Key features include sending and managing emails via Gmail, creating and managing calendar events, handling files in Google Drive, managing tasks, searching for YouTube videos, and accessing Google Contacts.

Where to use

google-mcp-remote can be used in various fields such as personal productivity, project management, communication, and data organization, especially where integration with Google services is beneficial.

Content

MseeP.ai Security Assessment Badge

Google MCP Remote

Verified on MseeP


A Cloudflare Workers-based MCP server implementation that provides Google API tools (Gmail, Calendar, Drive, etc.) for the Model Context Protocol, designed to integrate seamlessly with AI clients like Claude or Cursor.

⚠️ SECURITY WARNING: Do not use someone else’s deployed instance of this server as it requires access to your Google account and personal data. Always deploy your own instance to maintain control over your data and API access.

Features

  • Gmail:
    • Send emails with multiple recipients (to, cc, bcc) and HTML content
    • List emails with custom queries, labels, and result limits
    • Read specific emails by ID
    • Manage labels (add, remove, list)
    • Draft and delete emails
  • Calendar:
    • List calendars and set a default calendar
    • Create events with details (summary, start/end time, attendees, etc.)
    • List upcoming events with customizable filters
    • Update or delete existing events
    • Find free time slots for scheduling
  • Drive:
    • Filter files with search queries
    • Sort by modification date or other criteria
    • View detailed file metadata
    • Read file content (text, docs, spreadsheets)
    • Create new files with specified content
    • Update existing files
    • Delete files (trash or permanent)
    • Share files with specific permissions
  • Tasks:
    • View all task lists
    • Create new task lists
    • Delete existing task lists
    • List tasks with filters
    • View task details
    • Create tasks with title, notes, and due dates
    • Update task properties
    • Mark tasks as complete
    • Delete tasks
  • YouTube:
    • Search for videos with customizable parameters
    • Get detailed information about specific videos
  • Contacts:
    • List and search contacts from Google Contacts
    • Get detailed information about specific contacts

Deployment Instructions

Prerequisites

  1. Google Cloud Project:

    • Create a project in the Google Cloud Console

    • Set up OAuth 2.0 credentials (Client ID and Client Secret)

    • Enable the APIs you need (Gmail, Calendar, Drive, Tasks, YouTube, People/Contacts)

    • Add authorized JavaScript origins and redirect URIs for your Cloudflare Worker

    • Redirect URI should be in the format:

      Deployed URL + /callback
       https://your-project.your-username.workers.dev/callback
      
      For local testing:
       http://localhost:8788/callback
      
  2. Cloudflare Account:

    • Sign up for a Cloudflare account if you don’t have one
    • Install Wrangler CLI: bun install -g wrangler
    • Authenticate with Cloudflare: wrangler login

Deployment Steps

  1. Clone the repository:

    git clone https://github.com/vakharwalad23/google-mcp-remote.git
    cd google-mcp-remote
    
  2. Install dependencies:

    bun install
    
  3. Configure secrets:
    Set your Google OAuth credentials as secrets in Cloudflare:

    wrangler secret put GOOGLE_OAUTH_CLIENT_ID
    wrangler secret put GOOGLE_OAUTH_CLIENT_SECRET
    wrangler secret put COOKIE_ENCRYPTION_KEY
    

    (For the COOKIE_ENCRYPTION_KEY, generate a random string to secure cookies)

  4. Create a KV namespace:

    wrangler kv:namespace create OAUTH_KV
    

    Then update your wrangler.jsonc with the ID from the output

  5. Deploy to Cloudflare Workers:

    bun run deploy
    
  6. Note your deployment URL:
    After deployment, Wrangler will provide a URL like: https://your-project.your-username.workers.dev

Usage with AI Clients

Once deployed, configure your AI client (Claude, Cursor, etc.) to use your MCP server.

Claude Configuration

Edit your claude_desktop_config.json or for cursor mcp.json:

{
  "mcpServers": {
    "google-mcp-remote": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://your-project.your-username.workers.dev/sse"
      ]
    }
  }
}

Example Commands

You can now ask Claude to perform tasks using your Google account:

Send an email to [email protected] with the subject "Meeting Notes" and body "Here are the notes from today."
List my upcoming calendar events for the next 3 days.
Create a calendar event titled "Team Sync" tomorrow at 10 AM for 1 hour.
Search YouTube for recent videos about machine learning.

Alternative Usage Methods

Using with Cloudflare AI Playground

You can test the MCP server online using Cloudflare AI Playground:

  1. Open Cloudflare AI Playground
  2. Enter your MCP server URL with the /sse path:
    https://your-project.your-username.workers.dev/sse
    
  3. Start interacting with your Google services through the playground interface

Offline Testing with MCP Inspector

For local development and testing without deploying to Cloudflare:

  1. Create a .dev.vars file in your project root with the necessary environment variables:

    GOOGLE_OAUTH_CLIENT_ID="your-client-id"
    GOOGLE_OAUTH_CLIENT_SECRET="your-client-secret"
    COOKIE_ENCRYPTION_KEY="your-random-encryption-key"
    
  2. Use Bun:

    # Install dependencies
    bun install
    
    # Run local development server
    bun run dev
    
  3. Test with MCP Inspector:

    bunx @modelcontextprotocol/inspector@latest
    

    This launches a local interface to test your MCP server functionality

OAuth Authorization

The first time you use the server with an AI client, you’ll need to authorize access to your Google account:

  1. The server will display an approval dialog
  2. Approve the MCP client access to your server
  3. Follow the Google OAuth flow to grant API access
  4. After authorization, you’ll be redirected back to your AI client

Local Development

To run the server locally:

bun install
bun run dev

This will start a local development server, typically at http://localhost:8788

Troubleshooting

  • OAuth Issues: Ensure your Google Cloud project has the correct redirect URIs set
  • API Permissions: Check that you’ve enabled all required APIs in Google Cloud Console
  • Token Expiration: If you encounter authentication errors, try clearing the KV storage and re-authenticating

Thank you for using Google MCP Remote! If you have any questions or suggestions, feel free to open an issue or contribute to the project.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers