fish-speech-mcp

fish-speech-mcp

1

Fish-speech-mcp is an MCP server designed to provide text-to-speech synthesis capabilities for large language models (LLMs). It allows users to convert text into speech and save voice references for future use. The server integrates with Dive and other MCP-compatible LLMs, offering enhanced text-to-speech functionalities.

fish-speech-mcp

An MCP server for text-to-speech synthesis (TTS) for LLMs.

Features

  • Text-to-Speech: Convert text to speech using FishSpeech
  • Saving a Voice Reference: Saving a Voice Reference
  • MCP Integration: Works with Dive and other MCP-compatible LLMs

Installation

not available

With Dive Desktop

  1. Click "+ Add MCP Server" in Dive Desktop
  2. Copy and paste this configuration:
{
  "mcpServers": {
    "fish-speech": {
      "command": "npx",
      "args": [
        "-y",
        "@demon24ru/fish-speech-mcp"
      ]
    }
  }
}
  1. Click "Save" to install the MCP server

Configuration

The MCP server can be configured using environment variables:

  • MCP_FISH_SPEECH_SERVER_URL: URL of the Optivus server (default: http://localhost:5000)

Tool Documentation

  • text_to_speech

    • Convert text to speech using FishSpeech
    • Inputs:
      • text (string, required): Text to convert to speech
      • reference_id (string, optional): Identifier of a saved voice
  • save_voice_reference

    • Save a voice reference for future voice cloning
    • Inputs:
      • reference_audio (string, required): Path to an audio file for voice cloning
      • reference_text (string, required): Text corresponding to the audio file for voice cloning

Technical Details

Communication with Optivus Server

The MCP server communicates with the Optivus server using Socket.IO. The communication flow is as follows:

  1. The MCP server connects to the Optivus server using Socket.IO client
  2. Requests are sent to the server using the message event
  3. Responses are received from the server using the message event
  4. The MCP server handles connection, reconnection, and error scenarios automatically

Voice References

Voice references are stored in directory from optivus. Each reference is stored in a subdirectory named with a unique ID.

Usage Examples

Ask your LLM to:

"Convert this text to speech: Text to convert, Reference ID"
"Save a voice reference: Path to audio file, Text corresponding to the audio file"

Manual Start

If needed, start the server manually:

npx @demon24ru/fish-speech-mcp

Debug

If needed, start the server in debug mode:

npm run prepare
npx @modelcontextprotocol/inspector node ./lib/index.mjs -y

Requirements

  • Node.js 20+
  • MCP-compatible LLM service

License

MIT

Author

@demon24ru