Skip to main content
Glama

Server Details

Bring your RiverScript transcripts of meetings, calls and interviews to any AI agent.

Ownership verified
Status
Healthy
Uptime
23.1% over 19 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP ยท MCP 2025-06-18
URL

TDQS

A4/5.0

Scored across 4 tools

Disambiguation4/5

get_transcript vs get_transcript_summary is the only pair that could be conflated, but get_transcript_summary explicitly states the full text comes from get_transcript, and list vs search serve clearly different retrieval modes (browse by recency vs keyword lookup). Each tool has a distinct resource-plus-action purpose and the descriptions spell out when to use which.

Naming Consistency5/5

All four tools follow a strict verb_noun snake_case pattern (get_, list_, search_) with a shared domain noun (transcript/transcripts). Naming is fully predictable and readable.

Tool Count4/5

Four tools is on the lean side but appropriate for what appears to be a read-only retrieval server, with each tool earning its place (list, search, fetch full text, fetch summary). Nothing redundant or missing at the count level.

Completeness4/5

The retrieval lifecycle for transcripts and translations is well covered: discover by recency, discover by keyword, fetch full text, fetch generated summary. Minor gaps exist in that creation/deletion or richer metadata appear absent, but those likely live in the RiverScript app rather than this read-only surface.

Available Tools

4 tools
get_transcriptGet transcriptA
Read-onlyIdempotent
Inspect

Fetch the full text of one of the user's transcripts or translations by its id, as returned by list_transcripts or search_transcripts. Use this once you know which one you need, to answer questions about it, quote it, summarise it or draft from it.

ParametersJSON Schema
NameRequiredDescriptionDefault
transcript_idYesThe id, from list_transcripts or search_transcripts.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description usefully adds that the return is the full text (as opposed to a summary), but says nothing about size limits, truncation, or pagination for what could be a long document, which is a real gap for a full-text fetch.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, and the core purpose and its prerequisite are front-loaded before the use-case list. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one required parameter, no output schema and full schema coverage, the description covers the essentials: what is returned and when to call it. The only missing piece is behaviour for large transcripts (truncation or length limits), which matters somewhat for a full-text tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single parameter's own description already says the id comes from list_transcripts or search_transcripts, so the description repeats rather than extends it. Baseline 3 is appropriate when the schema does all the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Fetch') and resource ('the full text of one of the user's transcripts or translations') with the lookup key ('by its id'). 'Full text' implicitly distinguishes it from the get_transcript_summary sibling, but that alternative is never named, so the differentiation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear triggering context: use it once you know which transcript you need, to answer questions, quote, summarise or draft. It names list_transcripts/search_transcripts as the prerequisite step, but never states when to prefer get_transcript_summary instead, so no exclusion is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_transcript_summaryGet transcript summaryA
Read-onlyIdempotent
Inspect

Return the summary and key points RiverScript generated for a transcript, when there are any. The full text of the transcript comes from get_transcript.

ParametersJSON Schema
NameRequiredDescriptionDefault
transcript_idYesThe id, from list_transcripts or search_transcripts.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds a genuinely useful behavioral trait beyond them: the summary exists only 'when there are any,' warning the agent that an empty/absent result is a normal outcome rather than an error. It stops short of describing return shape or size, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, both load-bearing: the first defines the resource and its optional-existence caveat, the second routes the agent to the sibling for full text. No filler and the core purpose is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with full annotation coverage and no output schema, the description supplies enough context to call it correctly, including the empty-result condition. It could be slightly fuller about what 'key points' contains, but nothing required to invoke the tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the schema already explains that transcript_id comes from list_transcripts or search_transcripts. The description adds nothing about the parameter itself, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (return the summary and key points of a transcript) and names the producer, RiverScript. It also explicitly distinguishes itself from the sibling get_transcript by assigning full text to that tool, so an agent can tell them apart without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly positions this tool against the alternative by stating that the full transcript text 'comes from get_transcript,' which implies this tool is for summarized/key-point content only. There is no explicit when-not guidance (e.g., what to do if no summary exists), but the routing context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_transcriptsList transcriptsA
Read-onlyIdempotent
Inspect

List the user's most recent finished transcripts, including translations made in RiverScript, with their titles, dates, languages and durations. Use this to see what the user has, or to find one by when it was made, then fetch the one you need with get_transcript.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoOptional ISO date. Only items made on or before this date.
fromNoOptional ISO date. Only items made on or after this date.
limitNoHow many to return. Default 20, maximum 50.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description is not carrying that burden. It adds real context beyond them: only 'finished' items are returned, translations from RiverScript are included, and the returned fields are named in the absence of an output schema. It does not disclose pagination or ordering behavior beyond 'most recent'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero waste: the first defines scope and payload, the second defines when to use it and what to do next. Front-loaded and nothing redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with full schema coverage and clear annotations, the description supplies everything an agent needs: scope, returned fields, and the downstream tool. No output schema exists, yet return contents are described, so nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so from/to/limit are already fully documented with formats, defaults, and maximums. The description adds no syntax or semantics beyond that, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb + resource + scope: it lists the user's 'most recent finished transcripts, including translations made in RiverScript,' and enumerates the returned fields (titles, dates, languages, durations). It names get_transcript as the follow-up tool, but does not distinguish itself from the closest sibling, search_transcripts, which would leave an agent guessing between the two for filtered lookups.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States clear usage contexts ('see what the user has, or find one by when it was made') and prescribes the next step ('fetch the one you need with get_transcript'). It gives no exclusion guidance, however โ€” nothing tells the agent when search_transcripts is the better choice instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_transcriptsSearch transcriptsA
Read-onlyIdempotent
Inspect

Search the text of the user's transcripts and translations for a word or phrase and return the passages around each match, with the transcript each came from. Use this to answer questions about what was said or decided without reading whole transcripts, for example finding where a price, a name or a deadline was discussed.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoOptional ISO date. Only items made on or before this date.
fromNoOptional ISO date. Only items made on or after this date.
limitNoHow many to return. Default 10, maximum 25.
queryYesThe word or phrase to look for in what was said.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered. The description adds genuinely useful context beyond that: search scope is limited to the user's own transcripts and translations, and the result is a set of surrounding passages tagged with their originating transcript. It does not describe ranking, snippet size, or pagination beyond the schema's limit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with what the tool does and what it returns, then the use case. No filler, though the trailing example clause is slightly illustrative rather than strictly necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully fills that gap by explaining that results are surrounding passages with their source transcript, and it states the searchable scope. Remaining gaps (result ranking, date-filter interaction) are minor for a read-only search tool whose annotations and schema are rich.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the from/to date bounds and the limit/default-max are already fully documented in the schema. The description says the query is a 'word or phrase' without adding matching semantics (exact phrase vs fuzzy, case sensitivity), so it neither compensates nor regresses. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource (search transcripts and translations for a word or phrase) and even states the return shape (passages around each match with their source transcript). It implicitly separates itself from get_transcript by promising results 'without reading whole transcripts', but it never names a sibling tool explicitly, which keeps it short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use this to answer questions about what was said or decided without reading whole transcripts' gives a clear use context, reinforced by concrete examples (price, name, deadline). There is no explicit when-not-to-use or named alternative (e.g. get_transcript_summary, list_transcripts), so it stops short of the top band.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedget_transcript
    • First observedget_transcript_summary
    • First observedlist_transcripts
    • First observedsearch_transcripts

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to search meeting transcripts, retrieve speaker-attributed quotes, decisions, and action items, and transcribe new files or links directly from the QuillHub archive.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides AI agents with structured access to Zoom recorded meetings, enabling search, summarization, and action item extraction.
    2 npm
    BSD 2-Clause "Simplified"
  • A
    license
    A
    quality
    C
    maintenance
    Provides read-only access to finished meeting transcripts for AI assistants like Claude Code or Codex, enabling them to answer questions or draft summaries based on the transcriptions.
    4
    3
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search and retrieve meeting transcripts from Otter.ai, supporting full-text search, speaker identification, and transcript retrieval.
    5
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources