Provides tools for sending emails through Gmail, enabling automated email composition and delivery.
Gmail MCP Server
This MCP (Model Context Protocol) server provides tools for common operations with gmail.
Features
send_mail: Send new emails
Prerequisites
Python 3.12+
uv - Fast Python package installer and resolver
Google Cloud Console Setup
Go to: Google Cloud Console
Create a new project for this MCP Server
Enable Gmail API
Go to: APIs and services > Library
Search: Gmail API
Click on: Gmail API tile in the results
Click on: Enable
Setup OAuth
Go to: APIs and services > Credentials
Click on": Create Credentials > OAuth client ID
Choose Application Type: Web application
Add: Authorised redirect URIs: http://localhost:4321/
Create client
Download the JSON and save it to
credentials.jsonin this project root. This has the Client ID, Client Secret, etc.
Installation
Clone this repository:
git clone https://github.com/heuristech/gmail-mcp-server.git cd gmail-mcp-serverCreate a virtual environment and install the package in development mode:
# Create a virtual environment uv venv # Activate the virtual environment # On macOS/Linux: source .venv/bin/activate # On Windows: .venv\Scripts\activate # Install dependencies uv sync
Get Refresh Token
This will:
Start a server on
port:4321to receivetokenspost Google OAuthOpen your browser for Google OAuth
On succeeful authentication it will save
token.jsonwithrefresh_tokenalong withclient_id, andclient_secret.It will also display the
refresh_tokenon console.
Create .env
Setup the corresponding value using what you received in the previous step.
Inspect
Use MCP Inspector to test it in the development mode.
Claude Desktop Integration
Once your server is ready, install it in Claude Desktop
MCP server configuration: