Both submit tools return a task ID and nothing else, and the files exist only once task_barrier returns, which is what makes batching worth doing: fire off several generations to saturate the rate limit, then block once. The price of that shape is that individual jobs are not addressable — there is no per-task status check and no cancel — and task_barrier clears completed tasks as it hands them back, so the results are collected once.
A three-tool asynchronous media server over MiniMax: one submit call for images, one for speech, and a barrier that waits for everything outstanding.
- Image jobs submitted with aspectRatio or customSize, style, seed, and a subjectReference for holding a subject steady across images
- Speech jobs with the voice controls the API exposes — voiceId, emotion, intensity, timbre, pitch, speed, volume and languageBoost
- Output shaped at submission time: format, bitrate, sampleRate and highQuality on speech, and outputFile on both submit calls so results land where you asked
- sound_effects applied on the speech call rather than in post
- task_barrier, a single call that waits for every submitted task, returns all results together and clears the completed ones
MINIMAX_API_KEY, and a writable outputFile path for each job you submit. MIT licensed.
One command — npx minimax-mcp-tools
