--- name: gws-gmail description: Read and manage Gmail across all connected Google accounts — search, send, reply, draft, archive, and label emails. command: /gws-gmail verified: true --- # Google Gmail Skill ## Overview This skill guides you in using the `google_gmail` MCP tool to manage email across all connected Google accounts. ## Available Subcommands | Subcommand | Description | | ------------------------- | ----------------------------------------------------------------------- | | `list` | List recent emails (defaults to INBOX). Use `--query` for Gmail search. | | `read ` | Read a full email thread by message ID. | | `send` | Compose and send a new email. | | `reply ` | Reply to a specific message. | | `draft` | Save a draft without sending. | | `archive ` | Archive a message (remove from INBOX). | | `mark-read ` | Mark a message as read. | | `mark-unread ` | Mark a message as unread. | | `label ` | Apply or remove Gmail labels. | ## Account Routing - **Reads** (list, read): Omit `account` to query **all** accounts simultaneously. - **Writes** (send, reply, draft, archive, label, mark-read, mark-unread): You **must** specify `account`. If the user hasn't said which account, ask them first. ``` google_gmail(command: "list --query 'is:unread'") // all accounts google_gmail(command: "send --to 'x@example.com' --subject 'Hi'", account: "Work") ``` ## Key Flags | Flag | Description | | ------------------- | --------------------------------------- | | `--query ` | Gmail search query (list only) | | `--max ` | Max results to return (default: 20) | | `--to ` | Recipient email address | | `--cc ` | CC recipient | | `--subject ` | Email subject | | `--body ` | Email body (plain text) | | `--label-ids ` | Comma-separated label IDs to add/remove | ## Workflow: Reading and Replying 1. List emails: `google_gmail(command: "list --query 'is:unread'")` 2. Read a specific email: `google_gmail(command: "read ")` 3. Reply: `google_gmail(command: "reply --body 'Thanks!'", account: "Work")` ## Error Handling - If no accounts are connected, direct user to Settings → Integrations. - If `account` is required but not specified, ask the user which account to use before proceeding.