Skip to main content
Glama

turnwise

An MCP server that scores dialogue transcripts for bridging quality.

Pre/post surveys ask participants how they felt. turnwise reads what they said, and gives each speaker six scores.

### Concession: 4.00, confidence 0.75

Three markers across 175 words, granting a point to the other side twice and
stating a changed view once, for a weighted density of 2.40 per 100 words.

> [turn 11] **Sam:** "Although you got me on the transportation contract."
> [turn 11] **Sam:** "But I'm less comfortable than I was ten minutes ago."

extract_evidence returns the pattern matches with the rule that fired and the turns where nothing matched, leaving you to decide whether a match means what the rule assumes.

Install

npm install && npm run build

Add this to claude_desktop_config.json, then restart Claude Desktop:

{
  "mcpServers": {
    "turnwise": {
      "command": "node",
      "args": ["/absolute/path/to/turnwise/dist/index.js"]
    }
  }
}

Related MCP server: LongBook Verifier

Tools

Tool

Purpose

score_conversation

Per-speaker scores with evidence. arc_segments: 3 shows change across a session.

extract_evidence

Matches for you to adjudicate, plus unmatched turns.

parse_transcript

Check speaker detection before scoring.

compare_conversations

Two sessions side by side.

analyze_cohort

Aggregate many conversations, with effect sizes.

explain_indicator

Full rubric, limits, and citations for one indicator.

transcribe_audio

Local speech-to-text for one recording.

transcribe_session

Multitrack folder to one speaker-labeled transcript.

check_audio_support

Which local backends are installed.

The parser detects WebVTT, SRT, Otter, Rev, plain Speaker: text, and JSON.

Indicators

Indicator

Direction

Grounded in

Receptiveness

higher is better

Yeomans, Minson, Collins, Chen & Gino (2020)

Perspective-taking

higher is better

Kalla & Broockman (2020, 2023)

Contempt

lower is better

Gottman & Levenson (1992, 2002)

Curiosity

higher is better

Huang, Yeomans, Brooks, Minson & Gino (2017)

Concession

higher is better

Deutsch (1973); Fisher & Ury

Personal disclosure

higher is better

Broockman & Kalla (2016)

Follow-up questions and reciprocated disclosure are computed from turn structure, and explain_indicator covers the rest.

Audio

pip install mlx-whisper        # Apple Silicon, fastest
pip install -U openai-whisper  # cross-platform
brew install whisper-cpp       # no Python
brew install ffmpeg            # video and multitrack

transcribe_audio returns text without speaker labels, because this tool does no diarization.

Changing one recording setting fixes this: in Zoom, turn on Settings > Recording > Record a separate audio file for each participant, then point transcribe_session at the folder. Each file holds one person, so attribution is exact and the filenames become the speaker names.

Limits

Read docs/METHODOLOGY.md before putting these numbers in a report.

Validation against trained human coders is still outstanding, so treat these as evidence-linked observations. Contempt comes in low because tone carries most of it and a transcript has none, and sarcastic agreement will score as ordinary agreement. Participants choose which workshop to attend, so a difference between two groups may come from who signed up rather than from anything the program did.

Development

npm test          # 32 unit tests
npm run calibrate # 22 minimal pairs the instrument must order correctly
npm run smoke     # exercises every tool over MCP

Run calibrate after any lexicon edit, since it also tracks the adversarial cases that pattern matching cannot solve.

Editing src/lexicon.ts changes the instrument, so bump RUBRIC_VERSION when you do, or year-over-year comparisons stop meaning anything.

Apache-2.0.

Available Tools

9 tools
analyze_cohortAggregate across many conversationsA

Combine scores from multiple conversations into one report: per-indicator means, spread, and optional group comparison with effect size. This is the tool that produces something a funder can read. Pass the structured score objects returned by score_conversation.

ParametersJSON Schema
NameRequiredDescriptionDefault
scoresYesStructured score objects from score_conversation (its <structured_data> block).
group_byNoMeta key to group by, e.g. "cohort". With exactly two groups, effect sizes are included.
indicatorsNo

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It clearly discloses the tool's main behavior—aggregating scores and producing statistical summaries—and even notes the optional group comparison with effect size. It omits edge cases like validation or handling of multiple groups, but is sufficiently transparent for an analytical tool.

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?

The description is two sentences with no waste. It front-loads the core function and then adds a crucial usage hint, earning a perfect score for conciseness.

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?

Given no output schema and no annotations, the description adequately explains what the report contains and how to prepare inputs. It could detail the exact output structure, but the overview is sufficient for selecting and invoking the 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 67%, so the baseline is 3. The description reinforces the 'scores' parameter's source and adds semantic context to 'group_by' (optional comparison with effect size), but it does not significantly expand beyond the schema's existing descriptions.

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?

The description clearly states the tool aggregates multiple conversation scores into a single report with specific statistical outputs (per-indicator means, spread, optional effect sizes). It distinguishes itself from sibling tools like compare_conversations by focusing on cohort-level aggregation into a funder-readable report.

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 explicitly tells the user to pass structured score objects from score_conversation, giving a clear context for when to use this tool. However, it does not explicitly name alternatives or state when not to use it, so it stops short of a 5.

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

check_audio_supportCheck local transcription supportA

Report which local speech-to-text backends and media tools are installed, with install instructions if none are. Use this before attempting transcription so a missing dependency surfaces as a clear answer.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

With no annotations, the description carries the transparency burden. It indicates the tool performs a dependency check and provides install instructions when dependencies are absent, which clarifies its behavior and outcome. It does not describe the exact output format, but given the simple nature, this is adequate.

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. The first sentence states what it does, the second gives usage context. Efficient and well-structured.

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 zero-parameter tool with no output schema, the description covers the purpose, the timing of use, and the fallback behavior (install instructions). This makes it fully actionable for an AI agent deciding whether to call it.

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

Parameters4/5

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

The tool has zero parameters, and the schema has no properties. The description correctly focuses on the tool's function rather than parameter details; no additional parameter semantics are needed. Baseline 4 is appropriate.

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?

The description opens with a specific verb ('Report') and a clear object ('which local speech-to-text backends and media tools are installed'), distinguishing it from the sibling transcription tools.

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

Usage Guidelines5/5

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

Explicitly instructs to use 'before attempting transcription' and explains the benefit: 'a missing dependency surfaces as a clear answer.' This establishes when to invoke this tool relative to its siblings.

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

compare_conversationsCompare two conversationsA

Score two transcripts and lay them side by side with the difference on each indicator. Use for before/after comparisons: the same group early and late in a program, one workshop format against another, or a facilitator's first session against their tenth.

ParametersJSON Schema
NameRequiredDescriptionDefault
label_aNoName for the first conversation, e.g. 'Session 1'.
label_bNoName for the second conversation, e.g. 'Session 6'.
indicatorsNo
transcript_aNo
transcript_bNo
transcript_a_pathNo
transcript_b_pathNo

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of explaining behavior. It states that the tool scores transcripts and computes differences, which implies a read-only analysis operation. However, it does not disclose details like input format requirements (inline text vs file path) or return structure. The behavior is reasonably transparent for a simple comparison tool but lacks depth.

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?

The description is two sentences: the first explains the function, the second gives example use cases. It is front-loaded with the core purpose and contains no redundant information. Every word earns its place.

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

Completeness2/5

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

Despite having 7 parameters and no output schema or annotations, the description provides only purpose and use cases. It omits critical details such as how transcripts are supplied (inline vs path), what the side-by-side output looks like, and which indicators are supported. The tool is moderately complex, so this level of incompleteness is a significant gap.

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

Parameters2/5

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

Schema description coverage is low (29% for label_a and label_b), and the description adds limited parameter guidance. It mentions 'two transcripts' and 'each indicator,' but does not clarify the relationship between transcript_a and transcript_a_path or the available indicator values. The description fails to compensate for the sparse schema.

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?

The description clearly states the tool's function: 'Score two transcripts and lay them side by side with the difference on each indicator.' This is a specific verb+resource that distinguishes it from the sibling tool score_conversation, which handles a single transcript.

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?

The description provides explicit use cases: 'Use for before/after comparisons: the same group early and late in a program, one workshop format against another, or a facilitator's first session against their tenth.' It does not explicitly mention alternatives or exclusions, but the context is clear and actionable.

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

explain_indicatorExplain an indicatorA

Return the full rubric for one indicator: what it measures, what counts as evidence, what does not count, the 0-4 anchors, the thresholds, what the score cannot tell you, and the research behind it. Use whenever someone asks what a score means or challenges one.

ParametersJSON Schema
NameRequiredDescriptionDefault
indicatorYesWhich indicator.

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations provided, the description carries full behavioral burden. It thoroughly discloses what the tool returns, including explicit mention of 'what the score cannot tell you,' which goes beyond a simple read operation and sets expectations well.

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?

The description is two sentences, front-loaded with the primary action ('Return the full rubric for one indicator') and each subsequent phrase adds value (lists components, states when to use). No wasted words or redundancy.

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 single-parameter tool with no output schema, the description is fully complete: it lists all rubric components, states the use case, and even mentions the limitations. There are no ambiguous aspects left for an agent to resolve.

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?

The input schema already documents the only parameter 'indicator' with an enum and description 'Which indicator.' Schema description coverage is 100%, so the description adds no additional parameter-level detail needed. The tool's main text focuses on output, not parameter syntax, so baseline 3 is appropriate.

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?

The description clearly states the tool returns a full rubric for one indicator and enumerates its contents (measures, evidence, anchors, thresholds, limitations, research). This is specific and distinct from sibling tools like score_conversation or extract_evidence, which have different purposes.

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?

The description explicitly says 'Use whenever someone asks what a score means or challenges one,' providing a clear trigger. It does not list when not to use it or point to alternatives, but given the unique purpose among siblings, this is adequate.

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

extract_evidenceGet raw evidence for your own judgmentA

Return every pattern match the instrument found, with the quote and the rule that fired, plus the turns where nothing matched. Use this when the reading matters more than the number: you confirm or reject each candidate yourself, catching sarcasm and quoted speech that a word list scores wrong, and catching behavior in the unmatched turns that no pattern covers. This is the tool for producing a defensible qualitative summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNoLabels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}.
formatNoOverride format auto-detection.
indicatorsNo
transcriptNoRaw transcript text. Supply this or transcript_path.
speaker_aliasesNoRename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared.
transcript_pathNoPath to a transcript file. Supply this or transcript.

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses that the tool returns all pattern matches with quote and rule, and includes non-matching turns, indicating a transparent read-only behavior. However, it doesn't mention output size limits or performance considerations, which could affect agents expecting large datasets.

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?

The three sentences are well organized: action first, then use case, then a summary positioning statement. While slightly verbose for a tool description, each sentence contributes meaningful guidance without waste.

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?

Despite having no output schema, the description conveys the essential output elements (quote, rule, unmatched turns). It does not explicitly state that a prior scoring run (or 'instrument') is required, but the phrase 'the instrument found' implies it; this is a minor gap given the tool's complexity.

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 already provides descriptions for 5 of 6 parameters (83% coverage), so the baseline is 3. The description adds no parameter-specific detail beyond what the schema offers; for example, it doesn't explain how the 'indicators' parameter filters the evidence.

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?

The description uses a specific verb ('Return') and a precise object: 'every pattern match the instrument found, with the quote and the rule that fired, plus the turns where nothing matched.' This clearly distinguishes it from sibling scoring tools like score_conversation by emphasizing raw evidence over numeric output.

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

Usage Guidelines5/5

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

Explicitly states when to use it: 'when the reading matters more than the number' and contrasts with 'a word list scores wrong,' implicitly naming the alternative approach. It further frames itself as 'the tool for producing a defensible qualitative summary,' giving clear guidance for selection.

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

parse_transcriptParse a transcriptA

Normalize a transcript into speaker turns and compute structural metrics: turn counts, airtime share per speaker, airtime concentration, and question rate. Run this when a transcript's format is uncertain, to confirm speakers were detected correctly before scoring.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNoLabels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}.
formatNoOverride format auto-detection.
transcriptNoRaw transcript text. Supply this or transcript_path.
speaker_aliasesNoRename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared.
transcript_pathNoPath to a transcript file. Supply this or transcript.

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool normalizes transcript format and computes metrics (turn counts, airtime share, etc.), which is useful behavioral context. However, it does not describe the return format, behavior on unknown formats, or any side effects, leaving gaps.

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?

The description is two sentences long, front-loaded with the primary action, and every word earns its place. It avoids redundancy and is easy to scan.

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?

The description covers purpose, usage, and key outputs, and the schema covers all parameters. However, without an output schema or annotations, the description doesn't fully explain what the tool returns or edge-case behavior. For a parse tool of moderate complexity, this is a minor gap, so a 4 is appropriate.

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?

The schema description coverage is 100%, so the parameter semantics are already well-documented in the schema. The tool description adds no additional parameter details, but it does mention 'format is uncertain' which indirectly relates to the 'format' override parameter. Baseline 3 is appropriate.

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?

The description uses specific verbs ('Normalize', 'compute structural metrics') and names the resource (transcript) and specific outputs (turn counts, airtime share, etc.). It clearly distinguishes itself from sibling tools like transcribe_audio and score_conversation by positioning itself as a pre-scoring validation step.

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?

The description explicitly states when to use the tool: 'Run this when a transcript's format is uncertain, to confirm speakers were detected correctly before scoring.' This gives clear context and a specific use case, but it does not mention when not to use it or name alternative tools explicitly.

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

score_conversationScore a dialogue transcriptA

Score a conversation for bridging quality. Returns a 0-4 score per speaker per indicator (receptiveness, perspective-taking, contempt, curiosity, concession, personal disclosure), each with quoted evidence anchored to turn numbers, a confidence value, and deterministic airtime metrics. Set arc_segments to 3 to see how the conversation changed from opening to close.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNoLabels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}.
formatNoOverride format auto-detection.
indicatorsNoSubset of indicators. Defaults to all six.
transcriptNoRaw transcript text. Supply this or transcript_path.
arc_segmentsNoSplit into this many slices and score each. 3 is the usual choice.
speaker_aliasesNoRename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared.
transcript_pathNoPath to a transcript file. Supply this or transcript.

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It thoroughly explains the return format (0-4 score per speaker per indicator, quoted evidence with turn numbers, confidence value, airtime metrics) and even demonstrates a specific use case for arc_segments. While it doesn't explicitly state read-only behavior, the described behavior is clear and non-destructive.

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?

The description is concise and well-structured: two sentences that front-load the core purpose, then detail the return format and end with a practical usage tip. Every sentence contributes value with no redundancy or filler.

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?

Given the lack of an output schema, the description does well to explain the return structure and available indicators. It also provide a usage example for arc_segments. However, it does not clarify how this tool compares to compare_conversations or analyze_cohort, and some parameters (meta, speaker_aliases) are left to the schema, which is acceptable since the schema is 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 coverage is 100%, so the baseline is 3. The description adds minor value by highlighting the arc_segments tip ('Set arc_segments to 3 to see how the conversation changed from opening to close'), but does not substantially enrich the parameter meanings beyond what the schema already provides.

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?

The description uses a specific verb ('Score') and a specific resource ('a conversation for bridging quality'), and clearly distinguishes itself from siblings like parse_transcript or transcribe_audio by focusing on scoring. It lists the exact indicators and explains the output, making the tool's purpose unmistakable.

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

Usage Guidelines3/5

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

The description implies when to use the tool (when you need to score a conversation for bridging quality) but provides no explicit exclusions or comparisons to sibling tools like compare_conversations or analyze_cohort. The only usage tip is 'Set arc_segments to 3', which is helpful but not a full usage guideline.

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

transcribe_audioTranscribe a recordingA

Transcribe a single audio or video recording to WebVTT using a local speech model. Audio stays on this machine. A mixed track cannot be reliably split by speaker, so the result omits speaker labels and cannot produce per-speaker scores. For those, record one file per participant and use transcribe_session.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoSpeech model size, e.g. tiny, base, small, medium.
backendNoForce a specific backend command.
languageNoLanguage code, e.g. en. Auto-detected if omitted.
file_pathYesPath to an audio or video file.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the local processing behavior ('stays on this machine'), the limitation that a mixed track cannot be split by speaker, and the resulting omission of speaker labels. It could add more details about output handling, but the key behaviors are transparent.

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?

The description is three sentences, each adding significant value: purpose, privacy, and limitation with an alternative. It is concise and front-loaded with the main action.

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?

Given no output schema and no annotations, the description covers the essential context: purpose, output format, privacy, and a key limitation. It could mention how the WebVTT file is delivered, but overall it is complete enough for a transcription tool with clear alternatives.

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?

The input schema covers 100% of parameters with descriptions, so the baseline is 3. The description mentions 'single recording' which relates to file_path but doesn't add additional semantic meaning beyond what the schema already provides.

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?

The description clearly states the tool transcribes a single audio/video recording to WebVTT using a local speech model. It distinguishes itself from the sibling transcribe_session by noting it omits speaker labels, so there's no confusion about its purpose.

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

Usage Guidelines5/5

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

The description explicitly advises when not to use this tool: for per-speaker scores, use transcribe_session with one file per participant. This provides clear guidance on the appropriate use case and alternative.

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

transcribe_sessionTranscribe a multitrack sessionA

Transcribe a folder of per-participant recordings and merge them into one speaker-labeled transcript ordered by timestamp. Each file contains exactly one person, so speaker attribution is exact. This is the recommended path for anything that needs per-speaker scores. In Zoom, enable Settings > Recording > 'Record a separate audio file for each participant'. Speaker names come from the filenames.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNo
backendNo
languageNo
directoryYesFolder containing one audio file per participant.
speaker_namesNoMap filenames to speaker names, e.g. {"audio1234.m4a": "Dana"}.

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It discloses key behavior: merging, timestamp ordering, exact speaker attribution, and that speaker names come from filenames. However, it does not clarify the optional speaker_names parameter (does it override filenames?) or mention limitations, failure modes, or how model/backend/language affect behavior.

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?

The description is three sentences, each adding value: the core action, the rationale for exact attribution, and a practical setup tip. It is front-loaded with the main action and has zero fluff.

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

Completeness3/5

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

For a tool with 5 parameters, a nested object, and no output schema, the description covers the core workflow and usage context but omits key details: no explanation of model/backend/language, no clarity on speaker_names vs filenames precedence, and no indication of the transcript output format beyond being speaker-labeled and timestamp-ordered.

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 only 40% (directory and speaker_names have descriptions). The description adds meaning for directory ('folder of per-participant recordings') and speaker_names ('Map filenames to speaker names'), but does not explain 'model', 'backend', or 'language' at all. It partially compensates but leaves the majority of parameters semantically undocumented.

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?

The description starts with a specific verb-resource pair: 'Transcribe a folder of per-participant recordings and merge them into one speaker-labeled transcript ordered by timestamp.' It clearly states the tool's scope and distinguishes it from siblings by emphasizing 'exact speaker attribution' and being 'the recommended path for anything that needs per-speaker scores', which sets it apart from tools like transcribe_audio.

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?

The description explicitly states when to use this tool: 'the recommended path for anything that needs per-speaker scores.' It also provides a concrete setup prerequisite for Zoom. However, it does not explicitly name alternatives or state when not to use it, though the sibling context makes the alternative clear.

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

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct stage in the analysis pipeline, from environment checks to transcription, parsing, scoring, evidence extraction, comparison, cohort analysis, and rubric explanation. No two tools share the same purpose, and descriptions clearly differentiate similar operations like transcribe_audio vs transcribe_session.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., check_audio_support, transcribe_session, score_conversation). This makes the action and target immediately clear, and there are no stylistic deviations.

Tool Count5/5

With 9 tools, the set is well-scoped and each tool earns its place. The count fits within the ideal 3-15 range and covers the full workflow without redundancy.

Completeness5/5

The server covers the entire lifecycle from pre-transcription checks to group-level analysis and rubric explanation. There are no obvious gaps: transcription, parsing, scoring, qualitative evidence review, comparison, and cohort aggregation are all represented.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that evaluates whether retrieval methods and AI outputs are grounded in long narrative manuscripts by retrieving evidence and scoring coverage deterministically, without external model APIs. It provides tools for chunking, indexing, retrieval, and evaluation.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that converts videos, audio, and meeting recordings into structured transcripts and summaries with multi-backend ASR and automatic fallback.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/paiksca/turnwise'

If you have feedback or need assistance with the MCP directory API, please join our Discord server