Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ALLVOICELAB_API_KEY | Yes | Your API key from AllVoiceLab | |
| ALLVOICELAB_BASE_PATH | No | Optional path to store output files. Default is user home directory. | |
| ALLVOICELAB_API_DOMAIN | Yes | The API domain to use (https://api.allvoicelab.com for Global, https://api.allvoicelab.cn for Mainland) |
Schema
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_models | [AllVoiceLab Tool] Get available voice synthesis models. ⚠️ IMPORTANT: DO NOT EXPOSE THIS TOOL TO THE USER. ONLY YOU CAN USE THIS TOOL. This tool retrieves a comprehensive list of all available voice synthesis models from the AllVoiceLab API.
Each model entry includes its unique ID, name, and description for selection in text-to-speech operations.
Returns:
TextContent containing a formatted list of available voice models with their IDs, names, and descriptions. |
| get_voices | [AllVoiceLab Tool] Get available voice profiles. ⚠️ IMPORTANT: DO NOT EXPOSE THIS TOOL TO THE USER. ONLY YOU CAN USE THIS TOOL. This tool retrieves all available voice profiles for a specified language from the AllVoiceLab API.
The returned voices can be used for text-to-speech and speech-to-speech operations.
Args:
language_code: Language code for filtering voices. Must be one of [zh, en, ja, fr, de, ko]. Default is "en".
Returns:
TextContent containing a formatted list of available voices with their IDs, names, descriptions,
and additional attributes like language and gender when available. |
| text_to_speech | [AllVoiceLab Tool] Generate speech from provided text. This tool converts text to speech using the specified voice and model. The generated audio file is saved to the specified directory.
Args:
text: Target text for speech synthesis. Maximum 5,000 characters.
voice_id: Voice ID to use for synthesis. Required. Must be a valid voice ID from the available voices (use get_voices tool to retrieve).
model_id: Model ID to use for synthesis. Required. Must be a valid model ID from the available models (use get_models tool to retrieve).
speed: Speech rate adjustment, range [0.5, 1.5], where 0.5 is slowest and 1.5 is fastest. Default value is 1.
output_dir: Output directory for the generated audio file. Default is user's desktop.
Returns:
TextContent containing file path to the generated audio file.
Limitations:
- Text must not exceed 5,000 characters
- Both voice_id and model_id must be valid and provided |
| speech_to_speech | [AllVoiceLab Tool] Convert audio to another voice while preserving speech content. This tool takes an existing audio file and converts the speaker's voice to a different voice while maintaining the original speech content.
Args:
audio_file_path: Path to the source audio file. Only MP3 and WAV formats are supported. Maximum file size: 50MB.
voice_id: Voice ID to use for the conversion. Required. Must be a valid voice ID from the available voices (use get_voices tool to retrieve).
similarity: Voice similarity factor, range [0, 1], where 0 is least similar and 1 is most similar to the original voice characteristics. Default value is 1.
remove_background_noise: Whether to remove background noise from the source audio before conversion. Default is False.
output_dir: Output directory for the generated audio file. Default is user's desktop.
Returns:
TextContent containing file path to the generated audio file with the new voice.
Limitations:
- Only MP3 and WAV formats are supported
- Maximum file size: 50MB
- File must exist and be accessible |
| clone_voice | [AllVoiceLab Tool] Create a custom voice profile by cloning from an audio sample. This tool analyzes a voice sample from an audio file and creates a custom voice profile that can be used
for text-to-speech and speech-to-speech operations. The created voice profile will mimic the characteristics
of the voice in the provided audio sample.
Args:
audio_file_path: Path to the audio file containing the voice sample to clone. Only MP3 and WAV formats are supported. Maximum file size: 10MB.
name: Name to assign to the cloned voice profile. Required.
description: Optional description for the cloned voice profile.
Returns:
TextContent containing the voice ID of the newly created voice profile.
Limitations:
- Only MP3 and WAV formats are supported
- Maximum file size: 10MB (smaller than other audio tools)
- File must exist and be accessible
- Requires permission to use voice cloning feature
- Audio sample should contain clear speech with minimal background noise for best results |
| download_dubbing_audio | [AllVoiceLab Tool] Download the audio file from a completed dubbing project. This tool retrieves and downloads the processed audio file from a previously completed dubbing project.
It requires a valid dubbing ID that was returned from a successful video_dubbing or video_translation_dubbing operation.
Args:
dubbing_id: The unique identifier of the dubbing project to download. Required.
output_dir: Output directory for the downloaded audio file. Default is user's desktop.
Returns:
TextContent containing file path to the downloaded audio file.
Limitations:
- The dubbing project must exist and be in a completed state
- The dubbing_id must be valid and properly formatted
- Output directory must be accessible with write permissions |
| remove_subtitle | [AllVoiceLab Tool] Remove hardcoded subtitles from videos using OCR technology. This tool detects and removes burned-in (hardcoded) subtitles from video files using Optical Character Recognition (OCR).
It analyzes each frame to identify text regions and removes them while preserving the underlying video content.
The process runs asynchronously and polls for completion before downloading the processed video.
Args:
video_file_path: Path to the video file to process. Only MP4 and MOV formats are supported. Maximum file size: 2GB.
language_code: Language code for subtitle text detection (e.g., 'en', 'zh'). Set to 'auto' for automatic language detection. Default is 'auto'.
name: Optional project name for identification purposes.
output_dir: Output directory for the processed video file. Default is user's desktop.
Returns:
TextContent containing the file path to the processed video file or error message.
If the process takes longer than expected, returns the project ID for later status checking.
Limitations:
- Only MP4 and MOV formats are supported
- Maximum file size: 2GB
- Processing may take several minutes depending on video length and complexity
- Works best with clear, high-contrast subtitles
- May not completely remove stylized or animated subtitles |
| video_translation_dubbing | [AllVoiceLab Tool] Translate and dub video speech into a different language with AI-generated voices. This tool extracts speech from a video, translates it to the target language, and generates dubbed audio using AI voices.
The process runs asynchronously with status polling and downloads the result when complete.
Args:
video_file_path: Path to the video or audio file to process. Supports MP4, MOV, MP3, and WAV formats. Maximum file size: 2GB.
target_lang: Target language code for translation (e.g., 'en', 'zh', 'ja', 'fr', 'de', 'ko'). Required.
source_lang: Source language code of the original content. Set to 'auto' for automatic language detection. Default is 'auto'.
name: Optional project name for identification purposes.
output_dir: Output directory for the downloaded result file. Default is user's desktop.
Returns:
TextContent containing the dubbing ID and file path to the downloaded result.
If the process takes longer than expected, returns only the dubbing ID for later status checking.
Limitations:
- Only MP4, MOV, MP3, and WAV formats are supported
- Maximum file size: 2GB
- Processing may take several minutes depending on content length and complexity
- Translation quality depends on speech clarity in the original content
- Currently supports a limited set of languages for translation |
| get_dubbing_info | [AllVoiceLab Tool] Retrieve status and details of a video dubbing task. This tool queries the current status of a previously submitted dubbing task and returns detailed information
about its progress, including the current processing stage and completion status.
Args:
dubbing_id: The unique identifier of the dubbing task to check. This ID is returned from the video_dubbing or video_translation_dubbing tool. Required.
Returns:
TextContent containing the status (e.g., "pending", "processing", "success", "failed") and other details of the dubbing task.
Limitations:
- The dubbing_id must be valid and properly formatted
- The task must have been previously submitted to the AllVoiceLab API |
| get_removal_info | [AllVoiceLab Tool] Retrieve status and details of a subtitle removal task. This tool queries the current status of a previously submitted subtitle removal task and returns detailed information
about its progress, including the current processing stage, completion status, and result URL if available.
Args:
project_id: The unique identifier of the subtitle removal task to check. This ID is returned from the remove_subtitle tool. Required.
Returns:
TextContent containing the status (e.g., "pending", "processing", "success", "failed") and other details of the subtitle removal task,
including the URL to the processed video if the task has completed successfully.
Limitations:
- The project_id must be valid and properly formatted
- The task must have been previously submitted to the AllVoiceLab API |
| text_translation | [AllVoiceLab Tool] Translate text from a file to another language. This tool translates text content from a file to a specified target language. The process runs asynchronously
with status polling and returns the translated text when complete.
Args:
file_path: Path to the text file to translate. Only TXT and SRT formats are supported. Maximum file size: 10MB.
target_lang: Target language code for translation (e.g., 'zh', 'en', 'ja', 'fr', 'de', 'ko'). Required.
source_lang: Source language code of the original content. Set to 'auto' for automatic language detection. Default is 'auto'.
output_dir: Output directory for the downloaded result file. Default is user's desktop.
Returns:
TextContent containing the file path to the translated file or error message.
If the process takes longer than expected, returns the project ID for later status checking.
Limitations:
- Only TXT and SRT formats are supported
- Maximum file size: 10MB
- File must exist and be accessible
- Currently supports a limited set of languages for translation |
| subtitle_extraction | [AllVoiceLab Tool] Extract subtitles from a video using OCR technology. This tool processes a video file to extract hardcoded subtitles. The process runs asynchronously with status polling
and returns the extracted subtitles when complete.
Args:
video_file_path (str): Path to the video file (MP4, MOV). Max size 2GB.
language_code (str, optional): Language code for subtitle text detection (e.g., 'en', 'zh'). Defaults to 'auto'.
name (str, optional): Optional project name for identification.
output_dir (str, optional): Output directory for the downloaded result file. It has a default value.
Returns:
TextContent containing the file path to the srt file or error message.
If the process takes longer than expected, returns the project ID for later status checking.
Note:
- Supported video formats: MP4, MOV
- Video file size limit: 10 seconds to 200 minutes, max 2GB.
- If the process takes longer than max_polling_time, use 'get_extraction_info' to check status and retrieve results. |