YAGMS
An MCP server for interacting with the Gmail API, enabling email management.
yagms
Yet Another Gmail MCP Server
Setup and Usage
Gmail MCP Server
The Gmail MCP server provides tools to interact with your Gmail account through the Model Context Protocol (MCP).
Prerequisites
- Create OAuth credentials for Gmail API:
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the Gmail API
- Create OAuth 2.0 credentials (Desktop application)
- Download the credentials JSON file and save it as
~/.yagms-oauth.keys.json
Build this project
- Install Bun.
- Build the code
bun install
bun run build-gmail # It will emit ./dist/gmail.js
Authentication
Before using the Gmail MCP server, you need to authenticate with your Google account:
# Run the authentication flow
bun run dist/gmail.js auth
This will:
- Launch a browser window for you to sign in to your Google account
- Request permission to access your Gmail account
- Save the authentication credentials to
~/.yagms-credentials.json
Running the Server
After authentication, you can run the Gmail MCP server:
# Run the server
bun run src/gmail.ts
Configuration
You can customize the paths for OAuth keys and credentials using environment variables:
GMAIL_OAUTH_PATH: Path to the OAuth keys file (default:~/.yagms-oauth.keys.json)GMAIL_CREDENTIALS_PATH: Path to save the credentials (default:~/.yagms-credentials.json)
Available Tools
The Gmail MCP server provides the following tools:
-
list-emails: Get emails from your inbox
- Parameters:
senderEmail(optional): Filter by sender emailmaxResults(optional, default: 10): Maximum number of emails to returnlabelIds(optional, default: ["INBOX"]): Label IDs to filter by
- Parameters:
-
get-email: Get a specific email by ID
- Parameters:
emailId: The ID of the email to retrieve
- Parameters:
-
search-emails: Search for emails using Gmail search syntax
- Parameters:
query: Gmail search query (e.g., "from:[email protected] has:attachment")maxResults(optional, default: 10): Maximum number of emails to return
- Parameters:
-
get-labels: Get all Gmail labels
- No parameters required
Example MCP Configuration
Add this to your MCP settings file:
{
"mcpServers": {
"gmail": {
"command": "bun",
"args": ["run", "/path/to/yagms/dist/gmail.js"],
"env": {},
"disabled": false,
"autoApprove": []
}
}
}
関連サーバー
Facebook Ads
MCP server acting as an interface to the Facebook Ads, enabling programmatic access to Facebook Ads data and management features.
Gmail
Query live Gmail data using LLMs via CData's read-only MCP server.
Sinch Engage / MessageMedia MCP server
Sinch Engage (Sinch MessageMedia in AU) MCP server, which provides Sinch Engage APIs as MCP tools.
Telegram Notifier (Botfather)
Use botfather bot to notify yourself on Telegram.
Feishu/Lark OpenAPI MCP
Connects AI agents to the Feishu/Lark platform via its OpenAPI to automate tasks like document processing, conversation management, and calendar scheduling.
dTelecom STT
Real-time speech-to-text for AI assistants. Transcribe audio files with production-grade accuracy. Pay per use with USDC via x402 — no API keys needed.
Confluence
Interact with Confluence to execute CQL queries, retrieve page content, and update pages.
VoiceVox
A server for text-to-speech (TTS) using the VoiceVox engine.
Advanced TTS MCP Server
A high-quality, feature-rich Text-to-Speech (TTS) server for generating natural and expressive speech with advanced controls.
Wizzypedia MCP Server
Interact with Wizzypedia through the MediaWiki API, supporting both read-only and authenticated operations.