Skip to main content
Glama
annyzhou

Gmail MCP

by annyzhou

gmail-mcp

A Gmail MCP server using OAuth2 bearer token auth via the Dedalus MCP framework.

Tools

Messages

  • gmail_list_messages - List messages with search queries

  • gmail_get_message - Get a specific message by ID

  • gmail_send_message - Send an email

  • gmail_trash_message - Move message to trash

  • gmail_untrash_message - Remove message from trash

  • gmail_modify_message - Add/remove labels on a message

Threads

  • gmail_list_threads - List email threads (conversations)

  • gmail_get_thread - Get a thread with all messages

  • gmail_trash_thread - Move thread to trash

Labels

  • gmail_list_labels - List all labels

  • gmail_get_label - Get label details

  • gmail_create_label - Create a new label

  • gmail_delete_label - Delete a user label

Drafts

  • gmail_list_drafts - List draft emails

  • gmail_get_draft - Get a draft by ID

  • gmail_create_draft - Create a draft

  • gmail_send_draft - Send a draft

  • gmail_delete_draft - Delete a draft

Profile

  • gmail_get_profile - Get user's Gmail profile

Related MCP server: Gmail MCP Server

Authentication

Gmail API requires OAuth2. The access token is provided at runtime via Dedalus credential exchange.

Required OAuth scopes (depending on operations):

  • https://www.googleapis.com/auth/gmail.readonly - Read-only access

  • https://www.googleapis.com/auth/gmail.send - Send emails

  • https://www.googleapis.com/auth/gmail.modify - Modify messages/labels

  • https://www.googleapis.com/auth/gmail.compose - Create drafts

Usage

Prerequisites

  1. A Dedalus API key (dsk-live-* or dsk-test-*)

  2. The dedalus-labs Python SDK installed

Environment Variables

DEDALUS_API_KEY=dsk-live-your-key-here
DEDALUS_API_URL=https://api.dedaluslabs.ai
DEDALUS_AS_URL=https://as.dedaluslabs.ai

Example Client

See src/_client.py for a complete example client that handles the OAuth browser flow.

The first time you use the MCP server, you'll be prompted to authorize Gmail access via OAuth.

OAuth Flow

  1. On first request, you'll receive an AuthenticationError with a connect_url

  2. Open the URL in a browser to authorize Gmail access

  3. After authorization, retry the request - credentials are now stored

  4. Subsequent requests will work without re-authorization

Local Development

cd gmail-mcp
uv sync
uv run python src/main.py

API Reference

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A privacy-focused MCP server that grants Claude read-only access to Gmail using strict, user-defined filters to control which emails are exposed. It enables searching and fetching email metadata while ensuring data security through OAuth and localized filter enforcement.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Read-only MCP server for Gmail that enables searching threads, reading messages, and listing labels without any write access.
    215
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Read-only MCP server for IMAP email access, enabling AI agents to read, search, and monitor email without sending or deleting messages.
    77
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    A read-only MCP server that gives Claude unified access to multiple Gmail and Microsoft 365 accounts, enabling email search, reading, and listing through one connection.
    205
    MIT

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/annyzhou/gmail-mcp'

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