Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GSUITE_MCP_HOSTNoHost to bind for HTTP/HTTPS transport. Defaults to 127.0.0.1; use 0.0.0.0 for direct HTTPS across containers.
GSUITE_MCP_PORTNoPort for HTTP/HTTPS transport. Defaults to 8443 for HTTPS and 8080 for HTTP.
DOCS_ENABLE_WRITENoEnables Google Docs document creation, text insertion/replacement, and advanced batch updates. Defaults to disabled.
GMAIL_ENABLE_SENDNoEnables immediate Gmail message/draft sending. Defaults to disabled.
GMAIL_ENABLE_WRITENoEnables Gmail label changes and draft create/update/delete. Defaults to disabled.
SHEETS_ENABLE_WRITENoEnables Google Sheets spreadsheet creation, value writes/appends/clears, and advanced formatting or structural updates. Defaults to disabled.
GMAIL_MCP_CONFIG_DIRNoOverrides the Google configuration/token directory. Defaults to ~/.config/gmail-mcp.
GSUITE_MCP_TRANSPORTNoTransport mode. Defaults to stdio; set https for direct TLS or http for a loopback proxy backend.
CALENDAR_ENABLE_WRITENoEnables Google Calendar event create/update/delete. Defaults to disabled.
GSUITE_MCP_BEARER_TOKENNoMCP access key. Alternative to GSUITE_MCP_BEARER_TOKEN_FILE; configure exactly one source.
GSUITE_MCP_TLS_KEY_FILENoRequired PEM private key for HTTPS transport.
GSUITE_MCP_TLS_CERT_FILENoRequired PEM certificate/full chain for HTTPS transport.
GSUITE_MCP_ALLOWED_ORIGINSNoOptional comma-separated exact HTTPS origins. Requests with an Origin header are otherwise rejected.
GSUITE_MCP_BEARER_TOKEN_FILENoFile containing the MCP access key, at least 32 characters. Alternative to GSUITE_MCP_BEARER_TOKEN; configure exactly one source.
GSUITE_MCP_ALLOW_PRIVATE_HTTPNoAllows the Docker image to serve plain private-network HTTP; every request still requires the bearer key.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
setup_authA

Authorize the first Google account or reauthorize an existing one. Call without url_or_code to begin, then call again with the post-consent localhost URL/code to finish. Requests Gmail, Calendar, read/write Google Docs and Sheets, and read-only Google Drive access. Existing accounts must reauthorize to grant newly added scopes.

setup_add_accountA

Authorize an additional Google account. Call without url_or_code to get a consent URL, then call again with the post-consent localhost URL/code. Once multiple accounts are configured, Google tools require email on every call.

setup_list_accountsA

List configured Google accounts and their granted OAuth scopes.

gmail_searchA

Search Gmail. Returns enriched metadata per match (from/subject/date/snippet/labelIds/hasAttachments) by default. Set format='ids' for the lighter ID-only response (cheaper, useful for piping to bulk ops).

gmail_get_messageA

Fetch a single Gmail message by ID with headers and decoded text body.

gmail_get_threadB

Fetch an entire Gmail thread by ID with all messages in order.

gmail_list_labelsB

List all Gmail labels (system and user).

gmail_list_draftsC

List Gmail drafts (most recent first).

gmail_get_draftC

Fetch a draft's full content.

gmail_download_attachmentsB

Download attachments from messages matching a Gmail search query into a destination directory. Files are named <messageId>__<originalFilename> to avoid collisions. Returns a summary.

gmail_bulk_exportA

Bulk-export messages matching a Gmail search query to a directory. Per message: <dest_dir>//{message.json, body.txt, body.html, attachments/...}. Also writes <dest_dir>/index.json summarizing all exported messages.

calendar_list_calendarsC

List the user's calendars.

calendar_list_eventsC

List events on a calendar in a time window. Default calendar_id is 'primary'.

calendar_get_eventC

Fetch a single event.

docs_get_documentB

Fetch a Google Doc as the full structured Google Docs API document, including all document tabs by default.

docs_read_documentB

Read the text of a Google Doc. Returns plain text for each tab (including nested tabs), plus combined text and document metadata. Tables are rendered as tab-separated rows.

drive_list_folderA

List the direct children of a Google Drive folder, including folders, files, and shortcuts. Supports My Drive and shared drives. Omit folder_id_or_url to list My Drive's root.

drive_search_filesA

Search Google Drive files and folders with Google Drive API query syntax (for example: name contains 'report', fullText contains 'quarterly', mimeType = 'application/pdf', or sharedWithMe). Includes My Drive and shared-drive items.

drive_get_fileB

Get detailed metadata for a Google Drive file, folder, or shortcut.

drive_read_fileA

Read a text file from Google Drive. Native Docs, Sheets, and Slides are exported to plain text/CSV by default. Binary files should be saved with drive_download_file instead.

drive_download_fileA

Download a Drive file to an exact local path. Native Google Workspace files are exported (Docs as text, Sheets as CSV, Slides as text) unless export_mime_type is specified.

drive_list_shared_drivesC

List shared drives that the selected Google account can access.

sheets_get_spreadsheetA

Get spreadsheet metadata, tab titles/IDs, dimensions, named ranges, and other properties. Cell grid data is excluded by default; enable it for formatting and restrict ranges for large spreadsheets. Discover spreadsheet IDs with drive_search_files using mimeType = 'application/vnd.google-apps.spreadsheet'.

sheets_read_valuesA

Read one or more ranges across spreadsheet tabs in one request. Returns valueRanges in requested order, with trailing empty rows/columns omitted. Choose FORMULA to inspect formulas or UNFORMATTED_VALUE for calculated numbers.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 24 tools

Disambiguation4/5

Tools are largely distinct, with clear service prefixes and action verbs. Minor overlap exists between docs_get_document and docs_read_document (structured vs plain text) and between gmail_download_attachments and gmail_bulk_export (attachments vs full messages), but descriptions clarify the boundaries.

Naming Consistency4/5

Names follow a consistent service_verb_noun snake_case convention (e.g., gmail_list_labels, calendar_get_event, drive_download_file). A few names omit the object (gmail_search, setup_auth) or use an adjective (gmail_bulk_export), but the pattern is still predictable.

Tool Count4/5

24 tools span five Google services plus auth, averaging roughly 4 tools per service, which is reasonable for a broad multi-service server. Gmail (8) and Drive (6) are somewhat heavy, but each tool serves a distinct function.

Completeness2/5

The surface is heavily read-only: Gmail lacks send/draft-create/modify, Calendar lacks create/update/delete events, and Docs/Sheets lack any write operations despite auth requesting write scopes. These are significant gaps for a Google Workspace server.

Maintenance

ActivityMaintained
ResponsivenessNo issues