Minimax MCP Server for text-to-speech, voice cloning, video generation, and image generation using Minimax API
Server has 3 tools with complete input schemas and descriptions. Naming follows verb_noun convention (text_to_audio, list_voices, voice_clone). Descriptions are detailed but verbose (200-400 chars, above the 10-200 char ideal). Parameters have types and descriptions. However, parameter descriptions embed example values (e.g., 'male-qn-qingse', 'audiobook_female_1') which LLMs may reuse literally. Enum constraints are documented in text but not formalized in schema. Output schema is not explicitly documented. Error handling is minimal, no recovery guidance or categorization. Missing idempotency guidance for costly operations.
List all voices available. Args: voice_type (str, optional): The type of voices to list. Values range ["all", "system", "voice_cloning"], with "all" being the default. Returns: Text content with the list of voices.
Convert text to audio with a given voice and save the output audio file to a given directory. Directory is optional, if not provided, the output file will be saved to $HOME/Desktop. Voice id is optional, if not provided, the default voice will be used. COST WARNING: This tool makes an API call to Minimax which may incur costs. Only use when explicitly requested by the user. Args: text (str): The text to convert to speech. voice_id (str, optional): The id of the voice to use. For example, "male-qn-qingse"/"audiobook_female_1"/"cute_boy"/"Charming_Lady"... model (string, optional): The model to use. speed (float, optional): Speed of the generated audio. Controls the speed of the generated speech. Values range from 0.5 to 2.0, with 1.0 being the default speed. vol (float, optional): Volume of the generated audio. Controls the volume of the generated speech. Values range from 0 to 10, with 1 being the default volume. pitch (int, optional): Pitch of the generated audio. Controls the speed of the generated speech. Values range from -12 to 12, with 0 being the default speed. emotion (str, optional): Emotion of the generated audio. Controls the emotion of the generated speech. Values range ["happy", "sad", "angry", "fearful", "disgusted", "surprised", "neutral"], with "happy" being the default emotion. sample_rate (int, optional): Sample rate of the generated audio. Controls the sample rate of the generated speech. Values range [8000,16000,22050,24000,32000,44100] with 32000 being the default sample rate. bitrate (int, optional): Bitrate of the generated audio. Controls the bitrate of the generated speech. Values range [32000,64000,128000,256000] with 128000 being the default bitrate. channel (int, optional): Channel of the generated audio. Controls the channel of the generated speech. Values range [1, 2] with 1 being the default channel. format (str, optional): Format of the generated audio. Controls the format of the generated speech. Values range ["pcm", "mp3","flac"] with "mp3" being the default format. language_boost (str, optional): Language boost of the generated audio. Controls the language boost of the generated speech. Values range ['Chinese', 'Chinese,Yue', 'English', 'Arabic', 'Russian', 'Spanish', 'French', 'Portuguese', 'German', 'Turkish', 'Dutch', 'Ukrainian', 'Vietnamese', 'Indonesian', 'Japanese', 'Italian', 'Korean', 'Thai', 'Polish', 'Romanian', 'Greek', 'Czech', 'Finnish', 'Hindi', 'auto'] with "auto" being the default language boost. output_directory (str): The directory to save the audio to. Returns: Text content with the path to the output file and name of the voice used.
Parameter descriptions embed example values (voice IDs like 'male-qn-qingse', 'audiobook_female_1') which LLMs tend to reuse literally in real calls, causing failures when those exact voices don't exist in the user's context.
Enum constraints (emotion values, language_boost options, format choices) are documented in text descriptions but not formalized as JSON Schema enums, making them invisible to schema validators and harder for LLMs to parse.
Output schema is not documented. Tools return TextContent with unstructured text (e.g., 'Success. File saved as: ...'). LLMs cannot reliably extract file paths or voice IDs for downstream tool chaining.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | <=2025-11-25 | v2 |
Clone a voice using provided audio files. The new voice will be charged upon first use. COST WARNING: This tool makes an API call to Minimax which may incur costs. Only use when explicitly requested by the user. Args: voice_id (str): The id of the voice to use. file (str): The path to the audio file to clone or a URL to the audio file. text (str, optional): The text to use for the demo audio. is_url (bool, optional): Whether the file is a URL. Defaults to False. output_directory (str): The directory to save the demo audio to. Returns: Text content with the voice id of the cloned voice.
No error handling guidance. Errors are raised as MinimaxRequestError or MinimaxAPIError with minimal context. LLMs receive no recovery hints (e.g., 'Try list_voices() to find valid voice IDs').
Costly operations (text_to_audio, voice_clone) lack idempotency guidance or dry-run support. Agents may retry on ambiguous failures, causing duplicate charges. No confirmation pattern documented.