Skip to main content
Glama

📢 Blabber-MCP 🗣️

blabber-mcp MCP server

¡Un servidor MCP que le da voz a tus LLM usando la API de texto a voz de OpenAI! 🔊


✨ Características

  • Texto a voz: Convierte el texto de entrada en audio hablado de alta calidad.

  • Selección de voz: Elige entre varias voces de OpenAI (alloy, echo, fable, onyx, nova, shimmer).

  • Selección de modelo: Utiliza modelos estándar (tts-1) o de alta definición (tts-1-hd).

  • Opciones de formato: Obtén salida de audio en mp3, opus, aac o flac.

  • Guardado de archivos: Guarda el audio generado en un archivo local.

  • Reproducción opcional: Reproduce automáticamente el audio generado usando un comando del sistema configurable.

  • Valores predeterminados configurables: Establece una voz predeterminada a través de la configuración.


Related MCP server: NijiVoice-MCP

🔧 Configuración

Para usar este servidor, debes añadir su configuración al archivo de ajustes de tu cliente MCP (por ejemplo, mcp_settings.json).

  1. Obtén tu clave de API de OpenAI: Necesitas una clave de API de OpenAI.

  2. Añade a los ajustes de MCP: Añade el siguiente bloque al objeto mcpServers en tu archivo de ajustes, reemplazando "YOUR_OPENAI_API_KEY" con tu clave real.

{
  "mcpServers": {
    "blabber-mcp": {
      "command": "node",
      "args": ["/full/path/to/blabber-mcp/build/index.js"], (IMPORTANT: Use the full, absolute path to the built index.js file)
      "env": {
        "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY",
        "AUDIO_PLAYER_COMMAND": "xdg-open", (Optional: Command to play audio (e.g., "cvlc", "vlc", "mpv", "ffplay", "afplay", "xdg-open"; defaults to "cvlc")
        "DEFAULT_TTS_VOICE": "nova" (Optional: Set default voice (alloy, echo, fable, onyx, nova, shimmer); defaults to nova)
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

Importante: Asegúrate de que la ruta args apunte a la ubicación correcta del archivo build/index.js dentro del directorio de tu proyecto blabber-mcp. Usa la ruta absoluta completa.


🚀 Uso

Una vez configurado y en ejecución, puedes usar la herramienta text_to_speech a través de tu cliente MCP.

Herramienta: text_to_speech Servidor: blabber-mcp (o la clave que hayas usado en la configuración)

Argumentos:

  • input (cadena, obligatorio): El texto a sintetizar.

  • voice (cadena, opcional): La voz a utilizar (alloy, echo, fable, onyx, nova, shimmer). Por defecto usa DEFAULT_TTS_VOICE configurado en los ajustes, o nova.

  • model (cadena, opcional): El modelo (tts-1, tts-1-hd). Por defecto es tts-1.

  • response_format (cadena, opcional): Formato de audio (mp3, opus, aac, flac). Por defecto es mp3.

  • play (booleano, opcional): Establece en true para reproducir automáticamente el audio después de guardarlo. Por defecto es false.

Ejemplo de llamada a la herramienta (con reproducción):

<use_mcp_tool>
  <server_name>blabber-mcp</server_name>
  <tool_name>text_to_speech</tool_name>
  <arguments>
  {
    "input": "Hello from Blabber MCP!",
    "voice": "shimmer",
    "play": true
  }
  </arguments>
</use_mcp_tool>

Salida:

La herramienta guarda el archivo de audio en el directorio output/ dentro de la carpeta del proyecto blabber-mcp y devuelve una respuesta JSON como esta:

{
  "message": "Audio saved successfully. Playback initiated using command: cvlc",
  "filePath": "path/to/speech_1743908694848.mp3", 
  "format": "mp3",
  "voiceUsed": "shimmer"
}

📜 Licencia

Este proyecto está bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.


🕒 Registro de cambios

Consulta el archivo CHANGELOG.md para obtener detalles sobre el historial de versiones.


Available Tools

1 tool
text_to_speechA

Converts text into spoken audio using OpenAI TTS (default voice: alloy), saves it to a file, and optionally plays it.

NameRequiredDescriptionDefault
inputYesThe text to synthesize into speech.
modelNoThe TTS model to use.tts-1
playNoWhether to automatically play the generated audio file.
response_formatNoThe format of the audio response.mp3
voiceNoOptional: The voice to use. Overrides the configured default (alloy).

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that audio is saved to a file and optionally played, which covers some output behavior, but lacks details on file location, naming, permissions, error handling, rate limits, or authentication needs. For a tool with no annotations, this leaves significant gaps in understanding its operational traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that efficiently conveys the core functionality, default settings, and optional features without any wasted words. It's front-loaded with the primary purpose and includes all necessary details concisely.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (5 parameters, no output schema, no annotations), the description is adequate but incomplete. It covers the basic purpose and some behavioral aspects (saving and playing), but lacks details on output format, error handling, and other operational context that would be helpful for an agent to use it effectively without annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by mentioning the default voice (alloy) and the optional play feature, but doesn't provide additional syntax, format, or usage context for parameters. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Converts text into spoken audio'), identifies the resource ('using OpenAI TTS'), and provides implementation details ('saves it to a file, and optionally plays it'). It distinguishes itself by mentioning the default voice (alloy) and the optional play feature, which would be relevant if there were sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the phrase 'optionally plays it,' suggesting when the play parameter might be used, but provides no explicit guidance on when to use this tool versus alternatives (though none are listed as siblings). There's no mention of prerequisites, limitations, or specific scenarios for choosing different models or voices.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observedtext_to_speech

TDQS

A3.5/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool has a clearly distinct purpose of converting text to speech, and no other tools exist to cause confusion.

Naming Consistency5/5

The single tool name 'text_to_speech' follows a clear verb_noun pattern (text_to_speech), and with only one tool, consistency is inherently perfect as there are no other names to compare against.

Tool Count2/5

A single tool is too few for most server purposes, as it severely limits functionality and scope. While the tool itself is well-defined, the server lacks breadth, making it feel thin and under-scoped for typical MCP use cases.

Completeness2/5

The server is severely incomplete for a text-to-speech domain. It only provides conversion to speech, with no tools for managing audio files (e.g., list, delete, play controls), voice selection beyond the default, or other related operations like speech-to-text, leading to significant gaps in coverage.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers