Local MCP server for Google Workspace (Gmail, Drive, Calendar, Sheets, Docs, Contacts, Tasks, Meet, Search Console, +Forms/Chat/Admin) across multiple accounts — OAuth-only, encrypted token storage, deny-by-default writes.
Inferred from the transports this listing declares (stdio). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
GOOGLE_CLIENT_SECRETOAuth apprequiredOAuth 2.0 Desktop client secret paired with GOOGLE_CLIENT_ID.
MASTER_KEYAPI keyoptionalBase64 32-byte key encrypting the local token store; auto-generated and stored for you when unset.
Declared by the author in the official MCP registry. Forge does not store, broker, or ever see these values — the config below is scaffolded with placeholders you fill in locally.
forge verify mcp-google-multiVerification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.
reports_activities_listList Admin Activity audit log entries. Filter by application (login, drive, gmail, admin, token, etc.), user, date range, event. The single most useful admin endpoint for SMB visibility.List Admin Activity audit log entries. Filter by application (login, drive, gmail, admin, token, etc.), user, date range, event. The single most useful admin endpoint for SMB visibility.
No input schema was published for this tool.
admin_users_listList users in the Workspace customer. Filter by domain or customer=my_customer.List users in the Workspace customer. Filter by domain or customer=my_customer.
No input schema was published for this tool.
admin_users_getGet a single Workspace user by email or user IDGet a single Workspace user by email or user ID
No input schema was published for this tool.
admin_users_updateUpdate a Workspace user (PATCH semantics). Gated by write-control (a CUD tool).Update a Workspace user (PATCH semantics). Gated by write-control (a CUD tool).
No input schema was published for this tool.
admin_groups_listList groups in the Workspace customerList groups in the Workspace customer
No input schema was published for this tool.
admin_group_members_listList members of a Workspace groupList members of a Workspace group
No input schema was published for this tool.
analytics_account_summariesList every Google Analytics (GA4) account and property this Google account can access, with their numeric property IDs. The starting point for any Analytics question ("what properties do I have?").List every Google Analytics (GA4) account and property this Google account can access, with their numeric property IDs. The starting point for any Analytics question ("what properties do I have?").
No input schema was published for this tool.
analytics_run_reportRun a Google Analytics (GA4) report: metrics over a date range, optionally grouped by dimensions — the workhorse for questions like "how many users last week, by country". Dates accept YYYY-MM-DD or relative forms ("today", "yesterday", "28daysAgo"). Also accepts the native GA4 request shapes direc…Run a Google Analytics (GA4) report: metrics over a date range, optionally grouped by dimensions — the workhorse for questions like "how many users last week, by country". Dates accept YYYY-MM-DD or relative forms ("today", "yesterday", "28daysAgo"). Also accepts the native GA4 request shapes direc…
No input schema was published for this tool.
analytics_run_realtime_reportRun a GA4 realtime report: who is on the site right now (last 30 minutes). Realtime supports a restricted set of names, e.g. metrics activeUsers, screenPageViews, eventCount, keyEvents; dimensions country, city, deviceCategory, unifiedScreenName, eventName.Run a GA4 realtime report: who is on the site right now (last 30 minutes). Realtime supports a restricted set of names, e.g. metrics activeUsers, screenPageViews, eventCount, keyEvents; dimensions country, city, deviceCategory, unifiedScreenName, eventName.
No input schema was published for this tool.
analytics_get_metadataList every valid dimension and metric API name for a GA4 property, including its custom definitions. Call this before analytics_run_report when unsure which names exist. Property "0" returns the standard set without property access.List every valid dimension and metric API name for a GA4 property, including its custom definitions. Call this before analytics_run_report when unsure which names exist. Property "0" returns the standard set without property access.
No input schema was published for this tool.
calendar_list_calendarsList all calendars for a Google accountList all calendars for a Google account
No input schema was published for this tool.
calendar_list_eventsList events from a Google Calendar (trimmed view: descriptions capped, created/updated and empty fields omitted — use calendar_get_event for a full event)List events from a Google Calendar (trimmed view: descriptions capped, created/updated and empty fields omitted — use calendar_get_event for a full event)
No input schema was published for this tool.
calendar_get_eventGet a single Google Calendar event by IDGet a single Google Calendar event by ID
No input schema was published for this tool.
calendar_create_eventCreate a Google Calendar eventCreate a Google Calendar event
No input schema was published for this tool.
calendar_update_eventUpdate a Google Calendar eventUpdate a Google Calendar event
No input schema was published for this tool.
calendar_respond_eventRSVP to a calendar event as this account (accepted/declined/tentative) without touching any other attendeeRSVP to a calendar event as this account (accepted/declined/tentative) without touching any other attendee
No input schema was published for this tool.
calendar_delete_eventprivilegedDelete a Google Calendar eventDelete a Google Calendar event
No input schema was published for this tool.
calendar_quick_addCreate a calendar event from a natural language string. Google parses date, time, title, and guests automatically.Create a calendar event from a natural language string. Google parses date, time, title, and guests automatically.
No input schema was published for this tool.
calendar_move_eventprivilegedMove an event from one calendar to anotherMove an event from one calendar to another
No input schema was published for this tool.
calendar_list_instancesList all occurrences of a recurring calendar event (trimmed view like calendar_list_events — use calendar_get_event for a full event)List all occurrences of a recurring calendar event (trimmed view like calendar_list_events — use calendar_get_event for a full event)
No input schema was published for this tool.
calendar_get_freebusyCheck free/busy times for one or more calendars within a time window. Returns only busy blocks, not event details.Check free/busy times for one or more calendars within a time window. Returns only busy blocks, not event details.
No input schema was published for this tool.
calendar_create_calendarCreate a new calendar under the accountCreate a new calendar under the account
No input schema was published for this tool.
chat_spaces_listList Google Chat spaces the user is a member ofList Google Chat spaces the user is a member of
No input schema was published for this tool.
chat_spaces_getGet details about a single Chat spaceGet details about a single Chat space
No input schema was published for this tool.
chat_messages_createSend a message into a Chat space. Supply plain text or a Card v2 in cardsV2.Send a message into a Chat space. Supply plain text or a Card v2 in cardsV2.
No input schema was published for this tool.
chat_messages_listList messages in a Chat spaceList messages in a Chat space
No input schema was published for this tool.
contacts_searchSearch contacts by name, email, phone, or organizationSearch contacts by name, email, phone, or organization
No input schema was published for this tool.
contacts_resolveResolve a free-text name/alias to ONE canonical email address (ranked + tie-broken), so you need not hand-expand transliteration OR-queries. Returns a single confident match, an explicit ambiguous candidate list, or null when nothing matches. For picking a recipient before gmail_send.Resolve a free-text name/alias to ONE canonical email address (ranked + tie-broken), so you need not hand-expand transliteration OR-queries. Returns a single confident match, an explicit ambiguous candidate list, or null when nothing matches. For picking a recipient before gmail_send.
No input schema was published for this tool.
contacts_getGet a single contact by resource nameGet a single contact by resource name
No input schema was published for this tool.
contacts_listList all contacts (paginated)List all contacts (paginated)
No input schema was published for this tool.
contacts_createCreate a new contactCreate a new contact
No input schema was published for this tool.
contacts_updateUpdate an existing contact (reads current etag automatically)Update an existing contact (reads current etag automatically)
No input schema was published for this tool.
contacts_deleteprivilegedDelete a contact (permanent, cannot be undone)Delete a contact (permanent, cannot be undone)
No input schema was published for this tool.
contacts_groups_listList all contact groups (labels)List all contact groups (labels)
No input schema was published for this tool.
contacts_group_membersList members of a contact groupList members of a contact group
No input schema was published for this tool.
contacts_group_createCreate a new contact group (label)Create a new contact group (label)
No input schema was published for this tool.
docs_createCreate a new Google Docs documentCreate a new Google Docs document
No input schema was published for this tool.
docs_getGet document metadata (title, revision, named ranges). Optionally include tab content and choose a suggestionsViewMode.Get document metadata (title, revision, named ranges). Optionally include tab content and choose a suggestionsViewMode.
No input schema was published for this tool.
docs_readRead document content as plain text with a heading index (returns up to maxChars characters per call). Pass heading or headingIndex to read one section, tabId to read a specific tab.Read document content as plain text with a heading index (returns up to maxChars characters per call). Pass heading or headingIndex to read one section, tabId to read a specific tab.
No input schema was published for this tool.
docs_insert_textInsert text into a document at a specific position or at the endInsert text into a document at a specific position or at the end
No input schema was published for this tool.
40 of 40 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Local MCP server for Google Workspace (Gmail, Drive, Calendar, Sheets, Docs, Contacts, Tasks, Meet, Search Console, +Forms/Chat/Admin) across multiple accounts — OAuth-only, encrypted token storage, deny-by-default writes.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
The crawl stopped at the depth-4 limit. Anything below that level was never resolved.
The crawl stopped at the 60-package limit. The rest of the tree was never resolved.
36 more resolved packages are not drawn here (display cap: 24). Every dependency carrying an advisory is drawn regardless of the cap. Full inventory (CycloneDX SBOM)
19 declared dependencies never landed in the tree. They are missing from Forge's resolution, not from the package.
+7 more not listed. The counts by reason above cover all of them.
Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.