Google Workspace (GWS) MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| gws-path | No | Path to the gws binary. | gws |
| services | No | Comma-separated list of services to expose (e.g., drive,sheets,calendar,docs,gmail). Default is all services. |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| drive_files_listA | List files in Google Drive. Supports search queries via the 'q' parameter. Shared drive files are included automatically. |
| drive_files_getA | Get a file's metadata by ID. Shared drive files are supported automatically. |
| drive_files_createB | Create a new file in Google Drive. Use with bodyParams for metadata and optionally upload a local file. |
| drive_files_copyB | Copy a file. Useful for converting formats (e.g. markdown to Google Doc). |
| drive_files_updateC | Update a file's metadata or content. |
| drive_files_deleteA | Permanently delete a file. |
| drive_files_exportA | Export a Google Workspace file (Doc, Sheet, Slide) to a specific format. Returns JSON with export metadata. Use drive_files_download for automatic export with content returned inline. |
| drive_permissions_createB | Share a file by creating a permission. |
| sheets_getB | Get spreadsheet metadata. |
| sheets_values_getB | Read values from a spreadsheet range. |
| sheets_values_updateC | Write values to a spreadsheet range. |
| sheets_values_appendB | Append values after the last row of a spreadsheet range. |
| calendar_events_listB | List events from a calendar. |
| calendar_events_getA | Get a single calendar event by ID. |
| calendar_events_insertC | Create a new calendar event. |
| calendar_events_updateA | Update an existing calendar event with patch semantics (only supplied fields change). |
| calendar_events_deleteA | Delete a calendar event. |
| docs_getB | Get a Google Doc's content and metadata. |
| docs_createB | Create a new empty Google Doc. |
| docs_batchUpdateC | Apply updates to a Google Doc (insert text, formatting, etc). |
| gmail_messages_listB | List Gmail messages matching a query. |
| gmail_messages_getB | Get a single Gmail message by ID. |
| gmail_threads_listB | List Gmail threads matching a query. |
| gmail_threads_getA | Get a full Gmail thread by ID (all messages in the conversation). |
| gmail_threads_modifyA | Modify a Gmail thread: add/remove labels. To archive, remove INBOX. To mark read, remove UNREAD. To star, add STARRED. |
| tasks_tasklists_listA | List the authenticated user's task lists. |
| tasks_tasklists_getA | Get a task list by ID. |
| tasks_tasklists_insertB | Create a new task list. |
| tasks_tasklists_updateA | Update a task list (only supplied fields change). |
| tasks_tasklists_deleteA | Delete a task list. If it contains assigned tasks, the originals (in Docs/Chat Spaces) are also removed. |
| tasks_tasks_listA | List tasks in a task list. Excludes hidden and assigned tasks by default; set showHidden/showAssigned to include them. |
| tasks_tasks_getA | Get a task by ID. |
| tasks_tasks_insertA | Create a new task. Use parent to nest as a subtask, previous to position after a sibling. |
| tasks_tasks_updateA | Update a task (only supplied fields change). Common use: complete a task by setting status to "completed". |
| tasks_tasks_moveA | Move a task within its list or to another list. Use parent/previous to set position; destinationTasklist to change list. |
| tasks_tasks_deleteA | Delete a task. If assigned from Docs/Chat Spaces, the original is also removed. |
| tasks_tasks_clearA | Hide all completed tasks in a list. Cleared tasks are not deleted but stop appearing in default list responses. |
| drive_files_downloadA | Download a file's content from Google Drive. Returns the text content for text files, or a base64-encoded string for binary files. For Google Docs/Sheets/Slides, exports to a readable format (plain text by default). |
| gmail_drafts_createA | Create a Gmail draft. Pass threadId to attach the draft to an existing conversation (it will appear as a reply within that thread). The draft is NOT sent — open Gmail to review and send. |
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/conorbronsdon/gws-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server