MiniMax Multimodal MCP server

Official JavaScript implementation that integrates with MiniMax's multimodal capabilities for image generation, video creation, text-to-speech, and voice cloning across multiple transport modes.
Back to servers
Setup instructions
Provider
MiniMax AI
Release date
Apr 16, 2025
Language
TypeScript
Package
Stats
8.6K downloads
73 stars

The MiniMax MCP server provides a JavaScript/TypeScript implementation of the Model Context Protocol, enabling AI systems to access image generation, video creation, text-to-speech, and other creative capabilities.

Installation

Installing via Smithery

To install MiniMax MCP JS automatically for Claude Desktop:

npx -y @smithery/cli install @MiniMax-AI/MiniMax-MCP-JS --client claude

Installing manually

# Install with pnpm (recommended)
pnpm add minimax-mcp-js

Quick Start

  1. Get your API key from MiniMax International Platform.
  2. Make sure you have installed Node.js and npm.
  3. Important: API HOST & KEY must match by region, otherwise you'll receive an "Invalid API key" error.
Region Global Mainland
MINIMAX_API_KEY Get from MiniMax Global Get from MiniMax
MINIMAX_API_HOST ​https://api.minimaxi.chat (note the extra "i") ​https://api.minimax.chat

Using with MCP Clients

Claude Desktop

Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include:

{
  "mcpServers": {
    "minimax-mcp-js": {
      "command": "npx",
      "args": [
        "-y",
        "minimax-mcp-js"
      ],
      "env": {
        "MINIMAX_API_HOST": "<https://api.minimaxi.chat|https://api.minimax.chat>",
        "MINIMAX_API_KEY": "<your-api-key-here>",
        "MINIMAX_MCP_BASE_PATH": "<local-output-dir-path, such as /User/xxx/Desktop>",
        "MINIMAX_RESOURCE_MODE": "<optional, [url|local], url is default>"
      }
    }
  }
}

Cursor

Go to Cursor → Preferences → Cursor Settings → MCP → Add new global MCP Server to add the above config.

⚠️ Note: If you encounter a "No tools found" error when using MiniMax MCP JS with Cursor, please update your Cursor to the latest version.

Configuration

MiniMax-MCP-JS provides multiple configuration methods with the following priority (highest to lowest):

  1. Request Parameter Configuration

    • For platform hosting, provide configuration via the meta.auth object
  2. API Configuration

    import { startMiniMaxMCP } from 'minimax-mcp-js';
    
    await startMiniMaxMCP({
      apiKey: 'your_api_key_here',
      apiHost: 'https://api.minimaxi.chat',
      basePath: '/path/to/output',
      resourceMode: 'url'
    });
    
  3. Command Line Arguments

    minimax-mcp-js --api-key your_api_key_here --api-host https://api.minimaxi.chat --base-path /path/to/output --resource-mode url
    
  4. Environment Variables

    # MiniMax API Key (required)
    MINIMAX_API_KEY=your_api_key_here
    
    # Base path for output files (optional, defaults to user's desktop)
    MINIMAX_MCP_BASE_PATH=~/Desktop
    
    # MiniMax API Host (optional, defaults to https://api.minimaxi.chat)
    MINIMAX_API_HOST=https://api.minimaxi.chat
    
    # Resource mode (optional, defaults to 'url')
    # Options: 'url' (return URLs), 'local' (save files locally)
    MINIMAX_RESOURCE_MODE=url
    

Available Tools

Text to Audio

Convert text to speech audio file.

Tool: text_to_audio

Parameters:
- text: Text to convert (required)
- model: Model version (default: 'speech-02-hd')
- voiceId: Voice ID (default: 'male-qn-qingse')
- speed: Speech speed, range 0.5-2.0 (default: 1.0)
- vol: Volume, range 0.1-10.0 (default: 1.0)
- pitch: Pitch, range -12 to 12 (default: 0)
- emotion: Emotion type (default: 'happy')
- format: Audio format (default: 'mp3')
- sampleRate: Sample rate in Hz (default: 32000)
- bitrate: Bitrate in bps (default: 128000)
- channel: Audio channels (default: 1)
- languageBoost: Enhance language recognition (default: 'auto')
- stream: Enable streaming output
- subtitleEnable: Enable subtitle service (default: false)
- outputDirectory: Directory to save output (optional)
- outputFile: Path to save output (optional)

Play Audio

Play an audio file. Supports WAV and MP3 formats.

Tool: play_audio

Parameters:
- inputFilePath: Path to the audio file (required)
- isUrl: Whether the audio file is a URL (default: false)

Voice Clone

Clone a voice from an audio file.

Tool: voice_clone

Parameters:
- audioFile: Path to audio file (required)
- voiceId: Voice ID (required)
- text: Text for demo audio (optional)
- outputDirectory: Directory to save output (optional)

Text to Image

Generate images based on text prompts.

Tool: text_to_image

Parameters:
- prompt: Image description (required)
- model: Model version (default: 'image-01')
- aspectRatio: Aspect ratio (default: '1:1')
- n: Number of images to generate (default: 1)
- promptOptimizer: Whether to optimize the prompt (default: true)
- subjectReference: Path to reference image (optional)
- outputDirectory: Directory to save output (optional)
- outputFile: Path to save output (optional)
- asyncMode: Whether to use async mode (default: false)

Generate Video

Generate videos based on text prompts.

Tool: generate_video

Parameters:
- prompt: Video description (required)
- model: Model version (default: 'MiniMax-Hailuo-02')
- firstFrameImage: Path to first frame image (optional)
- duration: Video duration in seconds (optional)
- resolution: Video resolution (optional)
- outputDirectory: Directory to save output (optional)
- outputFile: Path to save output (optional)
- asyncMode: Whether to use async mode (default: false)

Query Video Generation Status

Query the status of an asynchronous video generation task.

Tool: query_video_generation

Parameters:
- taskId: The Task ID to query (required)
- outputDirectory: Directory to save output (optional)

Generate Music

Generate music from prompt and lyrics.

Tool: music_generation

Parameters:
- prompt: Music creation inspiration (required)
- lyrics: Song lyrics for music generation (required)
- sampleRate: Sample rate in Hz (default: 32000)
- bitrate: Bitrate in bps (default: 128000)
- format: Output format (default: 'mp3')
- outputDirectory: Directory to save output (optional)

Voice Design

Generate a voice based on description prompts.

Tool: voice_design

Parameters:
- prompt: The prompt to generate the voice from (required)
- previewText: The text to preview the voice (required)
- voiceId: The ID of the voice to use (optional)
- outputDirectory: Directory to save output (optional)

Transport Modes

MiniMax MCP JS supports three transport modes:

Feature stdio (default) REST SSE
Environment Local only Local or cloud Local or cloud
Communication Via standard I/O Via HTTP requests Via server-sent events
Use Cases Local MCP client integration API services, cross-language calls Applications requiring server push
Input Restrictions Supports local files or URL resources URL input recommended for cloud deployment URL input recommended for cloud deployment

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "minimax-mcp-js" '{"command":"npx","args":["-y","minimax-mcp-js"],"env":{"MINIMAX_API_HOST":"<https://api.minimaxi.chat|https://api.minimax.chat>","MINIMAX_API_KEY":"<your-api-key-here>","MINIMAX_MCP_BASE_PATH":"<local-output-dir-path, such as /User/xxx/Desktop>","MINIMAX_RESOURCE_MODE":"<optional, [url|local], url is default, audio/image/video are downloaded locally or provided in URL format>"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "minimax-mcp-js": {
            "command": "npx",
            "args": [
                "-y",
                "minimax-mcp-js"
            ],
            "env": {
                "MINIMAX_API_HOST": "<https://api.minimaxi.chat|https://api.minimax.chat>",
                "MINIMAX_API_KEY": "<your-api-key-here>",
                "MINIMAX_MCP_BASE_PATH": "<local-output-dir-path, such as /User/xxx/Desktop>",
                "MINIMAX_RESOURCE_MODE": "<optional, [url|local], url is default, audio/image/video are downloaded locally or provided in URL format>"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "minimax-mcp-js": {
            "command": "npx",
            "args": [
                "-y",
                "minimax-mcp-js"
            ],
            "env": {
                "MINIMAX_API_HOST": "<https://api.minimaxi.chat|https://api.minimax.chat>",
                "MINIMAX_API_KEY": "<your-api-key-here>",
                "MINIMAX_MCP_BASE_PATH": "<local-output-dir-path, such as /User/xxx/Desktop>",
                "MINIMAX_RESOURCE_MODE": "<optional, [url|local], url is default, audio/image/video are downloaded locally or provided in URL format>"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later