Gmail
About
Check and send emails directly through this server.
Details
- Author
- Highlight
- Repository
- highlight-ing/gmail-mcp-server
- Downloads
- 11
- License
- MIT License
- Categories
- Communication
- Tags
Jump to
- List recent emails with optional filtering
- Advanced email search using Gmail query syntax
- Send new emails with CC and BCC support
- Modify email labels (archive, trash, mark read/unread)
Setting up with Highlight
Follow these steps to add this server as a custom Highlight plugin:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
GmailCommand (node, npx, python, etc.)nodeArguments-
Argument 1
/path/to/google-gmail-server/build/index.js
Environment-
GOOGLE_ACCESS_TOKEN
your_access_token
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
1. Clone and Install:
git clone https://github.com/yourusername/google-gmail-mcp-server.git
cd google-gmail-mcp-server
npm install
2. Create OAuth Credentials:
Create a credentials.json file in the root directory:
{
"web": {
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
"redirect_uris": ["http://localhost:3001/code"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token"
}
}
3. Get Refresh Token:
node get-refresh-token.js
This will:
- Open your browser for Google OAuth authentication
- Request the following permissions:
-
https://www.googleapis.com/auth/gmail.modify-
https://www.googleapis.com/auth/gmail.send- Save the credentials to
token.json- Display the refresh token in the console
4. Configure MCP Settings:
Add the server configuration to your MCP settings file:
- For VSCode Claude extension: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- For Claude desktop app: ~/Library/Application Support/Claude/claude_desktop_config.json
Add this to the mcpServers object:
{
"mcpServers": {
"google-gmail": {
"command": "node",
"args": ["/path/to/google-gmail-server/build/index.js"],
"env": {
"GOOGLE_ACCESS_TOKEN": "your_access_token",
}
}
}
}
5. Build and Run:
npm run build
list_emails
List recent emails from your inbox with optional filtering. Parameters: maxResults (integer), query (string, optional)
search_emails
Advanced email search with Gmail query syntax. Parameters: query (string), maxResults (integer, optional)
send_email
Send new emails with support for CC and BCC. Parameters: to (string), subject (string), body (string), cc (string, optional), bcc (string, optional)
modify_email
Modify email labels (archive, trash, mark read/unread). Parameters: id (string), addLabels (array of strings, optional), removeLabels (array of strings, optional)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"gmail": {
"env": {
"GOOGLE_ACCESS_TOKEN": "your_access_token"
},
"args": [
"/path/to/google-gmail-server/build/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"GOOGLE_ACCESS_TOKEN": "your_access_token"
},
"args": [
"/path/to/google-gmail-server/build/index.js"
],
"command": "node"
}
Macos
{
"env": {
"GOOGLE_ACCESS_TOKEN": "your_access_token"
},
"args": [
"/path/to/google-gmail-server/build/index.js"
],
"command": "node"
}
Windows
{
"env": {
"GOOGLE_ACCESS_TOKEN": "your_access_token"
},
"args": [
"/path/to/google-gmail-server/build/index.js"
],
"command": "node"
}
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



