Search recorded meetings by keyword
search_meetingsSearch the user's recorded meetings by keyword or phrase. Matches titles, notes, action items, participant names, and the spoken transcript. Returns ids, titles, dates, participants, note headings and each meeting's transcript hits: the time, the lines around each hit, and a cursor that opens get_meeting right at that point (pass it as get_meeting's cursor).
Use when the user asks what was said, decided, or assigned on a call, or names a person or project in the context of a meeting. Do not use to browse the whole archive (list_meetings) or to open a meeting whose id you already have (get_meeting). ChatGPT clients call the same search as search.
Does not create, edit, or delete meetings. query must be non-empty (a blank query is rejected, not treated as list-everything). Scans at most the 200 most recent synced meetings; truncated means older meetings were not searched, so total is matches in that window, not the lifetime corpus.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"query": "<query>"
},
"name": "search_meetings"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max matches to return. Default 10, cap 25. | |
| query | Yes | Keyword or phrase to find. Matched as plain text (case-insensitive) against titles, notes, action items, participants, and transcript — not a boolean query language. | |
| hits_per_meeting | No | Transcript hits to show per meeting, each with the lines around it and a cursor for get_meeting. Default 3, cap 10. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| total | No | Matches inside the scanned window. | |
| matches | No | ||
| results | No | ||
| scanned | No | Meetings actually scanned (≤ 200). | |
| truncated | No | True if older meetings were not scanned. |