turnwise
Enables processing Zoom meeting recordings (multitrack per-participant audio files) into a speaker-labeled transcript for dialogue analysis.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@turnwiseScore this conversation transcript for bridging quality"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 buildAdd 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 |
| Per-speaker scores with evidence. |
| Matches for you to adjudicate, plus unmatched turns. |
| Check speaker detection before scoring. |
| Two sessions side by side. |
| Aggregate many conversations, with effect sizes. |
| Full rubric, limits, and citations for one indicator. |
| Local speech-to-text for one recording. |
| Multitrack folder to one speaker-labeled transcript. |
| 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 multitracktranscribe_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 MCPRun 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 toolsanalyze_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.
| Name | Required | Description | Default |
|---|---|---|---|
| scores | Yes | Structured score objects from score_conversation (its <structured_data> block). | |
| group_by | No | Meta key to group by, e.g. "cohort". With exactly two groups, effect sizes are included. | |
| indicators | No |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| label_a | No | Name for the first conversation, e.g. 'Session 1'. | |
| label_b | No | Name for the second conversation, e.g. 'Session 6'. | |
| indicators | No | ||
| transcript_a | No | ||
| transcript_b | No | ||
| transcript_a_path | No | ||
| transcript_b_path | No |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| indicator | Yes | Which indicator. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Labels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}. | |
| format | No | Override format auto-detection. | |
| indicators | No | ||
| transcript | No | Raw transcript text. Supply this or transcript_path. | |
| speaker_aliases | No | Rename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared. | |
| transcript_path | No | Path to a transcript file. Supply this or transcript. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Labels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}. | |
| format | No | Override format auto-detection. | |
| transcript | No | Raw transcript text. Supply this or transcript_path. | |
| speaker_aliases | No | Rename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared. | |
| transcript_path | No | Path to a transcript file. Supply this or transcript. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Labels carried into the report and used for cohort grouping, e.g. {"cohort": "spring-2026", "site": "Cleveland"}. | |
| format | No | Override format auto-detection. | |
| indicators | No | Subset of indicators. Defaults to all six. | |
| transcript | No | Raw transcript text. Supply this or transcript_path. | |
| arc_segments | No | Split into this many slices and score each. 3 is the usual choice. | |
| speaker_aliases | No | Rename speakers after parsing, e.g. {"Speaker 1": "Participant A"}. Use this to de-identify before results are shared. | |
| transcript_path | No | Path to a transcript file. Supply this or transcript. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Speech model size, e.g. tiny, base, small, medium. | |
| backend | No | Force a specific backend command. | |
| language | No | Language code, e.g. en. Auto-detected if omitted. | |
| file_path | Yes | Path to an audio or video file. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| backend | No | ||
| language | No | ||
| directory | Yes | Folder containing one audio file per participant. | |
| speaker_names | No | Map filenames to speaker names, e.g. {"audio1234.m4a": "Dana"}. |
TDQS
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.
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.
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.
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.
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.
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
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.
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.
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.
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
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
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
MCP server for RiverScript, an AI transcription platform - fetches transcripts shared via a link.
An MCP server that provides tools to discover and retrieve podcast episodes transcripts.
An MCP server that provides congressional transcripts
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceAn MCP server that enables multi-model debate and consensus building through a single tool. It orchestrates multiple AI models from various providers to debate topics and reach validated conclusions with real-time progress tracking.203MIT
- AlicenseNot gradedqualityCmaintenanceAn 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.1MIT
- FlicenseAqualityDmaintenanceMCP server that analyzes TTS audio recordings, providing transcription, quality scoring, pacing analysis, and mispronunciation detection to debug voice call center audio.4
- AlicenseNot gradedqualityCmaintenanceMCP server that converts videos, audio, and meeting recordings into structured transcripts and summaries with multi-backend ASR and automatic fallback.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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