VS Voice Soundboard
VS Code Extension

Give your editor a voice. 48 of them.

TTS synthesis with 48 voices across 9 languages, voice presets, and multi-speaker dialogue — all in a VS Code sidebar. Free local backend via Kokoro, or plug in OpenAI/ElevenLabs.

Install

ext install mcp-tool-shop.vscode-voice-soundboard

Speak selection

Ctrl+Shift+S → speaks highlighted text

Dialogue export

Dialogue tab → Export VTT # → .vtt file with timecodes per speaker

Features

Everything you need to add voice to your workflow.

48 Voices, 9 Languages

English, Japanese, Mandarin, Spanish, French, Hindi, Italian, Portuguese. Pick from a visual grid, preview live, pin your favourites.

Multi-Speaker Dialogue

Write scripts in the Dialogue tab, assign a different voice per line, play the whole scene. Export as WebVTT with auto-calculated timecodes.

Free Local Backend

Runs on Kokoro TTS via Python — zero API cost, fully offline. Swap to OpenAI, ElevenLabs, or Azure with one setting change.

Getting Started

1. Install

ext install mcp-tool-shop.vscode-voice-soundboard

# or search "Voice Soundboard" in the Extensions panel

2. Open the sidebar

# Click the microphone icon in the Activity Bar
# — or —
Ctrl+Shift+P → Voice Soundboard: Toggle Panel

3. Speak any selection

# Highlight text in any editor, then:
Ctrl+Shift+S

# Works in code, markdown, JSON — anywhere

4. Write a dialogue script

# In the Dialogue tab:
Speaker A [bm_george]:  Hello, how are you?
Speaker B [af_jessica]: Great, thanks for asking!

# Click Play All, then Export VTT

Commands

All commands available via the Command Palette (Ctrl+Shift+P / Cmd+Shift+P).

Command
Shortcut
Description
Voice Soundboard: Speak Text…
Open input box and speak entered text
Voice Soundboard: Speak Selection
Ctrl+Shift+S
Speak the current editor selection
Voice Soundboard: Stop Speaking
Stop current audio playback immediately
Voice Soundboard: Change Voice
Quick-pick from all 48 voices
Voice Soundboard: Toggle Panel
Show or hide the sidebar panel
Voice Soundboard: Export Dialogue as WebVTT
Synthesise dialogue and save as .vtt

Settings

Configure via VS Code settings (voiceSoundboard.*).

voiceSoundboard.defaultVoice: string

Default voice ID used when the extension activates (default: "bm_george").

voiceSoundboard.speed: number

Speech speed multiplier from 0.5 (slow) to 2.0 (fast) (default: 1.0).

voiceSoundboard.backend: "python" | "http" | "mock"

"python" = free local Kokoro TTS. "http" = cloud (OpenAI/ElevenLabs/Azure). "mock" = silent, for testing.

voiceSoundboard.autoStart: boolean

Auto-start the MCP server when the extension activates (default: true).

voiceSoundboard.format: "wav" | "mp3" | "ogg"

Audio output format (default: "wav").

voiceSoundboard.openaiApiKey: string

API key for the http backend (OpenAI, ElevenLabs, Azure). Leave empty for local Python/Kokoro.

Quality scorecard

Ship Gate audit — 45/50.

Category
Score
Notes
A. Security
9/10
SECURITY.md, local-only default, API keys in VS Code encrypted storage
B. Error Handling
8/10
Backend auto-start, graceful fallback, status messages
C. Operator Docs
9/10
README, CHANGELOG, landing page, settings docs
D. Shipping Hygiene
9/10
CI + tests (102), VS Code Marketplace, Codecov coverage
E. Identity
10/10
Logo, translations, landing page, Marketplace listing