supertonic3-mcp

TTS local, en el dispositivo para Claude y Cursor. Sin clave API, sin nube. 10 voces,

Documentación

supertonic3-mcp

TTS local y en el dispositivo para Claude y Cursor, impulsado por Supertonic 3. Sin clave de API. Sin nube. Una herramienta interna de código abierto por Halozen — creamos inteligencia de cumplimiento de IA para la construcción.

No afiliado con Supertone Inc.

Expone speak, list_voices y list_expressions a Claude Desktop, Cursor o cualquier cliente MCP a través de STDIO.

Inicio rápido (TTHW < 3 min)

git clone https://github.com/nextic-tech/supertonic3-mcp && cd supertonic3-mcp
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"

# Optional: pre-download model for offline use (~400MB)
supertonic3-mcp preload

# Run MCP server (STDIO)
supertonic3-mcp

Configuración MCP de Cursor

Agrega a .cursor/mcp.json (o Configuración de Cursor → MCP):

{
  "mcpServers": {
    "supertonic3": {
      "command": "/absolute/path/to/supertonic-tts/.venv/bin/supertonic3-mcp",
      "args": []
    }
  }
}

El primer inicio del servidor descarga el modelo Supertonic en ~/.cache/supertonic3/ a menos que hayas ejecutado preload primero.

Herramientas

HerramientaDescripción
speakSintetiza texto a un archivo WAV; devuelve ruta absoluta + metadatos
list_voicesVoces integradas (voice_id, gender)
list_expressionsEtiquetas en línea (<laugh>, <breath>, …) con descripciones

Parámetros de speak

  • text — 1–5000 caracteres; se permiten etiquetas de expresión
  • voice_id — opcional (M1, F1, …)
  • language — ISO 639-1 (en, ko, ja, …). Para texto no inglés, siempre establece language=. El valor predeterminado es en.
  • speed — 0.7 a 2.0 (rango del SDK)
  • play — si true, reproduce audio en esta máquina mediante afplay (macOS) o aplay (Linux). No compatible con Windows.

Los archivos WAV se escriben en /tmp/supertonic_*.wav (macOS/Linux). Windows no es compatible con rutas de salida de síntesis en v1.0.

Ejemplo de retorno:

Audio saved to /tmp/supertonic_abc123.wav (1.4s, voice: M1, lang: en)

Rendimiento (este repositorio)

Medido en Apple M3, supertonic 1.3.1 — consulta benchmark/results.md.

EscenarioFSL mediano
En caliente (modelo cargado)~0.82s
En frío (nuevo TTS() por llamada)~0.81s

FSL = tiempo desde synthesize() hasta que se escribe el WAV (sin transmisión, sin play=True).

Re-ejecutar: python benchmark/run.py

Uso sin conexión

supertonic3-mcp preload

Descarga pesos ONNX atómicamente a ~/.cache/supertonic3/ e imprime sumas de verificación SHA256. Después de la precarga, la síntesis funciona sin acceso a la red.

Desarrollo

pip install -e ".[dev]"
pytest

Las pruebas simulan el SDK de Supertonic (sin red en CI).

Próximamente en v1.1

  • listen() — Whisper de voz a texto (pip install supertonic3-mcp[stt])
  • Transporte SSE + imagen Docker para agentes remotos
  • Flujo de publicación en PyPI

Licencia

MIT (este paquete). El SDK de Supertonic es MIT; los pesos del modelo usan OpenRAIL-M.

Aviso legal

El habla generada por IA no sustituye la orientación certificada de seguridad, legal o médica. Solo para fines de demostración.