minimax-mcp-api
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@minimax-mcp-apiGenerate an image of a dog playing in the park."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
minimax-mcp-api
A Model Context Protocol (MCP) server written in NestJS that wraps the MiniMax platform APIs and exposes them as MCP tools over stdio.
Prerequisites
Node.js ≥ 22 (per
engines.nodeinpackage.json). Older versions lack the TypeScript target support used intsconfig.build.json.
Related MCP server: minimax-llm-mcp
Install
npm installBuild
npm run buildRun (stdio)
node dist/main.jsEnvironment variables
Variable | Required | Default | Description |
| Yes | — | Bearer token for the MiniMax API |
| No |
| Base URL for the MiniMax API |
| No |
| One of |
| No |
| One of |
Copy .env.example to .env and fill in MINIMAX_API_KEY before running.
MCP tools
Domain | Tool | Endpoint |
Speech |
|
|
Speech |
|
|
Speech |
|
|
Speech |
|
|
Video |
|
|
Video |
|
|
Video |
|
|
Video |
|
|
Image |
|
|
Image |
|
|
Music |
|
|
File |
|
|
File |
|
|
File |
|
|
File |
|
|
File |
|
|
(16 tools total over 5 domains.)
Configure Claude Desktop
Add to ~/.config/claude_desktop_config.json (note: the path to dist/main.js
must be absolute):
{
"mcpServers": {
"minimax": {
"command": "node",
"args": ["/abs/path/to/minimax-mcp-api/dist/main.js"],
"env": {
"MINIMAX_API_KEY": "sk-..."
}
}
}
}Probe with MCP Inspector
npm run inspectTroubleshooting
401/403 from any tool —
MINIMAX_API_KEYis missing, malformed, or revoked. Verify withecho $MINIMAX_API_KEYand recopy the key from the MiniMax dashboard.npm run buildfails with TypeScript errors — Node version mismatch. Checknode -vreturnsv22.x; older Node lacks the target support configured intsconfig.build.json.Claude Desktop can't connect — confirm
args[0]is an absolute path todist/main.js(not relative) and that the file exists (runnpm run buildfirst).MINIMAX_API_URLchange has no effect — stdio MCP servers read environment variables at startup only. Restart Claude Desktop (or the stdio process) after editing.env.
License
UNLICENSED — private project, not for redistribution.
Available Tools
16 toolsfiles_deleteB
Delete a file by file_id.
| Name | Required | Description | Default |
|---|---|---|---|
| file_id | Yes | Numeric file_id returned by files_upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states 'Delete' without disclosing behavioral traits like irreversibility, permissions, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence, though it omits important details for a complete tool definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Minimal description for a delete operation; lacks information about return values, effects, or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no new meaning beyond the schema, which already describes the file_id parameter. With 100% schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Delete a file by file_id.' with a specific verb and resource, and it is distinct from sibling tools like files_upload or files_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as conditions for deletion or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
files_listB
List uploaded files, optionally filtered by purpose.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | ||
| limit | No | ||
| order | No | ||
| purpose | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden for behavioral transparency, but it only says 'List uploaded files' and does not disclose pagination, default ordering, or any constraints. The schema suggests behavior but the description adds no value beyond the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise, and front-loaded with the action. However, it could include more information about the filtering parameter, so it's not maximally informative, but still concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks details on pagination, default behavior, and output format. Given the schema has multiple parameters and no output schema, the description should provide more context to ensure correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning to the 'purpose' parameter (filtering), but does not explain 'after', 'limit', or 'order', which are likely pagination and sorting parameters. Thus, it provides partial parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('uploaded files'), and mentions optional filtering by purpose, which clearly distinguishes it from sibling tools like files_retrieve or files_delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any usage guidance or mention when to use this tool versus alternatives like files_retrieve. It only states the action and optional filtering.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
files_retrieveA
Get metadata for a single file by file_id.
| Name | Required | Description | Default |
|---|---|---|---|
| file_id | Yes | Numeric file_id returned by files_upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description bears the burden. 'Get metadata' implies read-only, but it doesn't explicitly state non-destructiveness, error handling, or permissions. Adequate for a simple retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no filler: 'Get metadata for a single file by file_id.' Highly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no details on what metadata is returned. For a single-file retrieval tool, the description is adequate but lacks completeness regarding return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage describing file_id as 'Numeric file_id returned by files_upload'. The description adds minimal value beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses 'Get metadata for a single file by file_id', which clearly specifies the verb, resource, and scope, distinguishing it from siblings like files_list (multiple files) and files_retrieve_content (content retrieval).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you have a file_id and need metadata), but provides no explicit guidance on when not to use or alternatives like files_list or files_retrieve_content.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
files_retrieve_contentA
Download a file. By default returns a summary (filename + bytes + content-type); pass as_hex=true to inline small file content as a hex string.
| Name | Required | Description | Default |
|---|---|---|---|
| as_hex | No | If true, encode the binary content as hex. Useful for small files. | |
| file_id | Yes | Numeric file_id returned by files_upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It discloses the default return format and the effect of 'as_hex', but does not mention potential limitations (e.g., file size limits, permissions, or whether the download is destructive).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. The key action ('Download a file') is front-loaded, and the parameter behavior is concisely explained.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must describe return values. It does so clearly (summary fields, hex option). Given the tool's simplicity, it is complete enough for an agent to understand the behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by explaining the 'as_hex' parameter's use case ('Useful for small files') and clarifying that 'file_id' comes from 'files_upload'. This goes beyond the schema's descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Download a file') and resource ('a file'). It distinguishes default behavior (summary) from optional inline hex encoding, but does not explicitly differentiate from the sibling tool 'files_retrieve', which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on when to use the 'as_hex' parameter, but does not give context on when to use this tool versus alternatives like 'files_retrieve' or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
files_uploadA
Upload a file (document, audio, image, etc.) for downstream use. Use purpose=voice_clone before speech_voice_clone.
| Name | Required | Description | Default |
|---|---|---|---|
| purpose | Yes | What the file will be used for; affects validation rules | |
| filename | No | Override filename (defaults to basename of file_path) | |
| file_path | Yes | Absolute filesystem path of the file to upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only states the upload action and downstream use, omitting critical details like overwrite behavior, file size limits, error conditions, or side effects. This is insufficient for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, direct and free of fluff. Every word serves a purpose, making it efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema covers parameters, the description lacks information about return values (e.g., file ID), supported file types, size limits, and error handling. For a mutation tool with no output schema, this leaves gaps in what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds one semantic hint about purpose=voice_clone but does not enhance understanding of filename or file_path beyond the schema descriptions. Minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upload a file') and its purpose ('for downstream use'). It specifies file types (document, audio, image, etc.) and distinguishes from sibling tools like files_delete or files_list by focusing on upload.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a specific usage hint: 'Use purpose=voice_clone before speech_voice_clone.' This gives context for one scenario, but does not discuss when to use this tool vs alternatives like image_text_to_image or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_text_to_imageB
Generate images from a text prompt. Returns image URLs (typically valid 24h).
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | ||
| seed | No | ||
| model | Yes | Image generation model id | |
| width | No | ||
| height | No | ||
| prompt | Yes | ||
| aspect_ratio | No | ||
| callback_url | No | ||
| guidance_scale | No | ||
| prompt_optimizer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description only mentions that the tool returns image URLs valid for typically 24 hours. It does not disclose authentication needs, rate limits, destructive potential, or other behavioral traits. For a generation tool with 10 parameters, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core function, and contains no extraneous information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 parameters, no output schema, no annotations), the description is far from complete. It does not explain required vs optional parameters, return format details, or provide examples. A generation tool with many options needs more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 10% (only 'model' has a description). The tool description does not explain any parameters, such as 'n', 'seed', 'width', 'height', or 'aspect_ratio'. It adds no meaning beyond the schema, which itself is sparse.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'generate' and resource 'images from a text prompt', distinguishing it from the sibling 'image_to_image' which presumably uses an image input. This is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'image_to_image' or 'video_text_to_video'. It does not specify prerequisites, required parameters, or usage constraints beyond the prompt requirement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_to_imageC
Transform a reference image guided by an optional prompt. Returns image URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | ||
| seed | No | ||
| model | Yes | Image generation model id | |
| prompt | No | ||
| strength | No | ||
| image_url | Yes | Reference image URL or base64 | |
| aspect_ratio | No | ||
| callback_url | No | ||
| guidance_scale | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states basic functionality. It does not disclose authentication needs, rate limits, potential side effects, or behavior when prompt is omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but lacks structure and detail. Could be expanded to include key behavioral notes while remaining succinct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters, no output schema, and no annotations, the description is too sparse. It does not explain the output format beyond 'image URLs' and ignores most parameter semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 22% (model and image_url have descriptions). The description adds value only for the prompt parameter ('optional prompt'). Most parameters (n, seed, strength, aspect_ratio, callback_url, guidance_scale) lack explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'transform', the resource 'reference image', and the output 'image URLs'. It effectively distinguishes from sibling tools like image_text_to_image (text-to-image) and video_image_to_video (image-to-video).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as image_text_to_image or video_image_to_video. No prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
music_generateA
Generate music. Provide lyrics for vocal tracks; set is_instrumental=true for instrumental. music-cover* models require audio_url/audio_base64/cover_feature_id.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | ||
| lyrics | No | Song lyrics; supports structure tags like [Verse], [Chorus] | |
| prompt | No | ||
| stream | No | ||
| audio_url | No | ||
| audio_base64 | No | ||
| audio_setting | No | ||
| output_format | No | ||
| is_instrumental | No | ||
| cover_feature_id | No | ||
| lyrics_optimizer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only mentions input requirements for cover models but omits details like generation time, cost, storage, rate limits, authentication, or side effects. This is insufficient for a complex tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and efficient: two sentences with no fluff. The first sentence states the core purpose, and the second provides critical use-case variations. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 parameters (including a nested object), no output schema, and no annotations, the description is incomplete. It fails to explain return values, error handling, or usage of many parameters (e.g., audio_setting, stream, output_format). The tool's complexity demands more comprehensive documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 9% (only 'lyrics' has a description). The description adds meaning for a few parameters (lyrics, is_instrumental, and cover model inputs), but the remaining nine parameters (e.g., prompt, stream, output_format, audio_setting) are left unexplained, failing to compensate for low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate music' with a specific verb and resource. It further distinguishes subtypes: lyrics for vocal tracks, instrumental flag, and cover models requiring additional parameters. This differentiates it from sibling tools like speech, image, and video generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to set is_instrumental and that cover models require audio_url, audio_base64, or cover_feature_id. However, it does not explicitly state when not to use this tool or compare with alternatives, though sibling tools are distinct in media type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_t2a_async_createA
Create an async long-text T2A task (up to 1M chars via text_file_id, or 50k via text). Returns a task_id to poll with speech_t2a_async_query.
| Name | Required | Description | Default |
|---|---|---|---|
| vol | No | ||
| text | No | ||
| model | Yes | T2A model identifier | |
| pitch | No | ||
| speed | No | ||
| format | No | ||
| bitrate | No | ||
| channel | No | ||
| emotion | No | ||
| voice_id | Yes | System or cloned voice id | |
| latex_read | No | ||
| sample_rate | No | ||
| text_file_id | No | ||
| voice_modify | No | ||
| language_boost | No | ||
| pronunciation_dict | No | ||
| english_normalization | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses core async behavior, return value (task_id), and input limits, but is silent on rate limits, quotas, error states, or side effects. It is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no extraneous words, front-loads the key action and constraint. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 17 parameters, no output schema, and no annotations, the description is too sparse. It misses default values, interaction between parameters (e.g., text vs text_file_id), and does not cover the complexity of optional fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 12%, yet the description adds no detail beyond hinting at text and text_file_id usage. The many other parameters (vol, pitch, speed, format, etc.) are left unexplained, failing to compensate for low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the action ('Create'), the resource ('async long-text T2A task'), and distinguishes from siblings by mentioning async nature and returning a task_id for polling with speech_t2a_async_query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (async, long text up to 1M chars via file, or 50k via text) and references the polling tool, but does not explicitly state when not to use or compare to alternatives like speech_t2a_http.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_t2a_async_queryA
Poll an async T2A task created by speech_t2a_async_create. Returns status (success|failed|expired|processing) and a file_id on success.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Returned by speech_t2a_async_create |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that the tool returns status and optionally a file_id, and that it polls an async task (non-destructive). However, it does not mention behavior for invalid task_id, rate limits, or whether repeated polling is safe. While sufficient for a simple poll, more details would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and 132 characters. It is front-loaded with the action and resource. Every word is necessary and contributes to understanding. No redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple poll tool with one parameter and no output schema, the description is fairly complete. It explains the purpose, the relationship to speech_t2a_async_create, and what the tool returns. It could mention that this is a polling operation (potentially long-polling) but overall is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter 'task_id' with a description 'Returned by speech_t2a_async_create', which fully documents it (100% coverage). The tool description does not add additional meaning beyond the schema. Baseline is 3, and no extra value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool polls an async T2A task created by speech_t2a_async_create, specifying the verb 'Poll' and the resource 'async T2A task'. It lists the possible statuses (success, failed, expired, processing) and mentions the file_id on success. This differentiates it from sibling tools like speech_t2a_async_create and speech_t2a_http.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the prerequisite: the task must be created by speech_t2a_async_create. It implies the tool is for polling after creation, but does not explicitly state when not to use it or mention alternatives like speech_t2a_http for synchronous T2A. The context is clear, but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_t2a_httpA
Synchronous text-to-speech synthesis (≤10,000 chars). Returns audio URL + metadata. Use output_format="url" to receive a 24h-valid URL.
| Name | Required | Description | Default |
|---|---|---|---|
| vol | No | ||
| text | Yes | Plain text or SSML up to 10,000 chars | |
| model | Yes | T2A model identifier | |
| pitch | No | ||
| speed | No | ||
| format | No | ||
| stream | No | ||
| bitrate | No | ||
| channel | No | ||
| emotion | No | ||
| voice_id | Yes | System or cloned voice id | |
| force_cbr | No | ||
| latex_read | No | ||
| sample_rate | No | ||
| voice_modify | No | ||
| output_format | No | Use "url" to receive a 24h-valid audio URL. | |
| subtitle_type | No | ||
| aigc_watermark | No | ||
| language_boost | No | Language hint, e.g. "auto", "en", "zh" | |
| subtitle_enable | No | ||
| pronunciation_dict | No | ||
| text_normalization | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry the burden. It discloses synchronicity, char limit, output format option, and URL validity duration. However, it omits details on rate limits, cost implications, or behavior on exceeding limits, which would be useful for a TTS tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences, front-loading the core purpose and key constraint (char limit). No unnecessary words or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 22 parameters including nested objects and no output schema, the description fails to provide sufficient context. It only addresses char limit and output_format, ignoring other crucial parameters like voice_id, model, format, and emotion. The agent lacks information to confidently select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (23%). The description only adds meaning for the output_format parameter, mentioning the 24h URL. All other parameters (e.g., vol, pitch, emotion) remain unexplained, leaving the agent without guidance on how to set them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs synchronous text-to-speech synthesis with a 10,000 character limit and returns an audio URL plus metadata. It distinguishes itself from async sibling tools by explicitly noting synchronicity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for immediate audio needs but does not explicitly provide guidance on when to use this tool versus the async alternatives. No exclusion criteria or when-not scenarios are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speech_voice_cloneA
Clone a voice from an uploaded file_id (purpose=voice_clone). Cloned voices must be used within 168 hours or they are auto-deleted. Returns a demo_audio preview URL.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | ||
| model | No | ||
| file_id | Yes | file_id from files_upload with purpose=voice_clone | |
| accuracy | No | ||
| voice_id | Yes | Unique voice id, 8-256 chars; letter start; no trailing - or _ | |
| aigc_watermark | No | ||
| language_boost | No | ||
| text_validation | No | ||
| need_noise_reduction | No | ||
| need_volume_normalization | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Disclosed the 168-hour auto-deletion and return of a demo_audio preview URL, but lacked details on auth requirements, rate limits, or side effects beyond creation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences with no wasted words: purpose, constraint, output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Insufficient for a 10-parameter tool with low schema coverage and no output schema; many parameters like text, model, accuracy are left unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds value by linking file_id to voice_clone purpose, but with 20% schema coverage and 10 parameters, most remain undescribed in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool clones a voice from a file_id with purpose=voice_clone, and distinguishes it from siblings by specifying the unique voice cloning functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for voice cloning after file upload, but does not explicitly compare to alternatives or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
video_agent_createB
Create a video template/agent task. Returns a task_id to poll with video_agent_query.
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | Yes | Template-specific inputs as a string-keyed map (e.g. {character: "...", scene: "..."}) | |
| template_id | Yes | Video template/agent identifier | |
| callback_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description carries full burden. Implies async by mentioning polling, but omits explicit async behavior, error handling, permissions, or operation guarantees. Minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no redundancy. Front-loaded with action. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema; only mentions returning task_id. Lacks error conditions, polling frequency, success/failure indicators. For an async tool, important behavioral context is missing. Parameter coverage is adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%; description adds value for 'inputs' with an example but ignores 'callback_url'. 'template_id' is adequately described. Partially compensates for schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it creates a video template/agent task and returns a task_id. Distinguishes from sibling video_agent_query (polling) but not from video generation tools like video_text_to_video, which may overlap in use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Hints at follow-up polling with video_agent_query but lacks when-to-use vs alternatives, prerequisites, or when not to use. No explicit usage context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
video_agent_queryA
Poll a video task. Returns status (Preparing|Processing|Success|Fail) and a video_url valid 9h on Success.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | task_id returned by video_text_to_video / video_image_to_video |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility. It discloses the return values, the temporary nature of the URL (valid 9h), and the status values. However, it does not mention rate limits, authentication, or error cases. The 'poll' keyword implies repeated calls, which is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that conveys all necessary information without redundancy. It is front-loaded with the verb and resource, then details the return.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately covers return values. It mentions the polling nature implicitly. Could be improved by clarifying that repeated calls are needed until a terminal status.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter (task_id) has 100% schema description coverage, so the baseline is 3. The description does not add extra meaning beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'poll', the resource 'video task', and explicitly lists the return values (status and temporary video URL). It distinguishes from sibling tools like video_agent_create by focusing on querying an existing task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after creating a task but does not explicitly state when to use this tool versus alternatives, nor does it mention that it should be called repeatedly until completion. No exclusion guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
video_image_to_videoA
Generate a video from an input image (and optional prompt). Returns a task_id — poll with video_agent_query.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Video generation model id | |
| prompt | No | ||
| duration | No | ||
| image_url | Yes | URL (or base64) of the input image | |
| resolution | No | ||
| callback_url | No | ||
| prompt_optimizer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description discloses that the tool is async and returns a task_id, which is the key behavioral trait. However, it lacks details on failure modes, timeouts, or retry behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence) and front-loaded with the primary action. It could benefit from a brief list of key parameters but remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, low schema coverage, and no output schema, the description is too brief. It provides the async polling pattern but leaves many parameter details unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 29% (only 2 of 7 parameters have descriptions). The description adds no information about parameters like duration, resolution, callback_url, or prompt_optimizer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate a video'), the input ('from an input image'), and the optional prompt. It distinguishes from sibling 'video_text_to_video' which uses text input.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (image input) and instructs to poll with 'video_agent_query'. It does not explicitly exclude other tools but the purpose is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
video_text_to_videoA
Generate a video from a text prompt. Returns a task_id — poll with video_agent_query.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Video generation model id | |
| prompt | Yes | Text description of the desired video | |
| duration | No | Target duration in seconds | |
| resolution | No | Output resolution (model-dependent) | |
| callback_url | No | ||
| prompt_optimizer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It reveals the async pattern (returns task_id, poll later) but does not address auth needs, rate limits, failure modes, or cost. The async disclosure is critical but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose. No redundant phrases. Every word adds value: states action, output, and next step.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters and no output schema, the description covers the essential workflow but omits details about optional parameters (e.g., callback_url) and result structure. The async handoff is clear, but completeness could be improved with a note on polling intervals or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, so the schemas already document most parameters. The description adds context by linking the prompt parameter to 'text prompt' and implying the async flow. It does not elaborate on unresolved parameters (e.g., callback_url, prompt_optimizer) or clarify the duration/resolution enums beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a video from a text prompt, distinguishing it from sibling tools like video_image_to_video (image input) and video_agent_query (polling). The verb 'generate' and resource 'video' are specific, and the asynchronous handoff is mentioned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage: generate and then poll with video_agent_query. It implies when to use (text-to-video), but does not explicitly exclude alternatives or state when not to use. The sibling names provide differentiation, but the description itself lacks exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
16 tool updates
v0.1.0- First observed
files_delete - First observed
files_list - First observed
files_retrieve - First observed
files_retrieve_content - First observed
files_upload - First observed
image_text_to_image - First observed
image_to_image - First observed
music_generate - First observed
speech_t2a_async_create - First observed
speech_t2a_async_query - First observed
speech_t2a_http - First observed
speech_voice_clone - First observed
video_agent_create - First observed
video_agent_query - First observed
video_image_to_video - First observed
video_text_to_video
TDQS
Scored across 16 tools
Each tool targets a distinct function: file operations, image generation, music generation, speech synthesis (sync and async), voice cloning, and video generation. No two tools have overlapping purposes.
Tools follow a consistent area_action pattern (e.g., files_delete, speech_t2a_async_create). Minor variations exist like 'image_to_image' versus 'image_text_to_image', and the use of 'agent' for video template tasks, but overall naming is predictable.
16 tools cover a broad multi-modal domain without being excessive. Each tool serves a clear purpose, though some sub-areas (e.g., file management) have many tools while others have few.
File operations are complete (CRUD). Speech covers sync/async TTS and voice cloning. Video covers generation from text/image and agent tasks. Minor gaps like missing audio upload or image editing but domain scope is well-covered.
Maintenance
Related MCP Connectors
MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.
MCP server for MiniMax H3 multimodal video generation
MCP server for Hailuo (MiniMax) AI video generation
MCP server for progressive tool usage at any scale (see https://klavis.ai)
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceUnifies MiniMax's multimodal generation, web search, image understanding, audio, video, and music tools into a single MCP server for use with Claude and other clients.1MIT
- AlicenseAqualityDmaintenanceExposes the MiniMax M3 LLM API to MCP-compatible clients, enabling chat completions, text completions, tool calls, and token counting via stdio or SSE transport.4MIT
- AlicenseNot gradedqualityDmaintenanceModel Context Protocol server exposing MiniMax's image, speech, music, and video generation APIs as MCP tools for use with any MCP-aware host.3,593 npmMIT
- AlicenseNot gradedqualityDmaintenanceMCP server for MiniMax's multimodal generation models, enabling text-to-speech, voice cloning, image, video, and music creation through natural language.MIT