Voxtract
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., "@Voxtracttranscribe the latest meeting recording in my inbox"
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.
Voxtract
Extract structured knowledge from voice recordings.
Voxtract is an MCP server that transcribes audio files using Mistral's Voxtral model and lets your LLM agent handle the post-processing — cleaning, restructuring, summarizing — all within your existing setup. No extra AI agents, no extra costs beyond Mistral transcription at $0.003/minute.
Why Voxtract?
Dedicated voice-to-text products charge $80–180 for hardware plus monthly subscriptions for AI features. Voxtract takes a different approach:
Mistral handles transcription — $0.003/min (~$0.18/hour). Speaker diarization, 13 languages, context biasing for domain terms.
Your LLM handles intelligence — The agent you already use (Claude, GPT, etc.) does the post-processing. No extra API costs. Cleaning, restructuring, meeting notes, idea extraction — whatever you need.
MCP glues them together — Voxtract runs as an MCP server inside any MCP-compatible client (Claude Code, Claude Desktop, Cursor, Windsurf, or any agent framework supporting MCP). The LLM calls the tools directly, reads the transcript, and processes it in the same conversation.
The result: you record on your phone, drop the file in any project directory, and get organized markdown knowledge — for essentially free on top of what you already pay.
Related MCP server: vibevoice-asr
How it works
You speak → Audio file → Voxtract transcribes → LLM cleans & structures → Organized knowledgeVoxtract uses a session-based workflow:
Drop audio files in a working directory
Voxtract transcribes them via Mistral and stages the results
The LLM reads the transcript, picks a descriptive name, and finalizes into a clean directory
Optionally, the LLM post-processes the transcript (clean up, restructure, extract ideas)
The output is a named directory with your audio and markdown:
your-project/
quarterly-review-action-items/
recording.mpeg
transcript.md
transcript_clean.mdMultiple audio files that belong to the same topic get merged into a single transcript automatically.
Pluggable post-processing
The real power is in what happens after transcription. Voxtract ships with a clean_transcript MCP prompt, but the architecture is designed to be forked and customized.
The prompt templates live in a single file — src/mistral_voice_mcp/prompts.py — and each one is just a function that returns a message list. Want to turn Voxtract into a meeting assistant? A lecture note-taker? A medical dictation tool? Write your own prompt function, register it in server.py, done. Your LLM handles the rest.
# src/mistral_voice_mcp/prompts.py — add your own
def meeting_notes_messages(transcript: str) -> list[dict]:
return [{"role": "user", "content": f"Extract action items from:\n{transcript}"}]# src/mistral_voice_mcp/server.py — register it
@server.prompt(name="meeting_notes", description="Extract action items and decisions")
def meeting_notes(transcript: str) -> list[dict]:
return prompts.meeting_notes_messages(transcript)Some ideas for what you could build:
Meeting assistant → Extract decisions, action items, attendees
Lecture notes → Structured study material with key concepts
Lab notebook → Extract methods, observations, technical terms
Interview processor → Q&A format with key quotes highlighted
Brainstorm organizer → Turn scattered spoken ideas into coherent proposals
Since the LLM you already use is the post-processing engine, each new use case costs you zero extra — just a new prompt function.
Tools & Prompts
Tools
Tool | Description |
| Set the work directory. Creates |
| Show current workdir path and status counts |
| Set transcription language (e.g. |
| Show current language and timestamp status |
| Set domain-specific terms for transcription accuracy (max 100) |
| Show configured bias terms |
| Clear all bias terms |
| List audio files waiting in |
| Stage inbox files into a transcription session |
| List active staging sessions and their status |
| Transcribe all audio files in a session (with diarization) |
| Read merged transcript from staging before naming |
| Finalize session into a named directory with |
| List all finalized recording directories |
| Read transcript (raw or clean) from a recording |
| Save post-processed text as |
Prompts
Prompt | Description |
| Remove filler words, fix grammar and logic flow, restructure for clarity while preserving meaning and speaker headings |
Use it everywhere
The idea is simple: add Voxtract to any repository where you work. Got an idea while walking? Record it, drop the file, and get structured documentation — right next to your code, notes, or research.
Installation
No cloning, no setup. Requires uv and a Mistral API key (pay-per-use, no subscription).
# Available in all your projects
claude mcp add --scope user --env MISTRAL_API_KEY="your-key-here" voxtract -- uvx --from git+https://github.com/hitesit/voxtract voxtractOne command. Done. Use --scope project instead to limit it to the current project only.
Add this to your MCP config (.mcp.json for Claude Code, claude_desktop_config.json for Claude Desktop, or equivalent for Cursor, Windsurf, etc.):
{
"mcpServers": {
"voxtract": {
"type": "stdio",
"command": "uvx",
"args": ["--from", "git+https://github.com/hitesit/voxtract", "voxtract"],
"env": {
"MISTRAL_API_KEY": "your-key-here"
}
}
}
}uvx downloads, installs, and runs Voxtract in an isolated environment automatically.
Quick start
Once the MCP server is connected to your agent:
You: Set the work directory to /path/to/my/project
I dropped a voice memo in the inbox, transcribe it in Italian and clean it upThe agent will:
Set the workdir, list the inbox
Create a staging session, transcribe the audio
Read the transcript, suggest a directory name
Finalize into a named folder with
transcript.mdClean and restructure into
transcript_clean.md
All in one conversation, using tools you can see and control.
Supported formats
.flac, .m4a, .mp3, .mpeg, .ogg, .wav — up to 1 GB, up to 3 hours per file.
Supported languages
English, Chinese, Hindi, Spanish, Arabic, French, Portuguese, Russian, German, Japanese, Korean, Italian, Dutch.
Cost
Mistral transcription: $0.003 per minute of audio. A 1-hour meeting costs ~$0.18. Post-processing is handled by the LLM you already use — no additional cost.
License
MIT
Available Tools
16 toolsmistral_clear_context_biasADestructiveIdempotent
Clear all context bias terms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate destructiveHint=true and idempotentHint=true, so the description carries a lower burden. It adds 'all' to clarify scope, but does not disclose additional behavioral aspects such as whether the clear affects only the current session or global state, or if it is reversible. It is consistent with annotations, so no contradiction.
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 a single concise sentence that is front-loaded with the action and object. It is appropriately sized with zero wasted words, making it easy to parse quickly.
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 simple parameterless tool with an output schema, the description is mostly complete. The only minor gap is that 'context bias terms' could be more explicitly defined, but the sibling tools and schema provide enough context to understand the tool's purpose.
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 has zero properties, so the baseline is 4. The description does not need to explain parameters as there are none. It adds meaning by describing the tool's action, which is sufficient for a parameterless tool.
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 'Clear all context bias terms' uses a specific verb (Clear) and clearly identifies the resource (context bias terms). It distinguishes itself from sibling tools like mistral_set_context_bias and mistral_get_context_bias, making the purpose unambiguous.
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 usage (clearing all context bias terms) but provides no explicit guidance on when to use this tool versus alternatives. It does not mention exclusions, preconditions, or when not to use it, so the usage context is only inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_create_sessionA
Create a staging session from audio files in inbox/.
Copies the specified files (or all inbox files) into a staging session for transcription.
| Name | Required | Description | Default |
|---|---|---|---|
| filenames | No | List of filenames in inbox/ to include. None means all files. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that files are copied (non-destructive) and that the session is for staging, adding context beyond the annotations. However, it does not mention prerequisites like an active workdir, behavior when a session already exists, or file validation, leaving some transparency 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-loads the main action, and contains no redundant words. It is concise 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 single-parameter tool with an output schema, the description and schema together cover the essential operation. It could mention the dependency on the current workdir's inbox, but the sibling toolset provides that context, making it adequately complete.
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 has 100% coverage for the 'filenames' parameter, including the null default meaning all files. The description only restates this behavior ('specified files or all inbox files') without adding new syntax or format details, so the baseline 3 applies.
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 creates a staging session from inbox audio files, using a specific verb ('create') and resource ('staging session'). It distinguishes itself from sibling tools by focusing on session creation rather than listing, transcribing, or finalizing.
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 usage for preparing files before transcription via the phrase 'for transcription', giving clear context. However, it does not explicitly name alternatives or state when not to use it, but the context is sufficient for an agent to infer the tool is a prerequisite step before transcribing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_finalizeA
Finalize a staging session into a named recording directory.
Creates a directory under workdir with the given name (slugified), moves audio files into it, writes the merged transcript.md, and cleans up the staging session and inbox originals.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | A descriptive name for the recording (will be slugified). | |
| session_id | Yes | The staging session ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With all annotations set to false, the description carries full responsibility for behavioral disclosure. It discloses the moves and cleanup of staging session and inbox originals, which are important side effects. It also notes the name slugification. No contradiction with the provided annotations.
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: a concise one-sentence summary followed by a clear list of actions. It is front-loaded and every clause adds value, with no fluff or repetition.
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 the main steps and side effects, and an output schema exists to document return values. It does not mention failure handling or permissions, but for a focused finalization tool with two parameters, this is reasonably complete. The cleanup behavior is explicitly stated, which is critical context.
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 descriptions cover both parameters (100% coverage), so baseline is 3. The description adds the meaning that the name will be slugified, which is extra semantic context beyond the schema. This justifies a slightly higher score.
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 finalizes a staging session into a named recording directory, listing specific actions: creates directory, moves audio files, writes transcript, and cleans up. This distinguishes it from siblings like mistral_create_session or mistral_transcribe.
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 it is the final step after staging/transcription without explicitly naming alternatives. It provides clear context on what it does, but no explicit 'use this instead of X' guidance. The cleanup side effect hints that it should be used when you are ready to conclude a session.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_get_context_biasARead-onlyIdempotent
Show currently configured context bias terms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds minimal behavioral context ('currently configured') but nothing beyond what annotations suggest. No contradiction detected.
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 a single, front-loaded sentence that directly states the purpose without waste. It's appropriately sized for a trivial getter operation.
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, read-only getter with an output schema and comprehensive annotations, the description is complete. No additional return format or edge-case behavior is necessary because the output schema handles those details.
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, so per the rubric baseline is 4. The description doesn't add parameter-level detail, but none is needed since the input schema is empty and fully covers the parameter space.
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 'Show' and clearly identifies the resource: 'currently configured context bias terms.' It distinguishes from sibling tools like set_context_bias and clear_context_bias by focusing on reading the current state.
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 usage for viewing the current context bias, but provides no explicit guidance on when to use it versus alternatives. Given the sibling setter/clear tools, this is clear enough for a simple getter, but lacks explicit exclusions or contextual cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_get_languageARead-onlyIdempotent
Show current transcription language and whether timestamps are active.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds specific context about what the tool returns (language and timestamp activity), which is useful beyond annotations. No contradictions exist.
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 a single, compact sentence that is front-loaded with the verb 'Show' and resource. Every word earns its place, with no filler or redundant information.
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 simple getter with zero parameters and an output schema, the description fully captures what the tool does. It states both elements returned (language and timestamp status), making it complete for an agent to select and invoke correctly.
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?
There are zero parameters, so the baseline is 4. The description correctly does not invent parameters and relies on the empty input schema. Nothing needs compensation since no parameters exist.
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 'Show' and clearly states the resource: current transcription language and timestamp status. This clearly distinguishes it from sibling tool 'mistral_set_language', which is the corresponding setter.
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 usage as a getter for language and timestamp settings, but there is no explicit guidance on when to use it versus alternatives. Given the simple read-only nature, it is reasonably clear, but no exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_get_workdirARead-onlyIdempotent
Show current work directory path and status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation as read-only, idempotent, and non-destructive. The description adds that it returns the path and status, which goes beyond the annotations, though it does not specify what 'status' includes or describe error 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 consists of a single, seven-word sentence: 'Show current work directory path and status.' Every word contributes meaning, with no filler 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?
Given the zero-parameter input and the presence of an output schema, the description sufficiently covers the tool's straightforward purpose. It states what is shown (path and status) and relies on the output schema for detailed return structure.
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?
With zero parameters, the schema coverage is trivially 100% and no parameter descriptions are needed. The baseline for zero-parameter tools is 4, and the description adds nothing about parameters because there are none.
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 the specific verb 'Show' and clearly identifies the resource as 'current work directory path and status,' distinguishing it from the sibling tool mistral_set_workdir. While 'status' is somewhat vague, the core purpose is 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 the tool is used to retrieve the current work directory, but it does not explicitly state when to use it or mention alternatives such as mistral_set_workdir. Usage context is self-evident for a simple getter, but no formal guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_list_inboxARead-onlyIdempotent
List audio files in inbox/ waiting to be transcribed.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds valuable context by specifying the location ('inbox/') and the state ('waiting to be transcribed'), which helps the agent understand the scope without redundant safety details.
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 a single, clear sentence that immediately states the action and target. It is front-loaded and contains no filler or repetition, earning every word.
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 an output schema and safe annotations, the description fully covers the core functionality. It tells the agent exactly what the tool does and where it operates, which is sufficient for selecting and invoking it correctly.
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 is empty with 100% coverage. The baseline for a no-parameter tool is 4, and the description accurately describes what is listed without needing to explain parameter syntax.
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 the specific verb 'List' and identifies the resource as 'audio files in inbox/ waiting to be transcribed.' It clearly distinguishes the tool from siblings like mistral_list_recordings by specifying a particular location and status, making its function unambiguous.
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 phrase 'waiting to be transcribed' provides clear context for when to use the tool (to see pending audio files) and implies it is not for reviewing already transcribed files. However, it does not explicitly name alternatives or exclusions, though the sibling list naturally helps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_list_recordingsARead-onlyIdempotent
List finalized recording directories.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the behavioral scope 'finalized,' indicating this tool only lists recording directories that have been finalized. However, it does not disclose output ordering, pagination, or error behavior, but the bar is lower given the strong annotations.
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?
A single concise sentence with no redundancy. The key information (action and resource) is front-loaded and clear, making it an excellent model of minimal specification.
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 tool has zero parameters, strong annotations, and an output schema that defines return structure, the description adequately covers the core purpose. It clearly states what the tool lists, and the output schema handles return details, so nothing critical is missing.
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, so the schema coverage is trivially 100% and there is nothing for the description to explain. The description correctly focuses on the resource being listed, which adds meaning beyond the empty schema. Baseline for 0 params is 4.
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 the specific verb 'List' and clearly identifies the resource as 'finalized recording directories.' This distinguishes it from sibling tools like mistral_list_inbox and mistral_list_sessions, which list different resources.
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?
No usage guidance is provided. The description does not mention when to use this tool versus alternatives, nor does it give context about prerequisites or expected workflow stages. The name and sibling names imply usage, but the description itself offers no guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_list_sessionsARead-onlyIdempotent
List active staging sessions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation as read-only, idempotent, and non-destructive. The description adds behavioral context by specifying 'active' and 'staging', which clarifies the filtering and session state, going beyond what annotations provide.
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 a single, concise sentence that is front-loaded with the action and resource. Every word earns its place, 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?
For a simple list tool with an output schema present, annotations covering safety, and zero parameters, the description is adequately complete. The description does not need to explain return values or specifics of 'active' since the output schema and tool context cover these.
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 schema coverage is effectively 100% with no properties. According to the rubric, a 0-parameter tool receives a baseline of 4, and the description does not need to add parameter semantics since there are none.
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 'List active staging sessions' uses a specific verb and resource, clearly defining a list operation scoped to active staging sessions. It distinguishes from sibling list tools like list_inbox and list_recordings by explicitly naming the session context.
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 usage context is implied by the tool's name and sibling tools (e.g., create_session, finalize), but the description does not explicitly state when to use this tool versus alternatives or provide any exclusions. No alternatives are mentioned, so it relies on the agent inferring the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_read_staging_transcriptARead-onlyIdempotent
Read the merged transcript from a staging session.
Use this to review the transcript before finalizing with a name.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | The staging session ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, establishing a safe read operation. The description adds context about the merged transcript and the staging-to-finalization workflow, which goes beyond the structured data.
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 concise sentences, front-loaded with the primary action and followed by usage guidance. Every sentence serves a purpose with no 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 read operation with complete annotations and an output schema, the description is well contextualized. It explains the tool's role relative to finalization and leverages sibling tool names for additional context.
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% for the single parameter session_id, which is described as 'The staging session ID.' The tool description reinforces this by referring to a 'staging session' but adds no additional parameter semantics beyond the 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 'Read the merged transcript from a staging session' – a specific verb and resource. It also distinguishes this from sibling tools like mistral_read_transcript by explicitly mentioning 'staging' and the finalization workflow.
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 provides clear usage context: 'Use this to review the transcript before finalizing with a name.' This tells the agent when to use the tool, though it doesn't explicitly mention alternative tools or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_read_transcriptARead-onlyIdempotent
Read a transcript from a finalized recording.
| Name | Required | Description | Default |
|---|---|---|---|
| clean | No | If True, read transcript_clean.md instead of transcript.md. | |
| recording | Yes | Recording directory name (e.g. 'orca-software-dft'). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the constraint that the recording must be finalized, which is additional behavioral context not present in the annotations.
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 a single sentence, front-loaded with the verb and object, and contains zero filler. It is appropriately minimal.
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 simple read operation with only 2 parameters, full schema documentation, an output schema, and strong annotations, the description is complete. The 'finalized' qualifier plus parameter descriptions are sufficient for correct invocation.
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%, with both 'recording' and 'clean' parameters fully described in the schema. The description does not add any parameter semantics beyond the schema, but meets the baseline for full schema coverage.
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 'Read' with a clear resource 'transcript from a finalized recording,' distinguishing it from the sibling tool mistral_read_staging_transcript. The 'finalized' qualifier precisely scopes the operation.
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 qualifier 'finalized recording' implies this tool is for post-finalization transcripts, providing clear context. However, it does not explicitly name alternatives like mistral_read_staging_transcript or state when not to use it, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_save_processedAIdempotent
Save a cleaned transcript into a finalized recording directory.
Writes the content as transcript_clean.md.
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | The cleaned markdown content to save. | |
| recording | Yes | Recording directory name (e.g. 'orca-software-dft'). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate a write operation (readOnlyHint: false) and idempotent behavior. The description adds valuable context by specifying the exact filename 'transcript_clean.md' and the 'finalized recording directory', which goes beyond the schema and annotations. No contradictions.
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 short sentences, front-loaded with the core purpose, and every word contributes. No waste or repetition.
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 simple 2-parameter write tool with full schema coverage and an output schema, the description covers the essential purpose and output file. It lacks some details like directory existence handling or return value, but those are not critical given the annotations and schema.
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 100%, with both content and recording fully described. The description does not add additional parameter-level meaning beyond what the schema already provides, so the baseline score of 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's function: 'Save a cleaned transcript into a finalized recording directory' with a specific output file. It uses a specific verb+resource and distinguishes from siblings like mistral_read_staging_transcript or mistral_finalize by focusing on saving cleaned content.
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 usage context ('cleaned transcript' → 'finalized recording directory') but does not explicitly mention alternatives or exclusion criteria. It lacks any 'when to use' vs. 'when not to use' guidance, though the purpose is fairly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_set_context_biasAIdempotent
Set context bias terms for better transcription accuracy.
Accepts comma-separated or newline-separated terms (max 100). If 'terms' is a file path relative to the work directory, reads terms from that file.
| Name | Required | Description | Default |
|---|---|---|---|
| terms | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover idempotency and non-destructiveness. The description adds valuable behavioral details beyond that: accepts comma-separated or newline-separated terms, max 100, and supports file path input relative to the work directory. It does not contradict annotations.
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 zero fluff. The first sentence states purpose, the second specifies input constraints. Each sentence earns its place and the structure is front-loaded with the primary 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?
For a simple setter tool with one parameter, the description is nearly complete. It covers input formats, limits, and file path behavior. It could mention whether it replaces or appends to existing bias terms, but the verb 'set' strongly implies replacement, and a sibling 'clear' exists. The presence of an output schema means return values do not need description.
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 only specifies 'terms' as a string with no description. The description fully compensates by explaining accepted formats (comma/newline-separated), the limit (max 100), and the file path interpretation. This turns a bare parameter into a well-understood input.
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 ('Set') and resource ('context bias terms') and clearly states the purpose ('for better transcription accuracy'). It distinguishes from sibling tools like 'get_context_bias' and 'clear_context_bias' by focusing on the set operation.
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 makes clear when to use the tool: to set context bias terms for transcription accuracy. It does not explicitly mention exclusions or alternatives, but the sibling tool names (get, clear) provide context. It adds input format details (comma/newline-separated, max 100, file path) that hint at usage nuances.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_set_languageAIdempotent
Set the transcription language.
Default is English with timestamps enabled. Setting a non-English language automatically disables timestamps (Mistral API constraint: language and timestamp_granularities are mutually exclusive).
| Name | Required | Description | Default |
|---|---|---|---|
| language | Yes | Language name (e.g. 'italian', 'french') or ISO code (e.g. 'it', 'fr'). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It discloses a critical side effect: setting a non-English language automatically disables timestamps due to a Mistral API constraint. This goes beyond annotations and provides valuable behavioral context for the agent.
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 concise sentences, front-loaded with the action, followed by relevant constraints. Every sentence earns its place with no redundant information.
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 tool is simple with one well-documented parameter, and the description covers the key caveat about timestamp mutual exclusivity. An output schema exists, so return values don't need explanation. This is complete for practical use.
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 fully describes the parameter with examples and ISO code formats (100% coverage), so the description doesn't need to add more. It adds context about the default English language but doesn't augment the parameter semantics beyond the 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 'Set the transcription language' with a specific verb and resource, distinguishing it from the sibling getter 'mistral_get_language'. It also provides essential context about the default English setting.
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 explains the default behavior and the important constraint that non-English disables timestamps, which guides usage. However, it doesn't explicitly state when not to use this tool or compare with alternatives beyond the implicit set/get distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_set_workdirAIdempotent
Set the work directory for transcription. Creates inbox/ and .staging/ subdirectories if needed.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the side effect of creating inbox/ and .staging/ subdirectories, adding value beyond the annotations. This aligns with the idempotentHint and non-destructive annotations, with no contradictions.
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 one concise sentence that front-loads the main action and immediately adds the side effect. Every word is useful, with no 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?
This is a simple setter with one parameter. The description covers the primary action and side effect, while annotations and output schema provide additional safety and return information. It is sufficiently complete without needing to explain return values.
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 defines only a 'path' string with no description. The description adds that this path is the work directory for transcription, giving it context. However, it lacks details on path format, existence requirements, or relative vs absolute paths.
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 action: 'Set the work directory for transcription.' It also mentions creating inbox/ and .staging/ subdirectories, which clarifies the scope and distinguishes it from mistral_get_workdir.
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 usage is implied: the tool is for setting the working directory when needed. However, it does not explicitly state when to use it versus alternatives or provide any exclusions or special cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mistral_transcribeA
Transcribe all audio files in a staging session.
Uses the session language set via mistral_set_language (default: English).
| Name | Required | Description | Default |
|---|---|---|---|
| diarize | No | Enable speaker identification. | |
| session_id | Yes | The staging session ID. | |
| timestamp_granularity | No | 'segment' or 'word' level timestamps (ignored for non-English). | segment |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false (non-read) and destructiveHint=false. The description adds value by noting the dependency on the session language and the scope ('all audio files'), but does not disclose further behavioral details like whether the operation overwrites existing transcripts or if it is asynchronous. This is adequate given the annotations, but not rich.
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 only two sentences, front-loaded with the main action, and contains no filler or repetition. Every word earns its place, including the language prerequisite note.
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 3-parameter tool with a robust schema and an output schema, the description provides the essential context: what it does and the language dependency. It does not mention that the transcript can be read later via mistral_read_staging_transcript, but that is inferable from sibling tool names. Overall, it is sufficiently complete for an agent to invoke correctly.
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 100%, so each parameter (session_id, diarize, timestamp_granularity) is already well documented. The tool description itself does not add parameter-specific semantics, but the baseline is 3 because the schema carries the load.
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 a specific action ('Transcribe') and resource ('all audio files in a staging session'), making it distinct from sibling tools like mistral_read_staging_transcript (which reads transcripts) and mistral_finalize (which finalizes). The verb+resource+scope structure is immediately clear.
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 clear context for when to use the tool: you transcribe audio files in a staging session, and the session language (set via mistral_set_language) affects the output. It does not explicitly name alternatives or exclusions, but the purpose is unambiguous enough to guide selection among siblings.
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. Dates show when Glama detected each change.
16 tool updates
v0.1.2- First observed
mistral_clear_context_bias - First observed
mistral_create_session - First observed
mistral_finalize - First observed
mistral_get_context_bias - First observed
mistral_get_language - First observed
mistral_get_workdir - First observed
mistral_list_inbox - First observed
mistral_list_recordings - First observed
mistral_list_sessions - First observed
mistral_read_staging_transcript - First observed
mistral_read_transcript - First observed
mistral_save_processed - First observed
mistral_set_context_bias - First observed
mistral_set_language - First observed
mistral_set_workdir - First observed
mistral_transcribe
TDQS
Each tool targets a distinct stage of the transcription workflow: configuration (workdir, context bias, language), staging (inbox, sessions, transcription), and finalization (recordings, transcripts). Even the two transcript readers are clearly differentiated by staging vs finalized context.
Most tools follow a consistent mistral_verb_noun pattern (e.g., get_workdir, set_language, list_sessions). However, transcribe and finalize are bare verbs, and save_processed uses an adjective, which slightly breaks the pattern.
16 tools is just above the typical well-scoped range of 3-15, but each tool earns its place in the transcription pipeline. The count feels slightly heavy but not bloated.
The tool set covers the full lifecycle from inbox to finalized recording, with configuration options and staging review. Minor gaps exist (e.g., no explicit session deletion or transcript editing), but these can be worked around.
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
Transcribe audio & video to text for AI agents: 100+ languages, speaker labels, webhooks.
- mcpOAuthso.transcribe
Transcribe audio and video into speaker-labelled transcripts, subtitles, clips, and cited Q&A.
Extract structured insights from videos, podcasts, articles, and PDFs with multi-model AI
AI transcription from URLs or files. 119 languages, diarization, SRT/VTT/text export.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceThis service provides fast and reliable transcriptions for audio/video files and voice memos. It allows LLMs to interact with the text content of audio/video file.8MIT
- AlicenseAqualityDmaintenanceLocal speech-to-text transcription using Microsoft's VibeVoice-ASR model with speaker diarization, enabling audio transcription directly in AI tools like Claude Code, Cursor, and OpenCode.32MIT
- AlicenseAqualityCmaintenanceCaptures and transcribes system audio in real-time using OpenAI Whisper, enabling meeting transcription, content creation, and accessibility through natural language.8253MIT
- AlicenseNot gradedqualityCmaintenanceTranscribes audio/video files, generates summaries and structured knowledge items, and supports Notion integration and chat-based interaction. Works as a standalone CLI, Notion integration, or MCP server tool for agent ecosystems.15MIT
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/HiteSit/voxtract'
If you have feedback or need assistance with the MCP directory API, please join our Discord server