gmail-mcp
Allows interacting with Gmail to list, read, and search emails, and manage labels.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gmail-mcplist my 5 most recent emails"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@symbolstar/gmail-mcp
A Node.js/TypeScript MCP (Model Context Protocol) stdio server that lets AI assistants like OpenClaw read your Gmail via the Gmail API.
Features
OAuth 2.0 authorization with Gmail read-only scope
list_emails— list inbox emails with optional filtersget_email— read a single email by message IDsearch_emails— search with Gmail query syntaxlist_labels— list all Gmail labels/foldersWorks with any MCP-compatible client (OpenClaw, Claude Desktop, etc.)
Quick Start
# Step 1: Authorize Gmail access (one-time setup)
npx @symbolstar/gmail-mcp auth
# Step 2: Done — the MCP server starts automatically when called by your clientSetup Guide
Step 1 — Create a Google Cloud Project & Enable Gmail API
Open Google Cloud Console
Create a new project (or select an existing one)
Go to APIs & Services → Library
Search for Gmail API and click Enable
Step 2 — Configure OAuth Consent Screen
Go to APIs & Services → OAuth consent screen
Under Get started, fill in:
App name: e.g.
Gmail MCPUser support email: your Gmail address
Under Audience, select External
Under Data Access, add the scope:
https://www.googleapis.com/auth/gmail.readonlyUnder Audience → Test users, add your Gmail address
⚠️ This step is required. Without it, you'll get
Error 403: access_deniedduring authorization.
Step 3 — Create OAuth Credentials
Go to APIs & Services → Credentials
Click Create Credentials → OAuth client ID
Application type: Desktop app
Name it anything (e.g.
gmail-mcp-cli)Click Create, then Download JSON
Step 4 — Place credentials.json
mkdir -p ~/.gmail-mcp
chmod 700 ~/.gmail-mcp
cp ~/Downloads/client_secret_*.json ~/.gmail-mcp/credentials.json
chmod 600 ~/.gmail-mcp/credentials.jsonThe file must be at:
~/.gmail-mcp/credentials.jsonStep 5 — Run Authorization
npx @symbolstar/gmail-mcp authThis will:
Start a temporary local OAuth callback server
Open your browser for Google authorization
Save the token to
~/.gmail-mcp/token.json
If the browser doesn't open automatically, copy the URL printed in the terminal and open it manually.
Integrate with OpenClaw
Add the following to your ~/.openclaw/openclaw.json:
{
"mcp": {
"servers": {
"gmail": {
"command": "npx",
"args": ["-y", "@symbolstar/gmail-mcp"]
}
}
}
}Then restart the gateway:
openclaw gateway restartIntegrate with Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"gmail": {
"command": "npx",
"args": ["-y", "@symbolstar/gmail-mcp"]
}
}
}Available Tools
list_emails
List inbox emails.
Parameter | Type | Default | Description |
| number | 10 | Max emails to return (up to 50) |
| string | — | Gmail search query (applied within INBOX) |
get_email
Read a single email by ID.
Parameter | Type | Description |
| string | Gmail message ID |
Returns: sender, recipients, subject, date, labels, plain text body, HTML body, attachment metadata.
search_emails
Search Gmail with full query syntax.
Parameter | Type | Default | Description |
| string | — | Gmail search query (required) |
| number | 10 | Max results (up to 50) |
list_labels
List all Gmail labels and folders. No parameters required.
File Locations
File | Path |
OAuth credentials |
|
OAuth token |
|
Troubleshooting
Missing Gmail OAuth credentials
Make sure you downloaded the OAuth client JSON and placed it at ~/.gmail-mcp/credentials.json.
Missing Gmail OAuth token
Run the authorization flow first:
npx @symbolstar/gmail-mcp authError 403: access_denied
Your Gmail account is not added as a Test user. Go to Google Cloud Console → OAuth consent screen → Audience → Test users and add your Gmail address.
invalid_grant
Token expired or revoked. Delete it and re-authorize:
rm ~/.gmail-mcp/token.json
npx @symbolstar/gmail-mcp authRequirements
Node.js 18+
A Google account with Gmail
License
MIT
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/SymbolStar/gmail-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server