Audio transcription, caption correction, translation and 16 video caption styles.
Call this server's tools from your browser. Nothing to install.
Bearer followed by your Just Captions API key
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.
Correct caption text, preserving caption count and order. Does not realign word timing. Billed by input characters.
Unique request ID; reuse only when retrying identical work to avoid repeating paid calls.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Correct caption text, preserving caption count and order. Does not realign word timing. Billed by input characters.
| Argument | Type | Description |
|---|---|---|
| captions* | array | |
| glossary | array | |
| language | string | |
| request_id | string | Unique request ID; reuse only when retrying identical work to avoid repeating paid calls. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"captions"
],
"properties": {
"captions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 400,
"minItems": 1
},
"glossary": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxItems": 100
},
"language": {
"type": "string",
"maxLength": 32
},
"request_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 100,
"minLength": 1,
"description": "Unique request ID; reuse only when retrying identical work to avoid repeating paid calls."
}
},
"additionalProperties": false
}Estimate additional cloud charges and available allowance before a batch. Includes active budget holds; does not reserve credit.
| Argument | Type | Description |
|---|---|---|
| text_chars | integer | |
| audio_seconds | number |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"text_chars": {
"type": "integer",
"maximum": 100000000,
"minimum": 0
},
"audio_seconds": {
"type": "number",
"maximum": 864000,
"minimum": 0
}
},
"additionalProperties": false
}Current API prices and monthly free allowances, no key needed.
No arguments.
{
"type": "object",
"properties": {}
}Current usage, estimated bill and monthly spend cap for your configured API key.
No arguments.
{
"type": "object",
"properties": {}
}List named font IDs, licenses and script coverage. Pass font_id in local rendering overrides; no cloud video rendering.
No arguments.
{
"type": "object",
"properties": {}
}List 16 local rendering presets, aliases, style overrides and platform safe areas. This remote server returns the catalog; render via the local MCP.
No arguments.
{
"type": "object",
"properties": {}
}Pick one emoji for each caption. Billed by input characters.
| Argument | Type | Description |
|---|---|---|
| captions* | array | |
| language | string | |
| request_id | string | Unique request ID; reuse only when retrying identical work to avoid repeating paid calls. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"captions"
],
"properties": {
"captions": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"maxItems": 1000,
"minItems": 1
},
"language": {
"type": "string",
"maxLength": 32
},
"request_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 100,
"minLength": 1,
"description": "Unique request ID; reuse only when retrying identical work to avoid repeating paid calls."
}
},
"additionalProperties": false
}Transcribe extracted audio into segments and word timestamps. Max 12 MB decoded. Never send video. Charged by audio duration past the free allowance.
| Argument | Type | Description |
|---|---|---|
| glossary | array | |
| language | string | |
| mime_type* | string | |
| request_id | string | Unique request ID; reuse only when retrying identical work to avoid repeating paid calls. |
| audio_base64* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"audio_base64",
"mime_type"
],
"properties": {
"glossary": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxItems": 100
},
"language": {
"type": "string",
"maxLength": 32
},
"mime_type": {
"type": "string",
"maxLength": 100
},
"request_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 100,
"minLength": 1,
"description": "Unique request ID; reuse only when retrying identical work to avoid repeating paid calls."
},
"audio_base64": {
"type": "string",
"maxLength": 16000004,
"minLength": 1
}
},
"additionalProperties": false
}Translate caption lines, preserving count and order. Target-language word timing is estimated by the local renderer. Billed by input characters.
| Argument | Type | Description |
|---|---|---|
| captions* | array | |
| glossary | array | |
| request_id | string | Unique request ID; reuse only when retrying identical work to avoid repeating paid calls. |
| target_language* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"captions",
"target_language"
],
"properties": {
"captions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 400,
"minItems": 1
},
"glossary": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxItems": 100
},
"request_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 100,
"minLength": 1,
"description": "Unique request ID; reuse only when retrying identical work to avoid repeating paid calls."
},
"target_language": {
"type": "string",
"maxLength": 32,
"minLength": 1
}
},
"additionalProperties": false
}