# MCP Google Workspace MCP server

Agent View of the PolicyLayer registry record for MCP Google Workspace: identity, probed posture, risk grade, and all 26 tools classified. HTML page: https://policylayer.com/tools/199-biotechnologies-mcp-google

## Facts

- Server id: `199-mcp/mcp-google`
- Homepage: https://github.com/199-mcp/mcp-google
- Registry record: grade F, identity unverified
- Lifecycle: active
- Rate-limited: no
- Tools: 26
- Tool categories present: Destructive, Read, Write
- Tags: 199 biotechnologies mcp google, admin
- Record last modified: 2026-10-03T20:08:15.189Z

## Tools (26)

| Tool | Category | Risk | Record |
| --- | --- | --- | --- |
| `delete-contact` | Destructive | Critical | https://policylayer.com/tools/199-biotechnologies-mcp-google/delete-contact.md |
| `delete-email` | Destructive | Critical | https://policylayer.com/tools/199-biotechnologies-mcp-google/delete-email.md |
| `delete-event` | Destructive | Critical | https://policylayer.com/tools/199-biotechnologies-mcp-google/delete-event.md |
| `delete-label` | Destructive | Critical | https://policylayer.com/tools/199-biotechnologies-mcp-google/delete-label.md |
| `get-contact` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/get-contact.md |
| `get-email` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/get-email.md |
| `get-freebusy` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/get-freebusy.md |
| `list-calendars` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-calendars.md |
| `list-colors` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-colors.md |
| `list-contacts` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-contacts.md |
| `list-emails` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-emails.md |
| `list-events` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-events.md |
| `list-labels` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/list-labels.md |
| `search-events` | Read | Low | https://policylayer.com/tools/199-biotechnologies-mcp-google/search-events.md |
| `batch-update-emails` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/batch-update-emails.md |
| `create-contact` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/create-contact.md |
| `create-draft` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/create-draft.md |
| `create-event` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/create-event.md |
| `create-label` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/create-label.md |
| `send-draft` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/send-draft.md |
| `send-email` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/send-email.md |
| `update-contact` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/update-contact.md |
| `update-draft` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/update-draft.md |
| `update-email` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/update-email.md |
| `update-event` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/update-event.md |
| `update-label` | Write | Medium | https://policylayer.com/tools/199-biotechnologies-mcp-google/update-label.md |

## Tool descriptions

- `delete-contact` — Remove contact permanently. Returns: empty on success. Use when: deleting person from contacts. Note: permanent deletion, use resourceName from list/get.
- `delete-email` — Move email to trash or delete permanently. Returns: success status. Use when: removing emails. Default: trash (recoverable). Set permanent=true for unrecoverable deletion.
- `delete-event` — Remove event from calendar. Returns: empty on success. Use when: canceling appointments. Note: permanent deletion, not recoverable.
- `delete-label` — Remove custom label. Returns: empty on success. Use when: cleaning up unused labels. Note: can
- `get-contact` — Retrieve one contact by resourceName. Returns: full contact with all requested fields. Use when: viewing detailed contact info. Note: resourceName format is
- `get-email` — Retrieve one email by messageId. Returns: full message with headers, body (plain/html), attachments metadata. Use when: reading email content after list-emails. Note: messageId from list-emails required.
- `get-freebusy` — Check calendar availability. Returns: busy time blocks per calendar. Use when: finding available slots, scheduling across calendars. Note: only shows busy/free, not event details.
- `list-calendars` — List user calendars. Returns: array of calendar objects with id, summary, accessRole, backgroundColor, primary. Use when: showing available calendars or finding calendar ID. Note:
- `list-colors` — Get color palette. Returns: event colors (1-11) and calendar colors with hex values. Use when: displaying color options for event/calendar styling. Note: colorId is string.
- `list-contacts` — List Google Contacts. Returns: array with resourceName, names, emailAddresses, phoneNumbers per contact. Use when: viewing contact list, searching by name. Note: use personFields to limit data.
- `list-emails` — Search emails in Gmail. Returns: array with id, threadId only (no content/labels). Use when: finding emails to get IDs for other operations. Note: retrieve full content with get-email per ID.
- `list-events` — List calendar events. Returns: array of event objects with id, summary, start, end, status, recurrence. Use when: viewing schedule, finding events. Note: supports batch (up to 50 calendars).
- `list-labels` — List Gmail labels. Returns: array with id, name, type (system/user). Use when: showing folder structure, finding label IDs. Note: includes system labels like INBOX, SENT.
- `search-events` — Search events by text. Returns: filtered array of events matching query in summary/description/location. Use when: finding specific events by keyword. Note: single calendar only.
- `batch-update-emails` — Modify multiple emails labels/status. Returns: empty on success (no response body). Use when: bulk operations on many emails. Limit: 1000 IDs per request. For single: use update-email.
- `create-contact` — Create new contact. Returns: created contact with resourceName, etag, metadata. Use when: adding new person to contacts. Note: returns new resourceName for future operations.
- `create-draft` — Create unsent email draft. Returns: draft id and message. Use when: composing email for later editing/sending. Not for immediate send - use send-email instead.
- `create-event` — Create calendar event. Returns: created event with id, htmlLink, start, end, status. Use when: scheduling new appointments/meetings. Note: supports recurring events via recurrence.
- `create-label` — Create custom label. Returns: new label with id, name, type=
- `send-draft` — Send saved draft. Returns: sent message with id, threadId, labelIds. Use when: sending previously created draft. Note: draft is deleted after sending.
- `send-email` — Send new email or reply. Returns: sent message id and threadId. Use when: composing new email or replying to thread. For replies: provide replyToMessageId.
- `update-contact` — Modify existing contact. Returns: updated contact with new etag. Use when: changing contact details. Note: requires updatePersonFields to specify what to update.
- `update-draft` — Modify existing draft. Returns: updated draft with id, message. Use when: editing unsent draft content. Note: replaces entire draft content.
- `update-email` — Modify single email labels/status. Returns: updated message with new labelIds. Use when: marking one email read/unread/starred. For multiple: use batch-update-emails. Labels: UNREAD, STARRED, IMPORTANT, INBOX.
- `update-event` — Modify existing event. Returns: updated event with id, summary, start, end. Use when: rescheduling, changing details. Note: supports recurring event scopes (single/all/future).
- `update-label` — Modify label properties. Returns: updated label. Use when: renaming labels, changing visibility. Note: can

## Related servers

- UnClick (1662 tools) — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server.md
- Apibase (1384 tools) — https://policylayer.com/tools/io-github-whiteknightonhorse-apibase.md
- Delx Mcp A2a (1068 tools) — https://policylayer.com/tools/io-github-davidmosiah-delx-mcp-a2a.md
- MCP Framework Personal (912 tools) — https://policylayer.com/tools/inggerman-mcps.md
- Hermoso (896 tools) — https://policylayer.com/tools/hermoso.md
- Nodebench (824 tools) — https://policylayer.com/tools/io-github-homenshum-nodebench.md
- Altium-MCP-Suite (817 tools) — https://policylayer.com/tools/altium-mcp-suite.md
- Eda Agent (777 tools) — https://policylayer.com/tools/eda-agent.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=199-biotechnologies-mcp-google · API: https://policylayer.com/registry/api · Recommended policies for every tool: https://policylayer.com/policies/199-biotechnologies-mcp-google
