← RunAPI Gemini TTS MCP Server
0.1.1npm · @runapi.ai/gemini-tts-mcp · current release
Observed 2026-08-22T18:38:11.259Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.
{
"tools": {
"listChanged": true
},
"logging": {}
}| Tool | Category | Annotations | Risk |
|---|---|---|---|
check_pricingLook up RunAPI pricing for the gemini-tts model line.Input schema{
"type": "object",
"properties": {
"model": {
"type": "string",
"enum": [
"gemini-2.5-pro-tts",
"gemini-3.1-flash-tts"
],
"description": "Model slug. Defaults to the line's primary model."
},
"action": {
"type": "string",
"enum": [
"text_to_speech"
],
"description": "Endpoint name. Defaults to the endpoint that offers the model."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — · — | — |
get_taskFetch the current status and latest result payload for a gemini-tts task.Input schema{
"type": "object",
"properties": {
"task_id": {
"type": "string",
"description": "Task id returned when the task was created."
},
"action": {
"type": "string",
"enum": [
"text_to_speech"
],
"description": "Asynchronous endpoint the task was created on. Defaults to the line's only asynchronous endpoint."
}
},
"required": [
"task_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — · — | — |
loginAuthenticate RunAPI by opening a browser PKCE login flow and saving the API key to ~/.config/runapi/config.json.Input schema{
"type": "object",
"properties": {
"force": {
"type": "boolean",
"default": false,
"description": "Re-run browser login when the current credential comes from the local config file."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — · — | — |
text_to_speechCreate a Gemini TTS task on RunAPI (text to speech). Returns a task id, status, and output URLs.Input schema{
"type": "object",
"properties": {
"temperature": {
"type": "number",
"minimum": 0,
"maximum": 2,
"description": "Sampling temperature."
},
"scene": {
"type": "string",
"description": "Scene and recording environment."
},
"sample_context": {
"type": "string",
"description": "Overall delivery context and tone."
},
"speakers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"pace": {
"type": "string",
"enum": [
"Natural",
"Rapid Fire",
"The Drift",
"Staccato"
],
"description": "Speaker pace."
},
"style": {
"type": "string",
"enum": [
"Vocal Smile",
"Newscaster",
"Whisper",
"Empathetic",
"Promo/Hype",
"Deadpan"
],
"description": "Speaker delivery style."
},
"accent": {
"type": "string",
"enum": [
"Neutral",
"American (Gen)",
"American (Valley)",
"American (South)",
"British (RP)",
"British (Brixton)",
"Transatlantic",
"Australian"
],
"description": "Speaker accent."
},
"speaker_id": {
"type": "string",
"pattern": "^Speaker [1-9][0-9]*$",
"description": "Unique identifier in Speaker N format."
},
"voice_name": {
"type": "string",
"enum": [
"Achernar",
"Achird",
"Algenib",
"Algieba",
"Alnilam",
"Aoede",
"Autonoe",
"Callirrhoe",
"Charon",
"Despina",
"Enceladus",
"Erinome",
"Fenrir",
"Gacrux",
"Iapetus",
"Kore",
"Laomedeia",
"Leda",
"Orus",
"Puck",
"Pulcherrima",
"Rasalgethi",
"Sadachbia",
"Sadaltager",
"Schedar",
"Sulafat",
"Umbriel",
"Vindemiatrix",
"Zephyr",
"Zubenelgenubi"
],
"description": "Preset voice name."
},
"audio_profile": {
"type": "string",
"description": "Optional voice character guidance."
}
},
"required": [
"pace",
"style",
"accent",
"speaker_id",
"voice_name"
],
"additionalProperties": false
},
"minItems": 1,
"description": "Non-empty speaker configurations with unique Speaker N identifiers."
},
"dialogue_turns": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string",
"maxLength": 10000,
"description": "Spoken text, up to 10,000 characters."
},
"speaker_id": {
"type": "string",
"description": "Identifier matching a configured speakers[].speaker_id."
}
},
"required": [
"text",
"speaker_id"
],
"additionalProperties": false
},
"minItems": 1,
"description": "Non-empty ordered dialogue turns whose speaker ids reference configured speakers."
},
"callback_url": {
"type": "string",
"description": "Webhook URL for async notifications."
},
"wait": {
"type": "boolean",
"default": true,
"description": "Poll until the task reaches a terminal status."
},
"timeout_ms": {
"type": "integer",
"exclusiveMinimum": 0
},
"poll_interval_ms": {
"type": "integer",
"exclusiveMinimum": 0
},
"model": {
"type": "string",
"enum": [
"gemini-2.5-pro-tts",
"gemini-3.1-flash-tts"
],
"description": "RunAPI model slug for this model line."
}
},
"required": [
"speakers",
"dialogue_turns"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — · — | — |