remove_label
Remove a label from an email by providing the message ID and label ID, helping you keep your Gmail inbox organized.
Instructions
Remove a label from an email
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| messageId | Yes | Email message ID | |
| labelId | Yes | Label ID to remove |
Implementation Reference
- src/tools.ts:20-23 (schema)Zod schema for remove_label tool: validates messageId (string) and labelId (string) input parameters.
remove_label: z.object({ messageId: z.string().describe("Email message ID"), labelId: z.string().describe("Label ID to remove") }), - src/tools.ts:44-44 (registration)Tool description registered in toolDescriptions map for the 'remove_label' tool.
remove_label: "Remove a label from an email", - src/tools.ts:120-124 (handler)Handler case in handleToolCall switch: validates input, calls gmailService.removeLabel(), returns success message.
case "remove_label": { const v = validated as z.infer<typeof schemas.remove_label>; await gmailService.removeLabel(v.messageId, v.labelId); return { content: [{ type: "text", text: `Label ${v.labelId} removed from email ${v.messageId}.` }] }; } - src/gmail-service.ts:101-103 (handler)GmailService.removeLabel() method: calls modifyMessage with removeLabelIds to remove a label from an email via Gmail API.
async removeLabel(messageId: string, labelId: string): Promise<void> { await this.modifyMessage(messageId, { removeLabelIds: [labelId] }); } - src/gmail-service.ts:109-111 (helper)Private modifyMessage() helper that calls the Gmail users.messages.modify API endpoint.
private async modifyMessage(id: string, requestBody: any): Promise<void> { await this.gmail.users.messages.modify({ userId: 'me', id, requestBody }); }