juhongpark avatar

Pronunciation & Voice Coach

juhongpark/mcp-server-pronunciation

Turns your MCP client into a voice-driven English coach. You speak into your mic, faster-whisper transcribes locally, and you get pronunciation, grammar, and fluency feedback inline with the assistant's reply. The converse tool handles natural back-and-forth with light corrections. Switch to practice mode when you want phoneme-level drill feedback with IPA alignment, minimal pairs, and prosody checks for stress and intonation. The optional phoneme extra adds wav2vec2 forced alignment to catch when Whisper rewrites rare words. Useful if you're learning English and want coaching without leaving your coding environment. Everything runs on-device, nothing leaves your machine.

tools
15
transport
STDIO
env vars
5
last updated
May 3, 2026

Tools

15 tools

Public tool metadata for what this MCP can expose to an agent.

conversePrimary. Record + transcribe + quick feedback + assistant guidance for natural voice-chat-with-coaching.

Primary. Record + transcribe + quick feedback + assistant guidance for natural voice-chat-with-coaching.

No parameter schema in public metadata yet.

practiceDrill mode: record user reading a specific reference sentence, return detailed assessment.

Drill mode: record user reading a specific reference sentence, return detailed assessment.

No parameter schema in public metadata yet.

quick_practicePick a random sentence (by phoneme focus + difficulty) and drill it.

Pick a random sentence (by phoneme focus + difficulty) and drill it.

No parameter schema in public metadata yet.

retryRe-record the last sentence and compare the new attempt against the previous one.

Re-record the last sentence and compare the new attempt against the previous one.

No parameter schema in public metadata yet.

open_voice_panelOpen the MCP Apps voice panel when the client supports embedded UI.

Open the MCP Apps voice panel when the client supports embedded UI.

No parameter schema in public metadata yet.

analyze_uploaded_audioAnalyze WAV audio uploaded by the voice panel and store it as the latest voice capture.

Analyze WAV audio uploaded by the voice panel and store it as the latest voice capture.

No parameter schema in public metadata yet.

start_voice_captureStart recording in the background and return a session id immediately.

Start recording in the background and return a session id immediately.

No parameter schema in public metadata yet.

voice_capture_statusCheck whether a background capture is recording, analyzing, done, cancelled, or failed.

Check whether a background capture is recording, analyzing, done, cancelled, or failed.

No parameter schema in public metadata yet.

wait_for_voice_captureWait for a background capture to finish and return transcript + feedback.

Wait for a background capture to finish and return transcript + feedback.

No parameter schema in public metadata yet.

latest_voice_captureReturn the most recent background voice capture result.

Return the most recent background voice capture result.

No parameter schema in public metadata yet.

cancel_voice_captureMark a background capture as cancelled before analysis starts.

Mark a background capture as cancelled before analysis starts.

No parameter schema in public metadata yet.

suggest_sentenceReturn a practice sentence without recording.

Return a practice sentence without recording.

No parameter schema in public metadata yet.

recordRecord audio and save a WAV file (raw, no analysis).

Record audio and save a WAV file (raw, no analysis).

No parameter schema in public metadata yet.

assessAssess the last recording (or a specified WAV) without re-recording. When given a reference, runs the full drill pipeline (alignment, phoneme diff, learner-profile hints, prosody).

Assess the last recording (or a specified WAV) without re-recording. When given a reference, runs the full drill pipeline (alignment, phoneme diff, learner-profile hints, prosody).

No parameter schema in public metadata yet.

check_micList available audio input devices.

List available audio input devices.

No parameter schema in public metadata yet.

Sponsors

Configuration

MCP_PRONUNCIATION_MODEL

faster-whisper model size. Default: base.en. Options: tiny.en, base.en, small.en, medium.en, large-v3, large-v3-turbo.

HF_HUB_CACHE

Override Hugging Face Hub cache directory where Whisper weights are stored.

MCP_PRONUNCIATION_PRELOAD

Set to 0, false, no, or off to disable background Whisper model preload during registry inspection or Docker smoke tests.

MCP_PRONUNCIATION_AUDIO_RETENTION

Temporary WAV retention policy. Use session to delete recordings when the server exits, or keep for manual inspection.

TORCH_HOME

Override PyTorch cache directory for optional wav2vec2 forced-alignment weights.

Readme

mcp-server-pronunciation

mcp-server-pronunciation MCP server

Accuracy and safety notice

This project is a local language-learning practice tool. It may contain bugs, runtime errors, inaccurate transcripts, inaccurate pronunciation feedback, or platform-specific recording issues. Pronunciation feedback is a coaching signal, not a standardized-test, clinical, employment, or high-stakes assessment. Review outputs carefully before relying on them. See DISCLAIMER.md.

An MCP (Model Context Protocol) server that lets you talk to your MCP assistant by voice while getting English pronunciation, grammar, and fluency feedback in the same turn. Use it for casual voice chat with light coaching, or switch to drill mode when you want to practice a specific sentence.


View the full README on GitHub

Details

Repository
github.com/juhongpark/mcp-server-pronunciation
Package
mcp-server-pronunciation
Transport
STDIO
Registry
MCP registry, active