Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GWS_BINNoPath to the Google Workspace CLI (gws) binary. Use if it is not on PATH.
GWS_SERVICESNoComma-separated list of services to enable (e.g., drive,calendar). Other services are not registered.
GWS_MCP_TOKENNoBearer token required for HTTP transport.
GWS_READ_ONLYNoSet to '1' to refuse every write operation.
GOOGLE_WORKSPACE_CLI_CONFIG_DIRNoDirectory for gws config. Use to run multiple instances with different accounts.
GOOGLE_WORKSPACE_CLI_KEYRING_BACKENDNoSet to 'file' to use file-based keyring instead of OS keychain (needed on headless servers).

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
gmail_searchA

Search the mailbox with Gmail's own query syntax (from:, to:, subject:, has:attachment, newer_than:7d, is:unread). Returns message ids and snippets; use gmail_get_message for a full body.

gmail_get_messageC

One message in full, including the body and headers.

gmail_get_threadB

A whole conversation in order. Prefer this over fetching messages one by one when you need context.

gmail_create_draftA

Write a draft. It is NOT sent: it appears in Drafts for a person to review. This is the safe way to have an agent write email.

gmail_send_draftA

Send a draft that already exists. Separate from creating one on purpose: an agent drafts, a person sends. Cannot be undone.

gmail_modify_labelsA

Add or remove labels on a message. Use this to archive (remove INBOX), mark read (remove UNREAD) or triage.

gmail_list_labelsA

Every label with its id. Label ids are needed by gmail_modify_labels and are not the same as their display names.

drive_searchA

Find files with Drive query syntax (name contains 'x', mimeType='application/pdf', modifiedTime > '2026-01-01'). Returns id, name, type and link.

drive_get_fileB

Metadata for one file: name, type, size, owners, sharing and link.

drive_exportA

Read the CONTENT of a Google Doc, Sheet or Slide as text. drive_get_file returns metadata only, so this is the one to use when you need what is inside.

drive_create_folderA

Create a folder, optionally inside another.

drive_shareA

Grant someone access to a file. Sharing is visible to the other person immediately, so check the address before calling.

drive_trashA

Move a file to the trash. Recoverable for 30 days, unlike a permanent delete, which this tool deliberately does not do.

sheets_readB

Read a cell range, e.g. 'Sheet1!A1:D50'. Returns rows as arrays.

sheets_writeB

Overwrite a range with new values. Existing cells in that range are replaced.

sheets_appendA

Add rows to the end of a sheet without touching what is there. Prefer this over sheets_write when adding data.

sheets_getA

Spreadsheet structure: every sheet name, id, and dimensions. Read this before a range query so the sheet name is right.

sheets_createA

Create a new spreadsheet and return its id.

docs_getA

Read a Google Doc's full structured content. For plain prose, drive_export with text/markdown is usually easier to work with.

docs_createA

Create a new Google Doc with a title, and optionally an opening body of text.

docs_appendA

Add text to the end of a Doc without touching what is already there.

calendar_list_eventsA

Events in a window. Times are RFC3339, e.g. 2026-09-01T00:00:00Z. Defaults to the primary calendar.

calendar_create_eventA

Create an event. Adding attendees emails them immediately, so confirm the list before calling with any.

calendar_update_eventA

Change an existing event. Only the fields you pass are altered.

calendar_delete_eventA

Delete an event. Attendees are notified that it was cancelled, and it cannot be undone.

calendar_list_calendarsA

Every calendar this account can see, with its id. Needed before working on anything other than primary.

tasks_listsB

Every task list with its id.

tasks_listA

Tasks in a list. Completed ones are hidden unless you ask for them.

tasks_createA

Add a task. due is RFC3339 and Google ignores the time part, only the date.

tasks_completeC

Mark a task done.

slides_getB

A presentation's structure and the text on every slide.

slides_createA

Create an empty presentation and return its id.

forms_getC

A form's questions and settings.

forms_responsesC

Every response to a form.

contacts_searchB

Search your own contacts by name, email or company.

contacts_listB

All your contacts, paged.

workspace_rawA

Call any Google Workspace API method the curated tools do not cover. The CLI is generated from Google's discovery service, so this reaches roughly 400 methods across drive, gmail, sheets, docs, slides, calendar, tasks, people, chat, forms, keep, meet, script and admin-reports. Use workspace_schema first to learn the exact shape.

workspace_schemaA

The exact parameters and request body a method expects, straight from Google's discovery service. Read this before workspace_raw rather than guessing field names.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/navidmoazzez/google-workspace-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server