Skip to main content

MCP Text-to-Speech Server for Cursor IDE (and others) with cross-platform audio playback

Project description

MCP Text-to-Speech for Cursor IDE

Add text-to-speech capabilities to Cursor IDE. Let your AI assistant speak responses, summaries, and explanations out loud.

🚀 Quick Start

Prerequisites: Cursor IDE and an OpenAI API key

Setup: Add this to your Cursor MCP settings (~/.cursor/mcp.json):

{
  "mcpServers": {
    "mcp_tts_server": {
      "command": "uvx",
      "args": ["--from", "mcp-tts", "mcp-tts-server-stdio"],
      "env": {
        "OPENAI_API_KEY": "your-openai-api-key-here",
        "PYTHONIOENCODING": "utf-8"
      }
    }
  }
}

That's it! Restart Cursor and try asking: "Can you read me a summary using text-to-speech?"

⚙️ Configuration Options

You can control the TTS system using these environment variables in your MCP config:

Variable Description Example Values Default
OPENAI_API_KEY Required - Your OpenAI API key sk-proj-abc123... -
MCP_TTS_VOICE OpenAI voice to use alloy, echo, fable, onyx, nova, shimmer, ballad ballad
MCP_TTS_VOICE_PRESET Voice style preset default, professional, calm, nyc_cabbie, chill_surfer, cheerleader, emo_teenager, eternal_optimist, dramatic default
MCP_TTS_CUSTOM_INSTRUCTIONS Custom voice instructions (overrides preset) "Speak like a pirate" -
MCP_TTS_SPEED Speech speed 0.25 to 4.0 1.0
MCP_TTS_VOLUME Playback volume 0.0 to 1.0 0.8
MCP_TTS_DEVICE_NAME Audio device name (partial match) "Speakers", "Headphones" -
MCP_TTS_DEVICE_INDEX Audio device index 0, 1, 2, etc. -

Tip: To find your audio device name, first run with basic config, then use the list_audio_devices tool to see available devices.

Voice Presets

You can use these built-in voice style presets:

  • default - Clear, friendly, and conversational
  • professional - Authoritative business voice
  • calm - Composed, reassuring with quiet authority
  • nyc_cabbie - Fast-talking New Yorker with edge
  • chill_surfer - Laid-back, mellow, effortlessly cool
  • cheerleader - High-energy, enthusiastic, motivational
  • emo_teenager - Sarcastic, disinterested, melancholic
  • eternal_optimist - Positive, solution-oriented
  • dramatic - Low, hushed, suspenseful with theatrical flair

🎵 Usage Examples

  • "Use text-to-speech to explain this code"
  • "Read me the changes you just made"
  • "List my audio devices"
  • "Switch to a professional voice style"

📚 Full Documentation

For advanced configuration, voice presets, troubleshooting, and development setup, see SETUP_GUIDE.md.


Status: ✅ Working with Cursor IDE • 🎵 7 TTS tools available • 🔊 Cross-platform audio

🛠️ Available Tools

This MCP server provides the following tools in Cursor:

  • text_to_speech — Convert text to speech and play it through your speakers using the current configuration.
  • list_audio_devices — List all available audio output devices on your system.
  • test_audio_device — Play a test tone on a selected audio device to verify it works.
  • stop_speech — Stop any current speech playback immediately.
  • get_tts_status — Show the current TTS server status, provider, volume, and device info.
  • get_current_config — Display the current voice, preset, device, and all active TTS settings.
  • set_volume — Change the playback volume for speech output.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_tts-0.2.7.tar.gz (34.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_tts-0.2.7-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file mcp_tts-0.2.7.tar.gz.

File metadata

  • Download URL: mcp_tts-0.2.7.tar.gz
  • Upload date:
  • Size: 34.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.13

File hashes

Hashes for mcp_tts-0.2.7.tar.gz
Algorithm Hash digest
SHA256 23a46c190400a81505e13ec7fdc97e312964e9938f8954a13b4d41ecae43b03b
MD5 3543310dd5d2f65837058016615dd70d
BLAKE2b-256 9e701f4726014ff4a909d888aea5428f5b939ebc7290a49f5baff3e40bd023c8

See more details on using hashes here.

File details

Details for the file mcp_tts-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: mcp_tts-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.13

File hashes

Hashes for mcp_tts-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 83e25173dd4267e7c6dc7acbaea018dc090e91f9625fba68ddd3b7e6e6b44905
MD5 a8922f56a32ee82fd4f63a9f6cfadf35
BLAKE2b-256 d1e970a6b89031084729b0ddec91dac1fd8c9afcb7354b7beaefbf2e342a4161

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page