Convert uploaded speech or singing with your saved HanoLab voices, using OAuth and credit quotes.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
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.
Spend HanoLab credits to submit the prepared conversion ONLY after the user confirms its cost and budget. Reuse the exact quote_id after interruption: repeated calls return the original task without another debit. A failed task needs a separate user decision before a new quote.
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
Spend HanoLab credits to submit the prepared conversion ONLY after the user confirms its cost and budget. Reuse the exact quote_id after interruption: repeated calls return the original task without another debit. A failed task needs a separate user decision before a new quote.
| Argument | Type | Description |
|---|---|---|
| quote_id* | string | |
| confirmed* | boolean | |
| max_credits* | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"quote_id",
"max_credits",
"confirmed"
],
"properties": {
"quote_id": {
"type": "string",
"format": "uuid"
},
"confirmed": {
"type": "boolean",
"const": true
},
"max_credits": {
"type": "integer",
"maximum": 1000,
"minimum": 1
}
},
"additionalProperties": false
}Create a private one-hour browser upload link. Ask the user to open it, choose an audio file or MP4 and return here. Requires the same HanoLab account; no credits are spent. This tool cannot read local paths or ChatGPT attachments directly.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Read the connected account’s plan and available credits. Does not purchase credits.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Identify the HanoLab account connected to these tools.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Check an owned task and return completed audio links. Refreshes worker status and may persist completion or a failure refund. Poll about every 10 seconds; do not submit a new paid task while waiting.
| Argument | Type | Description |
|---|---|---|
| task_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"task_id"
],
"properties": {
"task_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}List recent audio uploaded through this connection. Use the exact audio_id, never a local path or an arbitrary URL.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Find recent conversions submitted with this connection. Use get_task to refresh a task. This does not start new tasks.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}List the connected user’s own saved voices and whether they are ready. If none are ready, open voicelab to create one.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Prepare a fixed quote for uploaded audio and a ready owned voice. No credits are spent. Explain estimated_credits, obtain the user’s budget and explicit confirmation, then use convert_voice with this exact quote_id.
| Argument | Type | Description |
|---|---|---|
| audio_id* | string | |
| voice_id* | string | |
| full_song | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"audio_id",
"voice_id"
],
"properties": {
"audio_id": {
"type": "string",
"format": "uuid"
},
"voice_id": {
"type": "string",
"format": "uuid"
},
"full_song": {
"type": "boolean",
"default": true
}
},
"additionalProperties": false
}