An MCP server that gives a voice to LLMs

๐Ÿ“ข Blabber-MCP ๐Ÿ—ฃ๏ธ

An MCP server that gives your LLMs a voice using OpenAI's Text-to-Speech API! ๐Ÿ”Š

โœจ Features

  • Text-to-Speech: Converts input text into high-quality spoken audio.
  • Voice Selection: Choose from various OpenAI voices (alloy, echo, fable, onyx, nova, shimmer).
  • Model Selection: Use standard (tts-1) or high-definition (tts-1-hd) models.
  • Format Options: Get audio output in mp3, opus, aac, or flac.
  • File Saving: Saves the generated audio to a local file.
  • Optional Playback: Automatically play the generated audio using a configurable system command.
  • Configurable Defaults: Set a default voice via configuration.

๐Ÿ”ง Configuration

To use this server, you need to add its configuration to your MCP client's settings file (e.g., mcp_settings.json).

  1. Get OpenAI API Key: You need an API key from OpenAI.
  2. Add to MCP Settings: Add the following block to the mcpServers object in your settings file, replacing "YOUR_OPENAI_API_KEY" with your actual key.
{
  "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": []
    }
  }
}

Important: Make sure the args path points to the correct location of the build/index.js file within your blabber-mcp project directory. Use the full absolute path.

๐Ÿš€ Usage

Once configured and running, you can use the text_to_speech tool via your MCP client.

Tool: text_to_speechServer: blabber-mcp (or the key you used in the config)

Arguments:

  • input (string, required): The text to synthesize.
  • voice (string, optional): The voice to use (alloy, echo, fable, onyx, nova, shimmer). Defaults to the DEFAULT_TTS_VOICE set in config, or nova.
  • model (string, optional): The model (tts-1, tts-1-hd). Defaults to tts-1.
  • response_format (string, optional): Audio format (mp3, opus, aac, flac). Defaults to mp3.
  • play (boolean, optional): Set to true to automatically play the audio after saving. Defaults to false.

Example Tool Call (with playback):

<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>

Output:

The tool saves the audio file to the output/ directory within the blabber-mcp project folder and returns a JSON response like this:

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

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ•’ Changelog

See the CHANGELOG.md file for details on version history.

Made with โค๏ธ by Pink Pixel

MCP Server ยท Populars

MCP Server ยท New

    YV17labs

    ghostdesk

    Give any AI agent a full desktop โ€” it sees the screen, clicks, types, and runs apps like a human. Automate anything with a UI: browsers, legacy software, internal tools. No API needed. One Docker command.

    Community YV17labs
    remotebrowser

    mcp

    Free your data

    Community remotebrowser
    Decodo

    Decodo MCP Server

    The Decodo MCP server which enables MCP clients to interface with services.

    Community Decodo
    kuberstar

    Qartez MCP

    Semantic code intelligence MCP server for Claude Code - project maps, symbol search, impact analysis, and more

    Community kuberstar
    aovestdipaperino

    tokensave

    Rust port of CodeGraph โ€” a local-first code intelligence system that builds semantic knowledge graphs from codebases. Ported from the original TypeScript implementation by @colbymchenry.

    Community aovestdipaperino