Skip to main content
Glama

Server Details

A MCP server for Gmail that lets you search, read, and draft emails and replies.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
mintmcp/servers
GitHub Stars
6

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.

Tool Definition Quality

Score is being calculated. Check back soon.

Available Tools

11 tools
add_labelsInspect

Add one or more labels to an email message. Use list_labels to find label IDs. Common system label IDs: INBOX, STARRED, IMPORTANT, UNREAD, SPAM, TRASH.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailIdYesEmail ID to add labels to (from search_email or get_email)
labelIdsYesArray of label IDs to add (e.g., ['STARRED', 'Label_123'])

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
messageYes
labelIdsNo
threadIdYes
create_labelInspect

Create a new Gmail label. Labels can be used to organize emails. After creation, use add_labels to apply the label to messages.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new label (e.g., 'Projects/Alpha' for nested labels)
labelListVisibilityNoWhether to show the label in the label list: labelShow (default), labelShowIfUnread, or labelHide
messageListVisibilityNoWhether to show the label in the message list: show (default) or hide

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
nameYes
typeNo
messageYes
delete_label
Destructive
Inspect

Permanently delete a Gmail label. This removes the label from all messages but does not delete the messages themselves. Only user-created labels can be deleted; system labels (INBOX, SENT, etc.) cannot be removed.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesID of the label to delete (from list_labels)

Output Schema

ParametersJSON Schema
NameRequiredDescription
labelIdYes
messageYes
draft_emailInspect

Create a new email draft saved to the Drafts folder. Use this when composing an email to review or send later. The draft can be sent using send_draft. Plain text is automatically formatted with markdown. Optionally provide HTML for rich formatting.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoCC recipient email addresses
toYesRecipient email addresses (e.g., ['user@example.com'])
bccNoBCC recipient email addresses
subjectYesEmail subject line
body_htmlNoOptional HTML version for rich formatting
body_textYesPlain text email body. Supports markdown formatting

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
messageYes
createdMessageYes
draft_replyInspect

Create a reply draft to an existing email, maintaining the conversation thread. Use this to compose a response that can be reviewed before sending. Automatically adds 'Re: ' prefix to subject and preserves email threading. The reply_all parameter determines whether to reply to all original recipients or just the sender. Plain text supports markdown formatting.

ParametersJSON Schema
NameRequiredDescriptionDefault
email_idYesID of the email to reply to (from search_email or get_email)
body_htmlNoOptional HTML version for rich formatting
body_textYesReply message text. Supports markdown formatting
reply_allNotrue: reply to sender and all recipients. false: reply only to sender. Default: true

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
messageYes
createdMessageYes
get_attachment
Read-only
Inspect

Download an email attachment by its ID. Use after get_email to fetch the actual attachment content. Pass the filename and mimeType from get_email's attachment metadata. Text files (txt, csv, json, html, xml, md) are returned as decoded text. Images (png, jpg, gif, webp) are returned as viewable image content. Other files are returned as base64-encoded data. Attachments over 10MB are rejected.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailIdYesEmail ID from search_email or get_email
filenameYesFilename from get_email attachment metadata
mimeTypeYesMIME type from get_email attachment metadata (e.g. application/pdf, image/png)
attachmentIdYesAttachment ID from get_email attachment metadata

Output Schema

ParametersJSON Schema
NameRequiredDescription
sizeYes
contentYesBase64 data for binary, decoded text for text files
encodingYes
filenameYes
mimeTypeYes
get_email
Read-only
Inspect

Retrieve the complete content of a specific email using its ID from search_email. Use this to read the full email body (text or HTML), see all recipients (to, cc, bcc), and access the complete headers. This is necessary after search_email since search only returns snippets, not the actual email content.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailIdYesEmail ID from search_email results

Output Schema

ParametersJSON Schema
NameRequiredDescription
ccNo
idYes
toNo
bccNo
bodyYes
dateNo
fromNo
labelsYes
snippetYes
subjectYes
threadIdYes
attachmentsYes
list_labels
Read-only
Inspect

List all Gmail labels for the authenticated user. Returns both system labels (INBOX, SENT, TRASH, etc.) and user-created labels with message/thread counts. Use this to discover label IDs needed for add_labels, remove_labels, or search_email queries.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
labelsYes
remove_labelsInspect

Remove one or more labels from an email message. Use list_labels to find label IDs. Removing INBOX effectively archives the message. Removing UNREAD marks it as read.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailIdYesEmail ID to remove labels from (from search_email or get_email)
labelIdsYesArray of label IDs to remove (e.g., ['UNREAD', 'Label_123'])

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
messageYes
labelIdsNo
threadIdYes
search_email
Read-only
Inspect

Search for emails in Gmail to find specific messages or filter the inbox. Use this when the user wants to find emails by sender, subject, date, content, or other criteria. Returns email summaries suitable for listing and overview - to read full email content, attachments, or HTML body, use get_email with the returned email ID. This tool searches across all folders unless specified otherwise in the query.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query using Gmail search syntax. Examples: - from:john@example.com (emails from specific sender) - to:jane@example.com (emails to specific recipient) - subject:meeting (emails with 'meeting' in subject) - has:attachment (emails with attachments) - is:unread (unread emails) - is:important (important emails) - after:2025/1/1 (emails after date) - before:2025/1/31 (emails before date) - newer_than:1d (emails from last day, use 1h for hour, 1w for week) - older_than:1d (emails older than 1 day) - label:inbox (emails in inbox) - in:sent (sent emails) - bare words search all fields Combine with AND/OR operators. Date format: YYYY/M/D or relative (1d, 1w, 1m).
pageTokenNoToken for fetching the next page of results
maxResultsNoMaximum number of results to return (default 10, max 100)

Output Schema

ParametersJSON Schema
NameRequiredDescription
emailsYes
messageNo
resultCountYes
nextPageTokenYes
send_draftInspect

Send a previously created draft email. Use this after draft_email or draft_reply when ready to send. The draft will be moved from Drafts to Sent folder automatically. This action cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftIdYesDraft ID from draft_email or draft_reply response

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
messageYes
labelIdsNo
threadIdYes

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.