Create, manage, and inspect Google Meet sessions — directly from your AI workflows.
A Model Context Protocol (MCP) server that exposes Google Meet's API for creating meeting spaces, managing conference records, and retrieving participant information.
Overview
The Google Meet MCP Server provides full programmatic access to Google Meet through a stateless, multi-tenant interface:
Create, update, and end Google Meet meeting spaces
Retrieve conference records and meeting history
List and inspect participants and their session details
Perfect for:
Automating meeting creation and management from AI agents
Building assistants that can schedule, start, and end Meet sessions
Analyzing meeting attendance and participant data in LLM-powered pipelines
Tools
Creates a new Google Meet meeting space and returns its details including the join link.
Ends an active meeting space, disconnecting all participants.
Inputs:
- `name` (string, required) — Space resource name e.g. `spaces/abc-defg-hij`
output:
{}
Patches one or more fields of an existing meeting space using a field mask.
Inputs:
- `name` (string, required) — Space resource name e.g. `spaces/abc-defg-hij`- `update_mask` (string, required) — Comma-separated field mask for the patch operation e.g. `config.accessType`- `space` (string, required) — JSON string containing the updated space fields e.g. `{"config": {"accessType": "TRUSTED"}}`
output:
{ "name": "spaces/abc-defg-hij", "meetingUri"
Retrieves a single conference record by its resource name.
Inputs:
- `name` (string, required) — Conference record resource name e.g. `conferenceRecords/abc123`
Returns a paginated list of participants for a given conference record.
Inputs:
- `parent` (string, required) — Parent conference record resource name e.g. `conferenceRecords/abc123`- `page_size` (integer, optional) — Maximum number of participants per page- `page_token` (string, optional) — Pagination token from a previous response- `filter` (string, optional) — API filter expression e.g. `signedinUser.user='users/123'`
output:
{ "participants": [ { "name"
Retrieves a single participant session, representing one continuous join/leave interval.
Inputs:
- `name` (string, required) — Participant session resource name e.g. `conferenceRecords/abc123/participants/xyz/participantSessions/session1`
Returns a paginated list of all sessions for a given participant in a conference record.
Inputs:
- `parent` (string, required) — Parent participant resource name e.g. `conferenceRecords/abc123/participants/xyz`- `page_size` (integer, optional) — Maximum number of sessions per page- `page_token` (string, optional) — Pagination token from a previous response- `filter` (string, optional) — API filter expression