Mobvoi TTS MCP Server

Mobvoi TTS MCP Server

Model Context Protocol server that enables interaction with Mobvoi's Text to Speech and Voice Clone APIs, allowing MCP clients like Cursor, Claude Desktop, and Cline to generate speech and clone voices.

Category
Visit Server

Tools

async_voice_clone_local

Async version of voice_clone. Clone a voice from a given local audio file. This tool will return a speaker id which can be used in text_to_speech tool. ⚠️ COST WARNING: This tool makes an API call to Mobvoi TTS service which may incur costs. Only use when explicitly requested by the user. Args: audio_file_path (str): The path of the audio file to clone.

async_text_to_speech

Async version of text_to_speech. Convert text to speech with a given speaker and save the output audio file to a given directory. Directory is optional, if not provided, the output file will be saved to $HOME/Desktop. You can choose speaker by providing speaker parameter. If speaker is not provided, the default speaker(xiaoyi_meet) will be used. ⚠️ COST WARNING: This tool makes an API call to Mobvoi TTS service which may incur costs. Only use when explicitly requested by the user. Args: text (str): The text to convert to speech. speaker (str): Determine which speaker's voice to be used to synthesize the audio. audio_type (str): Determine the format of the synthesized audio. Value can choose form [pcm/mp3/speex-wb-10/wav]. speed (float): Control the speed of the synthesized audio. Values range from 0.5 to 2.0, with 1.0 being the default speed. Lower values create slower, more deliberate speech while higher values produce faster-paced speech. Extreme values can impact the quality of the generated speech. Range is 0.7 to 1.2. rate(int): Control the sampling rate of the synthesized audio. Value can choose from [8000/16000/24000], with 24000 being the deault rate. volume(float): Control the volume of the synthesized audio. Values range from 0.1 to 1.0, with 1.0 being the default volume. pitch(float): Control the pitch of the synthesized audio. Values range from -10 to 10, with 0 being the default pitch. If the parameter is less than 0, the pitch will become lower; otherwise, it will be higher. streaming(bool): Whether to output in a streaming manner. The default value is false. output_directory (str): Directory where files should be saved. Defaults to $HOME/Desktop if not provided. Returns: Text content with the path to the output file and name of the speaker used.

async_voice_clone_url

Async version of voice_clone. Clone a voice from a given url audio file. This tool will return a speaker id which can be used in text_to_speech tool. ⚠️ COST WARNING: This tool makes an API call to Mobvoi TTS service which may incur costs. Only use when explicitly requested by the user. Args: wav_uri (str): The url of the audio file to clone.

play_audio

Play an audio file. Supports WAV and MP3 formats.

README

Mobvoi Logo

<p align="center"> Official Mobvoi TTS <a href="https://github.com/modelcontextprotocol">Model Context Protocol (MCP)</a> server that enables interaction with Mobvoi powerful Text to Speech, Voice Clone APIs. This server allows MCP clients like <a href="https://www.cursor.so">Cursor</a>, <a href="https://www.anthropic.com/claude">Claude Desktop</a>, <a href="https://cline.bot/">Cline</a> </a>, <a href="https://windsurf.com/editor">Windsurf</a> and other Client to generate speech, clone voices, and more. The mobvoi-tts-mcp server is built based on Python. Our PyPI package is published at Pypi, you can click on <a href="https://pypi.org/project/mobvoi-tts-mcp/">Pypi</a> to view the latest version. </p>

Prerequisite

  1. python 3.10+;
  2. Get your APP_KEY and APP_SECRET from Mobvoi Sequence Monkey open platform. New users can claim a free quota.
  3. Install uv (Python package manager), install with pip install uv or see the uv repo for additional install methods.

What can Mobvoi TTS MCP do?

Mobvoi TTS MCP currently supports the following functions:

  1. Voice Clone: Clone the voice according to the URL audio file link or the local audio file provided by you, and return the speaker ID. You can use this speaker ID to generate speech.
  2. Speech Synthesis: You can specify the speaker ID to generate speech from the specified text content. In addition, you can also adjust speech attributes such as speech speed and volume. For detailed information, please refer to the documentation of our Mobvoi Sequence Monkey open platform TTS part.
  3. Voice broadcasting: Play the specified audio file.

Quickstart with Cursor

Go to Cursor -> Cursor Settings -> MCP, click Add new global MCP server, and mcp.json will open, paste the following config content:

"MobvoiTTS": {
        "command": "uvx",
        "args": [
          "mobvoi-tts-mcp"
        ],
        "env": {
          "APP_KEY": "<insert-your-APP_KEY-here>",
          "APP_SECRET": "<insert-your-APP_SECRET-here>"
        },
      },

Quickstart with Claude Desktop

Go to Claude Desktop -> Settings -> Developer, click Edit Config and open claude_desktop_config.json, paste the following config content:

"MobvoiTTS": {
        "command": "uvx",
        "args": [
          "mobvoi-tts-mcp"
        ],
        "env": {
          "APP_KEY": "<insert-your-APP_KEY-here>",
          "APP_SECRET": "<insert-your-APP_SECRET-here>"
        },
      },

Quickstart with Cline

Install Cline extension on VSCode EXTENSIONS, and go to Cline -> MCP Servers -> Installed, click Config MCP Servers and cline_mcp_settings.json will be opened, paste the following config content:

"MobvoiTTS": {
        "command": "uvx",
        "args": [
          "mobvoi-tts-mcp"
        ],
        "env": {
          "APP_KEY": "<insert-your-APP_KEY-here>",
          "APP_SECRET": "<insert-your-APP_SECRET-here>"
        },
        "transportType": "stdio"
      },

For MacOS and Linux systems, you can refer to the above for configuration. We haven't tested the Windows system yet.

Source Code Test

If you want to conduct tests based on the source code or perform secondary development based on this repository, you can configure it in the following way:

"MobvoiTTSLocal": {
      "disabled": false,
      "timeout": 60,
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-mobvoi_tts-mcp>/mobvoi_tts_mcp",
        "run",
        "server.py"
      ],
      "env": {
          "APP_KEY": "<insert-your-APP_KEY-here>",
          "APP_SECRET": "<insert-your-APP_SECRET-here>"
      },
      "transportType": "stdio"
    },

Take Cline as an example, and the configuration of other clients is similar.

Example usage

  1. Try cloning a voice from your audio file(local or remote), enter the following content in the Cursor agent mode: "https://tc-nj-backend-pub-cdn.mobvoi.com/subtitles/wav/9e5d439e0e9142966037fb80fe9e0d8e.wav, clone this voice"
  2. Specify the speaker, synthesize speech from the text and play it aloud. Prompt the model like the following: "Use the sound cloned just now to broadcast: 'Welcome to experience Mobvoi TTS MCP."
  3. A demonstration video: Demo Video

Troubleshooting

spawn uvx ENOENT

If you encounter the error "MCP Mobvoi TTS: spawn uvx ENOENT", confirm its absolute path by running this command in your terminal: which uvx Once you obtain the absolute path (e.g., /usr/local/bin/uvx), update your configuration to use that path (e.g., "command": "/usr/local/bin/uvx"). This ensures that the correct executable is referenced.

MCP error -32001: Request timed out

If you encounter this error, this indicates that there is a problem with your network. If you are in mainland China, we strongly recommend that you configure extra pypi sources in the following way:

"MobvoiTTS": {
        ...
        "args": [
          "--index", 
          "https://pypi.tuna.tsinghua.edu.cn/simple",
          "mobvoi-tts-mcp"
        ],
       ...
      },

Note that the extra pypi source needs to be configured at the very front of the args.

Unable to synchronize the latest PyPI package

If you encounter this situation, it may be caused by the following reasons: 1) Network problems; 2) Cache problems; 3) The specified mirror source has not synchronized the mobvoi-tts-mcp package. If you are using a mirror source, you should first check whether the mobvoi-tts-mcp package is synchronized on the mirror source you are using, in the following way: pip index versions --index-url https://pypi.tuna.tsinghua.edu.cn/simple mobvoi-tts-mcp If you can see that the LATEST version number is consistent with that on PyPI, you can use the mirror source to update the latest mobvoi-tts-mcp package. Otherwise, you can only use https://pypi.org/simple for the update. Usually, after a new package is released on PyPI, there will be a delay of dozens of minutes for the mirror source to synchronize. At the same time, you can refer to the following configuration to update and clear the cache.

"MobvoiTTS": {
        ...
        "args": [
          "--upgrade",
          "--no-cache-dir",
          "--index", 
          "https://pypi.tuna.tsinghua.edu.cn/simple",
          "mobvoi-tts-mcp"
        ],
       ...
      },

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured