gmail-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | List all Gmail accounts currently connected to this server. Call this first whenever it's unclear which account a request should use, and ask the user to clarify if more than one account could match. |
| search_threadsA | Search Gmail threads using Gmail's search syntax (e.g. |
| get_threadA | Fetch a full Gmail thread by thread ID, including every message's headers and decoded body text. Use search_threads first to find the thread ID. |
| get_messageA | Fetch a single Gmail message by ID, including decoded plain-text/HTML body and attachment metadata (filenames and sizes, not the attachment contents themselves). |
| list_labelsA | List all Gmail labels (system labels like INBOX/UNREAD and user-created labels) for an account. |
| create_labelA | Create a new Gmail label. Fails with a clear message if a label with that exact name already exists. |
| label_messageA | Apply one or more existing labels to a single Gmail message. Label IDs come from list_labels. |
| label_threadA | Apply one or more existing labels to every message in a Gmail thread. Label IDs come from list_labels. |
| unlabel_messageB | Remove one or more labels from a single Gmail message. |
| unlabel_threadA | Remove one or more labels from every message in a Gmail thread. |
| create_draftA | Create a draft email in the account's Drafts folder. This does NOT send anything — it's safe to call freely, including when you're not fully sure the user wants to send yet. The user reviews and sends the draft themselves from Gmail. |
| list_draftsA | List existing drafts for an account, with basic metadata (subject, recipient, snippet). |
| send_emailA | ⚠️ IRREVERSIBLE: Sends a real email immediately on behalf of the user — there is no undo, no "are you sure" prompt from Gmail, and no draft-review step once this is called. Only call this tool after the human user has explicitly and unambiguously confirmed the exact recipient(s), subject, and body of THIS specific email in the current conversation. If there is any ambiguity about content, recipients, or intent — or if you have not shown the user the exact text you're about to send — use create_draft instead and ask the user to review and send it themselves. Never call this proactively, as part of a speculative multi-step plan, or based on inferred rather than explicitly stated intent. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/m-ishit/gmail-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server