google-workspace-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GWM_HOME | No | Override config home directory. Defaults to $XDG_CONFIG_HOME/google-workspace-mcp or ~/.config/google-workspace-mcp | |
| GWM_ACCOUNTS | No | Comma-separated list of account slugs or inline JSON map to expose. Omit to expose all accounts from registry. | |
| GWM_TOKENS_DIR | No | Override directory for per-account token files. | |
| GWM_CREDENTIALS | No | Override path to OAuth client credentials JSON file. | |
| GWM_ACCOUNTS_FILE | No | Override path to account registry JSON file. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| accounts_listA | List the configured Google accounts and whether each has a valid token. |
| gmail_sendA | Send an email immediately from the given account. |
| gmail_draft_createC | Create a Gmail draft. Returns {id, message: {...}}. |
| gmail_draft_updateC | Overwrite an existing draft's contents. |
| gmail_draft_sendC | Send an existing draft. |
| gmail_draft_deleteC | Permanently delete a draft (the thing the default connector can't do). |
| gmail_drafts_listC | List drafts. |
| gmail_searchB | Search messages with Gmail's query syntax (e.g. 'from:foo subject:bar'). |
| gmail_message_getC | Fetch one message. |
| gmail_message_trashB | Move a message to Trash (reversible for 30 days). |
| gmail_message_modifyC | Add/remove labels on a message (e.g. mark read by removing UNREAD). |
| gmail_labels_listC | List all labels for the account. |
| gmail_label_createA | Create a label. Nested labels use 'Parent/Child' names; create each parent level first. Idempotent: an existing label is returned as-is. |
| gmail_thread_getC | Fetch a whole thread (all messages). |
| gmail_attachment_downloadA | Download one attachment to a local path. Get |
| calendar_listC | List all calendars the account can access. |
| calendar_events_listC | List events. |
| calendar_event_getC | Fetch one event. |
| calendar_event_createB | Create an event. |
| calendar_event_updateB | Patch an existing event — only the fields you pass are changed. |
| calendar_event_deleteC | Delete an event. |
| drive_searchB | List/search files. |
| drive_file_getC | Get a file's full metadata. |
| drive_file_downloadB | Download a file. For Google Docs/Sheets/Slides, pass |
| drive_file_uploadB | Upload a local file to Drive. |
| drive_file_moveC | Move a file to a new folder. |
| drive_file_renameD | Rename a file. |
| drive_file_trashC | Move a file to trash (reversible). |
| drive_folder_createC | Create a new folder. |
| drive_file_shareC | Share a file with someone by email. |
| tasklist_listA | List the account's task lists (each has an id + title). |
| tasklist_createC | Create a new task list. |
| tasklist_deleteB | Delete a task list and all its tasks. Irreversible. |
| task_listB | List tasks in a list. Find ids via tasklist_list; '@default' is the account's default list. |
| task_getC | Fetch a single task. |
| task_createA | Create a task. |
| task_updateA | Patch a task's fields. status='completed' completes it (or use task_complete). |
| task_completeB | Mark a task completed (shortcut for status='completed'). |
| task_deleteC | Delete a task. Irreversible. |
| task_moveB | Reposition a task: under |
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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/rajool/google-workspace-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server