Skip to main content
The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to large language models (LLMs). It is similar to a USB‑C port for AI applications, offering a stable and standardized entry point so models can access databases, APIs, plugins, or other tools. With MCP tools, developers can let LLMs access various tools hosted on remote MCP servers. MiniMax provides official Python and JavaScript implementations of the MCP server, supporting multimodal capabilities such as text-to-speech (TTS), voice cloning, image generation, and video generation. Developers can self-host MCP services and access them from MCP clients (e.g., Claude Desktop, Cursor, Windsurf, OpenAI Agents) to quickly integrate voice, image, and video features. For transport, the Python version supports stdio and SSE, while the JavaScript version supports stdio, REST, and SSE.

MiniMax MCP Tools and Parameters

1. text_to_audio

This tool converts the text to natural and fluent speech.
ParameterDescriptionFormat / NotesDefault
textRequired. The text to synthesize.String, max length < 10,000 characters; use newline characters for paragraph breaks.None
output_directoryDirectory for saving audio files.String (file path).Path from config file
voice_idVoice ID to use.String, see API documentation for available options.”female-shaonv”
modelModel version to use.String, see API documentation for available options.”speech-02-hd”
speedSpeed adjustment.Float, range [0.5, 2.0].1.0
volPlayback volume.Float, range (0, 10].1.0
pitchPitch adjustment.Integer, range [-12, 12].0 (Output in original voice)
emotionEmotional tone.String, allowed values: [“happy”, “sad”, “angry”, “fearful”, “disgusted”, “surprised”, “calm”]; supported only by speech-02-hd, speech-02-turbo, speech-01-turbo, speech-01-hd.happy
sample_rateAudio sample rate.Integer, allowed: [8000, 16000, 22050, 24000, 32000, 44100].32000
bitrateAudio bitrate.Integer, allowed: [32000, 64000, 128000, 256000]; applies to mp3 only.128000
channelNumber of channels.Integer, 1 = mono, 2 = stereo.1
formatOutput audio format.String, allowed: [“pcm”, “mp3”, “flac”, “wav”]; “wav” supported only in non-streaming mode.mp3
language_boostLanguage-specific enhancement.String, see API documentation for available options.null

2. list_voices

This tool lists all available voices.
ParameterDescriptionFormat / NotesDefault
voice_typeVoice type to queryString, allowed: [system (built-in voices), voice_cloning (fast-cloned voices), voice_generation (voices created by the text-to-voice API), music_generation (vocal/accompaniment voices from music generation), all (all of the above)]“all”

3. voice_clone

This tool clones a voice from a specified audio file.
ParameterDescriptionFormat / NotesDefault
voice_idRequired. ID for the cloned voice.String, rules: 1) Length [8, 256]; 2) Must start with a letter; 3) Digits, letters, - and _ allowed; 4) Must not end with - or _; 5) Must be unique.None
fileRequired. Audio file to clone from.String, formats: [“mp3”, “m4a”, “wav”]None
textDemo text for the cloned voice.String, no more than 2000 characters.None
output_directoryDirectory to save audio files.String (file path)Path from config file
is_urlWhether the source audio is a URL.Boolean (True / False)False

4. voice_design

This tool generates a voice and preview audio from a prompt.
ParameterDescriptionFormat / NotesDefault
promptRequired. Description of the voice to generate.StringNone
preview_textRequired. Text for preview audio.StringNone
voice_idCustom ID for the generated voice.StringAuto-generated unique value
output_directoryDirectory to save preview audio.String (file path)Path from config file

5. play_audio

This tool plays an audio file.
ParameterDescriptionFormat / NotesDefault
input_file_pathRequired. Local path or URL of the audio file to play.String (file path or URL)None
is_urlWhether the audio source is a URL.Boolean (True / False)False

6. music_generation

This tool generates music from a prompt and lyrics.
ParameterDescriptionFormat / NotesDefault
promptRequired. Inspiration for the composition (style, mood, scene, etc.).String, 10–300 charactersNone
lyricsRequired. Lyrics for generation.String, lines separated by \n; supports [Intro], [Verse], [Chorus], [Bridge], [Outro]; 10–600 characters.None
sample_rateMusic sample rate.Integer, allowed: [16000, 24000, 32000, 44100]32000
bitrateMusic bitrate.Integer, allowed: [32000, 64000, 128000, 256000]128000
formatMusic format.String, allowed: [“mp3”, “wav”, “pcm”]“mp3”
output_directoryDirectory to save music files.String (file path)Path from config file.

7. generate_video

Generates a video based on a prompt. At least one of prompt or first_frame_image in the parameters is required.
ParameterDescriptionFormat and NotesDefault
promptVideo descriptionString, no more than 2000 charactersNone
modelModel versionString, allowed values: [“MiniMax-Hailuo-02”, “T2V-01-Director”, “I2V-01-Director”, “S2V-01”, “I2V-01-live”, “I2V-01”, “T2V-01”]“T2V-01”
first_frame_imageFirst frame imageBase64 string in data:image/jpeg;base64,{data} format, or a public URLNone
durationDuration (seconds)Integer, allowed [6, 10]. Depends on model and resolution:
• 01 series (T2V-01, I2V-01, T2V-01-Director, I2V-01-live, S2V-01): 6
• 02 series (MiniMax-Hailuo-02):
512P: 6 or 10,
768P: 6 or 10,
1080P: 6
6
resolutionOutput resolutionString, depends on model & duration:
• 01 series(T2V-01, I2V-01, T2V-01-Director, I2V-01-live, S2V-01): fixed (6s → “720P”)
• 02 series (MiniMax-Hailuo-02):
6s default “768P”, allowed [“512P”,“768P”,“1080P”];
10s default “768P”, allowed [“512P”,“768P”]
None
output_directorySave path for videosString (file path)Config file path
async_modeAsync mode (returns task ID)Boolean (True / False)False

8. image_to_video

Generates a video from a first-frame image. At least one of prompt or first_frame_image in the parameters is required. Only available in the JavaScript/TypeScript MCP version.
ParameterDescriptionFormat and NotesDefault
promptVideo descriptionString, no more than 2000 charactersNone
modelModel versionString, allowed values: [“MiniMax-Hailuo-02”, “T2V-01-Director”, “I2V-01-Director”, “S2V-01”, “I2V-01-live”, “I2V-01”, “T2V-01”]“T2V-01”
first_frame_imageFirst frame imageBase64 string in data:image/jpeg;base64,{data} format, or a public URLNone
output_directorySave path for videosString (file path)Config file path
async_modeAsync mode (returns task ID)Boolean (True / False)False

9. query_video_generation

Queries the status of an asynchronous video generation task.
ParameterDescriptionFormat and NotesDefault
task_idRequired. Task ID to queryStringNone
output_directoryDirectory to save videosString (file path)Config file path

10. text_to_image

Generates images from a text prompt.
ParameterDescriptionFormat and NotesDefault
promptRequired. Image descriptionString, no more than 1500 charactersNone
modelModel versionString, allowed values: [“image-01”, “image-01-live”]“image-01”
aspect_ratioOutput aspect ratioString, allowed values: [“1:1”, “16:9”, “4:3”, “3:2”, “2:3”, “3:4”, “9:16”, “21:9”]“1:1”
nNumber of images per requestInteger, range [1, 9]1
prompt_optimizerAuto-optimize promptBoolean (True / False)True
output_directoryDirectory to save imagesString (file path)Config file path

Use the MiniMax MCP Server in Clients

Get an API Key

  1. Visit the MiniMax Developer Platform.
  2. Click the “Create new secret key” button and enter a project name to create a new API key.
  3. After creation, the system will display the API key. Be sure to copy and save it securely. The key is shown only once and cannot be viewed again.
图片描述

UVX Installation and Configuration

MiniMax‑MCP is a Python-implemented MCP service. To allow MCP clients to call it, the service must be started and executed via uvx. uvx is a command-line tool provided by uv, similar to npm exec. It is used to run executables defined within a package, ensuring environment isolation and dependency control.
  1. Install uv (to get uvx)
  • macOS / Linux users:
curl -LsSf https://astral.sh/uv/install.sh | sh
  • Windows users:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Other installation methods can be found in the uv repository. After installation, uv and uvx executables will be created under the Python environment’s Scripts or bin directory.
  1. Verify uvx is available Run the following command:
  • macOS / Linux users:
which uvx
  • Windows users:
(Get-Command uvx).source
  • If installed correctly, a path will be shown (e.g., /usr/local/bin/uvx).
  • If you encounter the error spawn uvx ENOENT, it means that uvx is either not installed or not in your system PATH. You need to provide its absolute path.

Transport Modes

MiniMax-MCP provides two transport modes: studio and SSE. Choose as needed.
Modestdio (default)SSE
RuntimeLocal onlyLocal or cloud deployment
CommunicationVia standard I/OVia server-sent events
Use CaseLocal MCP client integrationApplications requiring server push
InputSupports local files or URL resourcesWhen deployed in cloud, URL input recommended

Use in Claude Desktop

  1. Download Claude Desktop.
  2. Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json, add the following configuration.
  3. Restart Claude Desktop when finished. Note: If you’re on Windows, enable “Developer mode” in Claude Desktop to use MCP servers. If you see the error spawn uvx ENOENT, set the absolute path to uvx in "command".
{
  "mcpServers": {
    "MiniMax": {
      "command": "uvx",
      "args": ["minimax-mcp"],
      "env": {
        "MINIMAX_API_KEY": "Enter your API key",
        "MINIMAX_MCP_BASE_PATH": "Local output directory path, e.g., /User/xxx/Desktop",
        "MINIMAX_API_HOST": "https://api.minimax.io",
        "MINIMAX_API_RESOURCE_MODE": "Optional. Specifies how generated resources are exposed. Options: [url | local]. Default: url"
      },
      "transport": "Optional: transport mode. Options: [studio|SSE], default: studio"
    }
  }
}

Use in Cursor

  1. Download and install Cursor.
  2. Go to Cursor -> Preferences -> Cursor Settings -> Tools & Inrgrations -> MCP -> Add Custom MCP to open the MCP tool config file.
图片描述
  1. Add MiniMax account configuration in mcp.json file.
{
  "mcpServers": {
    "MiniMax": {
      "command": "uvx",
      "args": ["minimax-mcp"],
      "env": {
        "MINIMAX_API_KEY": "Enter your API key",
        "MINIMAX_MCP_BASE_PATH": "Local output directory path, e.g., /User/xxx/Desktop; ensure the path exists and is writable",
        "MINIMAX_API_HOST": "https://api.minimax.io",
        "MINIMAX_API_RESOURCE_MODE": "Optional. Specifies how generated resources are exposed. Options: [url | local]. Default: url"
      },
      "transport": "Optional: transport mode. Options: [studio|SSE], default: studio"
    }
  }
}
  1. After configuration, you can view the MCP tools currently supported by MiniMax.
图片描述

Use in Cherry Studio

  1. Download the Cherry Studio client.
  2. Go to Settings -> MCP Settings -> Add Server -> Import from JSON, paste the following and confirm.
{
  "name": "minimax-mcp",
  "isActive": true,
  "command": "uvx",
  "args": ["minimax-mcp"],
  "env": {
    "MINIMAX_API_KEY": "Enter your API key",
    "MINIMAX_MCP_BASE_PATH": "Local output directory path, e.g., /User/xxx/Desktop; ensure the path exists and is writable",
    "MINIMAX_API_HOST": "https://api.minimax.io",
    "MINIMAX_API_RESOURCE_MODE": "Optional. Specifies how generated resources are exposed. Options: [url | local]. Default: url"
  },
  "transport": "Optional: transport mode. Options: [studio|SSE], default: studio"
}
  1. In the chat panel, click MCP Settings and select the configured “MiniMax MCP” to use it.
图片描述

Use the MiniMax MCP JS Server in Clients

Get an API Key

  1. Visit the MiniMax Developer Platform.
  2. Click the “Create new secret key” button and enter a project name to create a new API key.
  3. After creation, the system will display the API key. Be sure to copy and save it securely. The key is shown only once and cannot be viewed again.
图片描述

Node.js and npm Installation

Node.js is an open-source JavaScript runtime that can run JavaScript outside the browser. It is based on Google’s V8 engine, with high performance, event-driven, and non-blocking I/O characteristics, making it suitable for high-concurrency network services, real-time apps, and microservices. npm is the default package manager installed with Node.js and the world’s largest software registry. Developers can use npm to search, install, update, and manage dependencies (both frontend and backend), greatly simplifying development.
  1. Install Node.js and npm
  2. Verify installation
Run the following commands; if installed correctly, it will display the versions of Node.js and npm
node -v 
npm -v

Transport Modes

MiniMax-MCP-JS supports studio, REST, and SSE; choose as needed
Modestdio (default)RESTSSE
RuntimeLocal onlyLocal or cloud deploymentLocal or cloud deployment
CommunicationVia standard I/OVia HTTP requestsVia server-sent events
Use CaseLocal MCP client integrationAPI services, cross-language callsApplications requiring server push
InputSupports local files or URL resourcesWhen deployed in cloud, URL input recommendedWhen deployed in cloud, URL input recommended

Use in Claude Desktop

  1. Download Claude Desktop.
  2. Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json, add the following configuration.
  3. Restart Claude Desktop when finished. Note: If you’re on Windows, enable “Developer mode” in Claude Desktop to use MCP servers. If you see the error spawn uvx ENOENT, set the absolute path to uvx in "command".
{
  "mcpServers": {
    "minimax-mcp-js": {
      "command": "npx",
      "args": ["-y", "minimax-mcp-js"],
      "env": {
        "MINIMAX_API_HOST": "https://api.minimax.io",
        "MINIMAX_API_KEY": "<Your API key>",
        "MINIMAX_MCP_BASE_PATH": "<Local output directory path, e.g., /User/xxx/Desktop>",
        "MINIMAX_RESOURCE_MODE": "<Optional: how to expose generated resources, [url|local], default url>"
      },
      "transport": "Optional: transport mode [studio|REST|SSE], default studio"
    }
  }
}

Use in Cursor

  1. Download and install Cursor.
  2. Go to Cursor -> Preferences -> Cursor Settings -> Tools & Inrgrations -> MCP -> Add Custom MCP to open the MCP tool config file.
图片描述
  1. Add MiniMax account configuration in mcp.json file.
{
  "mcpServers": {
    "MiniMax-MCP-JS": {
      "command": "npx",
      "args": ["-y", "minimax-mcp-js"],
      "env": {
        "MINIMAX_API_KEY": "Enter your API key",
        "MINIMAX_MCP_BASE_PATH": "Local output directory path, e.g., /User/xxx/Desktop; ensure the path exists and is writable",
        "MINIMAX_API_HOST": "https://api.minimax.io",
        "MINIMAX_API_RESOURCE_MODE": "Optional: how to expose generated resources, [url|local], default url"
      },
      "transport": "Optional: transport mode [studio|REST|SSE], default studio"
    }
  }
}
  1. After configuration, you can view the MCP tools currently supported by MiniMax.
图片描述

Use in Cherry Studio

  1. Download the Cherry Studio client.
  2. Go to Settings -> MCP Settings -> Add Server -> Import from JSON, paste the following and confirm.
{
  "name": "MiniMax-MCP-JS",
  "isActive": true,
  "command": "npx",
  "args": ["-y", "minimax-mcp-js"],
  "env": {
    "MINIMAX_API_KEY": "Enter your API key",
    "MINIMAX_MCP_BASE_PATH": "Local output directory path, e.g., /User/xxx/Desktop; ensure the path exists and is writable",
    "MINIMAX_API_HOST": "https://api.minimax.io",
    "MINIMAX_API_RESOURCE_MODE": "Optional: how to expose generated resources, [url|local], default url"
  },
  "transport": "Optional: transport mode [studio|REST|SSE], default studio"
}
  1. In the chat panel, click MCP Settings and select the configured “MiniMax-MCP-JS” to use it.
图片描述

Usage Examples

Audio tools

  1. Choose suitable voice information and broadcast an evening news segment.
Reference prompt:
choose a voice, and broadcast a segment of the evening news.
Generated content: Thinking process: 图片描述
  1. Clone a voice from a specified audio and specify the cloned voice ID. Reference prompt:

clone the voice from the audio file named Marketing_Voice.sav, the id is test_vlone_voice.
Source audio: Result audio: Thinking process: 图片描述
  1. Design a voice as required and generate audio using the sample text.
Reference prompt:

Design a voice, the requirement is "Mysterious narrator with a deep, magnetic voice, suspenseful tone, moderate pace, subtle reverb". Then use it in the sample Text: "In the shadows of the old manor, secrets whisper through the walls. Beware what you seek…"
Generated content: Thinking process: 图片描述

Music generation tool

Reference prompt:

generate a song, the background music is gentle ambient piano and warm pad synth, soft reverb and subtle field recordings of wind chimes. The musical style: calm and reflective Lyrics: 'In the stillness of the midnight air, Find the echoes of dreams we share. Softly drifting 'neath pale moonlight, Whispering hearts drifting into night.'"
Generated content: Thinking process 图片描述

Image generation tool

Reference prompt:

generate a hyperreal style picture, the requirement is "Ultra‑detailed digital painting of a serene mountain lake at sunrise, ultra-realistic, soft golden light, mist over the water"
Generated content: 图片描述 Thinking process: 图片描述

Video generation tool

Reference prompt and image:

From the existing image of a kitten perched on a diving board, create a short video showing the kitten crouching, leaping off into the pool, and making a small splash—adorable and playful. Use MiniMax-Hailuo-02 model, and resolution is 1080P
图片描述 Generated content: Thinking process: 图片描述

How to contribute

If you would like to contribute to the MiniMax MCP project—whether by adding improvements or fixing bugs—you can do so in the following ways:
  1. Open a new Issue on the GitHub repository (Python version or JS version) and briefly describe the change you propose or the problem you encountered.
  2. Create a Pull Request (PR) after receiving feedback, following the project’s contribution guidelines. Include a clear description of your changes and any relevant context.
  3. PR Review: Project maintainers will review your submission and provide suggestions for merging or request further revisions if necessary.