Memoket — access your recording transcripts, summaries, and key takeaways over MCP.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
[content_fetch] Per-conversation compact report body for the given conversation_ids using Brief -> Summary -> Standard, where Standard is the first completed non-empty type=0 report.
optional brief ids from search_recordings.brief_ids
recording ids from brief hits
[content_fetch] Per-conversation compact report body for the given conversation_ids using Brief -> Summary -> Standard, where Standard is the first completed non-empty type=0 report.
| Argument | Type | Description |
|---|---|---|
| offset | integer | |
| brief_ids | array | optional brief ids from search_recordings.brief_ids |
| conversation_ids | array | recording ids from brief hits |
{
"type": "object",
"properties": {
"offset": {
"type": "integer"
},
"brief_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "optional brief ids from search_recordings.brief_ids"
},
"conversation_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "recording ids from brief hits"
}
}
}[metadata_query] Conversation-level metadata for the given conversation_ids: id, title, started_at, ended_at, duration_seconds, participants, language_code. No transcript, brief, or summary body.
| Argument | Type | Description |
|---|---|---|
| conversation_ids | array | required, non-empty; opaque recording ids |
{
"type": "object",
"properties": {
"conversation_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "required, non-empty; opaque recording ids"
}
}
}[content_fetch] Per-conversation summary body. With summary_ids, fetch exact summary reports from search_recordings. With conversation_ids only, fetch the latest summary report for each conversation. Paginated (offset).
| Argument | Type | Description |
|---|---|---|
| offset | integer | |
| summary_ids | array | optional summary ids from search_recordings.summary_ids |
| conversation_ids | array | required, non-empty; ids are opaque strings (may be 19-digit snowflake) |
{
"type": "object",
"properties": {
"offset": {
"type": "integer"
},
"summary_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "optional summary ids from search_recordings.summary_ids"
},
"conversation_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "required, non-empty; ids are opaque strings (may be 19-digit snowflake)"
}
}
}[content_fetch] Verbatim transcript of ONE recording; at most 100 lines / 4000 characters per page. Resume using both next_offset and next_text_offset from the returned item, including within a long line.
| Argument | Type | Description |
|---|---|---|
| offset | integer | |
| text_offset | integer | Character offset inside the first line; use returned next_text_offset, default 0. |
| conversation_id | string | required; opaque id string (may be 19-digit snowflake) |
{
"type": "object",
"properties": {
"offset": {
"type": "integer"
},
"text_offset": {
"type": "integer",
"description": "Character offset inside the first line; use returned next_text_offset, default 0."
},
"conversation_id": {
"type": "string",
"description": "required; opaque id string (may be 19-digit snowflake)"
}
}
}[content_fetch] Transcript lines associated with participant_ids in conversation_ids. Turns participant metadata into transcript evidence for exposed search results.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query | string | |
| participant_ids | array | participant ids from search_recordings.participant_ids |
| conversation_ids | array | recording ids scoped by participant hits |
{
"type": "object",
"properties": {
"limit": {
"type": "integer"
},
"query": {
"type": "string"
},
"participant_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "participant ids from search_recordings.participant_ids"
},
"conversation_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "recording ids scoped by participant hits"
}
}
}[metadata_query] List recordings by time window / participants. Returns id, title, started_at, ended_at, duration_seconds, participants, language_code (no content). Paginated (count default 100, max 200; offset). order_by ranks within the window. NOTE: `participants` are speaker labels — placeholders ('Speaker A/B') unless the user tagged them, not necessarily real names.
| Argument | Type | Description |
|---|---|---|
| desc | boolean | true = descending (default); false = ascending. |
| count | integer | page size (default 100, max 200) |
| offset | integer | page offset; use the response's next_offset |
| end_time | string | ISO 8601, filters on started_at |
| order_by | string | duration_seconds | started_at | action_item_count — server sorts the whole window and returns the top `count`. |
| start_time | string | ISO 8601, filters on started_at |
| participant_names | array | Exact case-insensitive filter on stored tagged participant names. Use when participant-field membership is requested; un-tagged or anonymized people do not match. |
[search] Unified recording search. Runs bounded searches over transcript lines, topic segments, memory atoms, participant metadata, titles, briefs, summaries, and action items in one call. Returns typed hits plus conversation_ids, line_ids, segment_ids, memory_atom_ids, participant_ids, brief_ids, summary_ids, action_item_ids. Chat execution expands hits into readable evidence automatically; external callers can fetch returned ids where a matching fetcher is advertised.
| Argument | Type | Description |
|---|---|---|
| query | string | Required. One phrase for a single concept, or a JSON array string of 2-4 distinct facets. |
| end_time | string | ISO 8601; filters by recording started_at. |
| start_time | string | ISO 8601; filters by recording started_at. |
| search_types | array | Optional lane filter. Omit to search all. Allowed: transcript, segment, memory_atom, participant, title, brief, summary, action_item. |
| conversation_ids | array | Optional: restrict to these opaque recording ids. |
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Required. One phrase for a single concept, or a JSON array string of 2-4 distinct facets."
},
"end_time": {
"type": "string",
"description": "ISO 8601; filters by recording started_at."
},
"start_time": {
"type": "string",
"description": "ISO 8601; filters by recording started_at."
},
"search_types": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional lane filter. Omit to search all. Allowed: transcript, segment, memory_atom, participant, title, brief, summary, action_item."
},
"conversation_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional: restrict to these opaque recording ids."
}
}
}{
"type": "object",
"properties": {
"desc": {
"type": "boolean",
"description": "true = descending (default); false = ascending."
},
"count": {
"type": "integer",
"description": "page size (default 100, max 200)"
},
"offset": {
"type": "integer",
"description": "page offset; use the response's next_offset"
},
"end_time": {
"type": "string",
"description": "ISO 8601, filters on started_at"
},
"order_by": {
"type": "string",
"description": "duration_seconds | started_at | action_item_count — server sorts the whole window and returns the top `count`."
},
"start_time": {
"type": "string",
"description": "ISO 8601, filters on started_at"
},
"participant_names": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exact case-insensitive filter on stored tagged participant names. Use when participant-field membership is requested; un-tagged or anonymized people do not match."
}
}
}