Remote MCP for AI video, image, music and speech generation.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer API key from ViewMax Settings > API Keys. Claude OAuth connectors can omit this.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Create an image generation task (text-to-image, or image-to-image when image_urls are provided). Pro/Ultra flagship models (GPT Image 2, GPT Image 2.5, Nano Banana 2, Grok Imagine) and Ultra ViewMax C1 cost 0 credits within the shared daily fair-use pool; otherwise this consumes credits. Call wait_for_task with the task_id for the result URLs.
Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Create an image generation task (text-to-image, or image-to-image when image_urls are provided). Pro/Ultra flagship models (GPT Image 2, GPT Image 2.5, Nano Banana 2, Grok Imagine) and Ultra ViewMax C1 cost 0 credits within the shared daily fair-use pool; otherwise this consumes credits. Call wait_for_task with the task_id for the result URLs.
| Argument | Type | Description |
|---|---|---|
| model* | string | |
| scene | string | |
| prompt* | string | |
| quality | string | |
| image_urls | array | |
| aspect_ratio | string | |
| idempotency_key | string | Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"model",
"prompt"
],
"properties": {
"model": {
"type": "string",
"minLength": 1
},
"scene": {
"type": "string"
},
"prompt": {
"type": "string",
"minLength": 1
},
"quality": {
"type": "string"
},
"image_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
},
"aspect_ratio": {
"type": "string"
},
"idempotency_key": {
"type": "string",
"pattern": "^[\\x21-\\x7e]{1,200}$",
"description": "Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again."
}
}
}Create an original music track from a text prompt. Costs 60 credits for tracks up to 60 seconds, then 1 credit per second (duration_seconds defaults to 60); plan allowances do not cover music. Setting style sends prompt as the song's lyrics, so do not also send lyrics; to describe a track, put the description in prompt and omit style. Music renders synchronously: the result usually returns immediately with output_urls.
| Argument | Type | Description |
|---|---|---|
| style | string | |
| lyrics | string | |
| prompt* | string | |
| instrumental | boolean | |
| idempotency_key | string | Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again. |
| duration_seconds | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"prompt"
],
"properties": {
"style": {
"type": "string"
},
"lyrics": {
"type": "string"
},
"prompt": {
"type": "string",
"minLength": 1
},
"instrumental": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"pattern": "^[\\x21-\\x7e]{1,200}$",
"description": "Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again."
},
"duration_seconds": {
"type": "number",
"maximum": 300,
"minimum": 3
}
}
}Generate a sound effect from a text prompt. Costs 5 credits. Renders synchronously: the result usually returns immediately with output_urls.
| Argument | Type | Description |
|---|---|---|
| prompt* | string | |
| idempotency_key | string | Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again. |
| duration_seconds | number | |
| prompt_influence | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"pattern": "^[\\x21-\\x7e]{1,200}$",
"description": "Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again."
},
"duration_seconds": {
"type": "number",
"maximum": 22,
"minimum": 0.5
},
"prompt_influence": {
"type": "number",
"maximum": 1,
"minimum": 0
}
}
}Convert text to speech with a selected voice_id (see list_voices). Costs ceil(characters / 20) credits, minimum 1. Speech renders synchronously: the result usually returns immediately with output_urls.
| Argument | Type | Description |
|---|---|---|
| text* | string | |
| speed | number | |
| model_id | string | |
| voice_id* | string | |
| stability | number | |
| idempotency_key | string | Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again. |
| similarity_boost | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"text",
"voice_id"
],
"properties": {
"text": {
"type": "string",
"minLength": 1
},
"speed": {
"type": "number",
"maximum": 4,
"minimum": 0.25
},
"model_id": {
"type": "string"
},
"voice_id": {
"type": "string",
"minLength": 1
},
"stability": {
"type": "number",
"maximum": 1,
"minimum": 0
},
"idempotency_key": {
"type": "string",
"pattern": "^[\\x21-\\x7e]{1,200}$",
"description": "Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again."
},
"similarity_boost": {
"type": "number",
"maximum": 1,
"minimum": 0
}
}
}Create a video generation task and return its task_id. mode defaults to image-to-video when image_urls are given, else video-to-video when video_urls are given, else text-to-video. Omitted duration, resolution and aspect_ratio use the mode's defaults from get_video_model and are billed at those values. Ultra ViewMax C1 generations cost 0 credits within the daily fair-use pool (also via REST API); otherwise this consumes credits from the authenticated ViewMax account. Call wait_for_task with the task_id until it finishes.
| Argument | Type | Description |
|---|---|---|
| mode | string | |
| audio | boolean | |
| model* | string | |
| prompt* | string | |
| duration | string | |
| image_urls | array | |
| resolution | string | |
| video_urls | array | |
| aspect_ratio | string | |
| idempotency_key |
Get the authenticated account's remaining credits. Generation consumes credits.
No arguments.
{
"type": "object",
"properties": {}
}Get full capabilities and credit pricing for one image model. Generating an image with this model consumes credits.
| Argument | Type | Description |
|---|---|---|
| model* | string |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"model"
],
"properties": {
"model": {
"type": "string",
"minLength": 1
}
}
}Get the current status, output URLs and cost_credits for one of the authenticated user's tasks (video, image, music, or audio). Failed and canceled tasks include error_code and error_message; their credits are refunded automatically.
| Argument | Type | Description |
|---|---|---|
| task_id* | string |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"task_id"
],
"properties": {
"task_id": {
"type": "string",
"minLength": 1
}
}
}Get full capabilities and credit pricing for one video model. Each mode lists durations, resolutions, aspect_ratios, audio_toggle, credits, and defaults: the duration, resolution and aspect_ratio that generate_video sends and bills when you omit them. max_prompt_length is present when the model limits prompt length. Generating a video with this model consumes credits.
| Argument | Type | Description |
|---|---|---|
| model* | string |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"model"
],
"properties": {
"model": {
"type": "string",
"minLength": 1
}
}
}List available image models with their modes (text-to-image, image-to-image), aspect ratios, qualities, and credit labels. Image generation consumes credits.
No arguments.
{
"type": "object",
"properties": {}
}List available music models and their controls (duration, instrumental) and credit cost. Music costs 60 credits for tracks up to 60 seconds, then 1 credit per second.
No arguments.
{
"type": "object",
"properties": {}
}List available video models and their capabilities. Video generation consumes credits; use get_video_model for detailed pricing and the values used when options are omitted.
No arguments.
{
"type": "object",
"properties": {}
}List available text-to-speech voices (id, name, gender, accent, language) and speech pricing: characters_per_credit and minimum_credits. A generation costs ceil(characters / 20) credits, minimum 1.
No arguments.
{
"type": "object",
"properties": {}
}Wait up to timeout_seconds (1-50, default 45) for a task and return its latest status in the get_task shape. Some videos take several minutes: keep calling wait_for_task until status is success, failed, or canceled. Task results are persisted and never lost.
| Argument | Type | Description |
|---|---|---|
| task_id* | string | |
| timeout_seconds | integer |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"task_id"
],
"properties": {
"task_id": {
"type": "string",
"minLength": 1
},
"timeout_seconds": {
"type": "integer",
"default": 45,
"maximum": 50,
"minimum": 1
}
}
}| string |
| Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again. |
| source_video_duration_seconds | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"model",
"prompt"
],
"properties": {
"mode": {
"type": "string"
},
"audio": {
"type": "boolean"
},
"model": {
"type": "string",
"minLength": 1
},
"prompt": {
"type": "string",
"minLength": 1
},
"duration": {
"type": "string"
},
"image_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
},
"resolution": {
"type": "string"
},
"video_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
},
"aspect_ratio": {
"type": "string"
},
"idempotency_key": {
"type": "string",
"pattern": "^[\\x21-\\x7e]{1,200}$",
"description": "Optional, 1-200 visible ASCII characters without spaces. Reuse the same key when retrying after a timeout; a repeated key returns the original task and is not charged again."
},
"source_video_duration_seconds": {
"type": "number",
"exclusiveMinimum": 0
}
}
}