Overview
The Voice File tools provide read-only access to voice file processing status, transcripts, and translations. All tools in this group require themcp:voice:read scope.
Available Tools:
get_voice_file_job- Check the processing status of a voice fileget_voice_file_transcript- Retrieve the transcript of a processed voice fileget_voice_file_translations- Get all available translationsget_voice_file_translation- Get a translation in a specific language
- Monitor voice file processing progress
- Retrieve transcripts after processing completes
- Access translations in multiple languages
get_voice_file_job
Checks the current processing status of a voice file job. Required Scope:mcp:voice:read
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The unique job ID returned when the voice file was submitted |
Request Example
Response
| Field | Type | Description |
|---|---|---|
jobId | string | The unique job identifier |
status | string | Current status: pending, processing, completed, or failed |
progress | number | Processing progress percentage (0-100) |
createdAt | string | Timestamp when the job was created (ISO 8601) |
completedAt | string | null | Timestamp when processing finished (ISO 8601) |
Processing time varies based on audio length and server load. Typically, a 1-hour audio file takes approximately 18 minutes to process (~0.3x real-time).
get_voice_file_transcript
Retrieves the full transcript of a processed voice file. Required Scope:mcp:voice:read
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The unique job ID |
Request Example
Response
| Field | Type | Description |
|---|---|---|
segments | array | List of transcript segments |
segments[].speaker | string | Speaker identifier |
segments[].startTime | number | Segment start time in seconds |
segments[].endTime | number | Segment end time in seconds |
segments[].text | string | Transcribed text for the segment |
locale | string | Detected language code |
duration | number | Total audio duration in seconds |
get_voice_file_translations
Retrieves all available translations for a processed voice file. Required Scope:mcp:voice:read
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The unique job ID |
Request Example
Response
| Field | Type | Description |
|---|---|---|
translations | array | List of available translations |
translations[].locale | string | Language code (e.g., en, ja, ko) |
translations[].text | string | Translated full text |
get_voice_file_translation
Retrieves a translation in a specific language. Required Scope:mcp:voice:read
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The unique job ID |
locale | string | Yes | Target language code (e.g., en, ja, ko, zh) |
Request Example
Response
Common Errors
Job Not Found
Solution: Verify thejobId is correct.
Job Not Completed
Solution: Wait for the job to complete. Useget_voice_file_job to check the current status.
Translation Not Available
Solution: Useget_voice_file_translations to see which languages are available.
Best Practices
Check Job Status Before Fetching Transcripts
Check Job Status Before Fetching Transcripts
Always call
get_voice_file_job first to confirm the job status is completed before attempting to retrieve transcripts or translations. This avoids unnecessary error responses.Use Specific Translations When Possible
Use Specific Translations When Possible
If you only need one language, use
get_voice_file_translation with a specific locale instead of get_voice_file_translations. This returns a smaller payload and uses fewer tokens.Handle Processing Delays Gracefully
Handle Processing Delays Gracefully
Voice file processing takes time (typically ~0.3x real-time). Build your workflow to poll
get_voice_file_job periodically rather than waiting synchronously.Next Steps
search_notes
Find notes associated with voice files
Tools Overview
Learn about all available MCP tools