vocametrix
Vocametrix MCP server gives MCP-compatible AI assistants access to the Vocametrix voice-analysis API for clinical voice metrics, speech/pronunciation assessment, transcription/TTS, AI therapy content, and therapy-plan workflows.
Calculate acoustic voice metrics: AVQI, DSI, CPP, HNR, jitter/shimmer, VRP, prosody similarity, spectral measures, formants, S/Z ratio, GNE, H1–H2, ABI, voice dynamics, and DDK.
Ingest/analyze audio via uploaded blob URLs, public HTTPS URLs, data URLs/base64, or local paths when
VOCAMETRIX_MCP_LOCAL_FS=1.Assess pronunciation with phoneme-level scores and optional pitch; transcribe audio; synthesize speech.
Measure sound level, extract eGeMAPS features, detect phonemes, and classify stuttering/dysfluency.
Use AI agents for voice-metric interpretation, exercise/word-list generation, SLP chat, French-to-IPA conversion, spelling feedback, syntax checking, vocabulary tutoring, and exercise adaptation.
Generate, poll, retrieve, approve/modify/reject, or run end-to-end AI therapy plans with human-in-the-loop approval.
Run workflow tools for full voice assessment, batch pronunciation assessment (local/stdio only), and full therapy workflow.
Access reference resources (API docs, recording guides, clinical thresholds) and prompts for SLP-style reports, pre/post therapy comparison, and SOAP session notes.
@vocametrix/mcp-server
Official Model Context Protocol server for the Vocametrix voice analysis API.
Gives any MCP-compatible AI assistant (Claude Desktop, Cursor, Cline, etc.) direct access to clinical voice metrics, pronunciation assessment, speech transcription, and AI-powered therapy planning.
Quick start
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"vocametrix": {
"command": "npx",
"args": ["-y", "@vocametrix/mcp-server"],
"env": {
"VOCAMETRIX_API_KEY": "your-api-key-here"
}
}
}
}Get an API key at vocametrix.com/registration. MCP analysis uses purchased API credits; the website subscription and trial do not cover API calls.
Claude Code
Hosted server (no local install):
claude mcp add --transport http vocametrix https://mcp.vocametrix.com/mcp --header "x-api-key: your-api-key-here"Or run it locally with npx:
claude mcp add vocametrix -e VOCAMETRIX_API_KEY=your-api-key-here -- npx -y @vocametrix/mcp-serverAdd --scope user right after claude mcp add to make Vocametrix available in all your projects. Then type /mcp in Claude Code to check the connection.
ChatGPT (OAuth, API credits)
The optional /chatgpt/mcp endpoint links a user's API account through OAuth. The user approves access on the platform's consent page; ChatGPT receives revocable tokens, not the API key. Existing /mcp API-key clients and local stdio clients remain supported.
See ChatGPT setup and release checks for the matching platform changes, database migration, configuration, and tests. This integration must be deployed and tested in ChatGPT before public submission.
Related MCP server: elevenlabs-mcp
Tools
Voice quality (acoustic)
Tool | Description |
| Acoustic Voice Quality Index (AVQI) — overall dysphonia severity |
| Dysphonia Severity Index (DSI) |
| Cepstral Peak Prominence — breathiness, hoarseness |
| Harmonics-to-Noise Ratio (multi-band) |
| Period and amplitude perturbation |
| Voice Range Profile |
| Prosody similarity between two utterances |
Advanced voice analysis
Tool | Description |
| Spectral tilt, slope, and formant energy |
| Formant frequencies F1–F4 |
| S/Z phonation ratio |
| Glottal-to-Noise Excitation |
| H1–H2 harmonic difference |
| Acoustic Breathiness Index |
| Dynamic range and fundamental frequency statistics |
| Diadochokinesis (pa-ta-ka): syllable rate, regularity, acceleration, Pierce 2013 norms for 65-86 |
Ingestion utilities
Tool | Description |
| Upload a WAV file (base64) → returns a stable blobUrl |
| Ingest a public HTTPS WAV URL → returns a stable blobUrl |
Speech and pronunciation
Tool | Description |
| Phoneme-level pronunciation scoring |
| Pronunciation + pitch analysis combined |
| Streaming ASR transcription with progress |
| Text-to-speech synthesis |
Audio measures
Tool | Description |
| Sound level in uncalibrated dB over a time window |
| Geneva Minimalistic Acoustic Parameter Set, GeMAPS v01b (62 features) |
| French phoneme detection with confidence scores and timestamps |
| Dysfluency classification |
AI agents
Tool | Description |
| Clinical interpretation of voice metrics |
| Personalized voice/speech exercise generation |
| Target word list generation for therapy |
| Conversational AI speech-language therapist |
| French text → IPA phonetic transcription |
| Spelling correction agent |
| Syntax checking agent |
| Vocabulary tutoring agent |
| Adaptive exercise generation |
Therapy planning
Not published on the ChatGPT endpoint (/chatgpt/mcp): these tools take a patient identifier and clinical history, which the ChatGPT app guidelines treat as protected health information. They remain available over stdio and /mcp.
Tool | Description |
| Generate an AI therapy plan |
| Poll therapy plan generation status |
| Fetch completed therapy plan |
| Approve a therapy plan |
Workflow tools
Tool | Description |
| Parallel AVQI + CPP + HNR + jitter/shimmer + spectral |
| Assess a folder of WAV files. Reads the server's own filesystem, so it is only registered in stdio/local mode ( |
| Generate → poll → fetch → approval flow |
Resources
vocametrix://docs/api— API quick reference (auth, rate limits, audio requirements, error codes)vocametrix://recording-guide— Recording protocols for every tool (sustained vowel, connected speech with language-specific reference sentences, glissando, sustained /s/ and /z/)vocametrix://thresholds/{metric}— Clinical reference thresholds foravqi,dsi,cpp,hnr,jitter-shimmer,gne
Prompts
interpret_voice_assessment— Generate a clinical SLP-style interpretation report from assessment JSONcompare_pre_post_therapy— Quantified pre/post therapy narrative with metric-by-metric comparisongenerate_session_report— SOAP-format progress note from pronunciation assessment data
Audio requirements
Format: WAV (16-bit PCM recommended)
Sustained vowel tasks: 3+ seconds of /a/ phonation
Connected speech tasks: 5–30 seconds of read passage
Minimum sampling rate: 16 kHz
How to pass audio to a tool
The audioPath parameter accepts several input types, but which ones are valid depends on how the MCP server is running:
Input | Hosted / remote server | Stdio / local server ( |
| ✅ recommended | ✅ |
Public | ✅ | ✅ |
Public URL via | ✅ recommended for URL inputs | ✅ |
| ✅ | ✅ |
Raw base64 string (≥ 512 chars) | ✅ | ✅ |
Absolute local path ( | ❌ rejected | ⚠️ requires |
For chat clients that attach audio in the conversation (Claude.ai web/mobile, etc.), the LLM cannot pass an absolute path to a hosted server — it must call vocametrix_upload_audio first with the file content base64-encoded, then pass the returned blobUrl as audioPath to any analysis tool. The MCP descriptions guide the LLM toward this workflow automatically.
For stdio/local deployments where the MCP runs on the user's own machine, set VOCAMETRIX_MCP_LOCAL_FS=1 to allow analysis tools to read absolute local paths directly — convenient for batch processing of files already on disk.
Environment variables
Variable | Required | Description |
| Yes | Your Vocametrix API key |
| No | Set to |
| No | Set to |
Development
git clone https://github.com/Vocametrix/vocametrix-mcp.git
cd vocametrix-mcp
npm install
npm run build
npm test # run unit tests
npm run inspector # test with MCP InspectorMCP Registry
Listed in the official MCP Registry under io.github.pmarmaroli/vocametrix-mcp. Available for one-click installation in MCP-compatible clients (Claude Desktop, Cursor, Zed, Windsurf, and more).
Related projects
The Vocametrix ecosystem:
📘 Vocametrix API documentation — full reference for the underlying REST API powering this MCP server.
📐 OpenAPI 3.1 specification — machine-readable schema for all 49 endpoints.
🐍 vocametrix-python — official Python SDK if you want direct API access from Python (
pip install vocametrix).🟦 vocametrix-js — official TypeScript / JavaScript SDK used internally by this MCP server (
npm install vocametrix).
License
MIT — see LICENSE
Available Tools
39 toolsvocametrix_adapt_exerciseA
Adapt a speech therapy exercise to a specific learner profile (ADHD, dyslexia, dysgraphia, dyspraxia, Tourette, autism). Returns an HTML-formatted adapted version of the exercise with profile-specific tips.
Inputs: exerciseText (required), learnerProfile (required), includeTips.
vocametrix_approve_therapy_planA
Human-in-the-loop approval gate for generated therapy plans. Actions: 'approve' (locks and delivers plan), 'reject' (discards), 'modify' (requires feedback, re-generates). This action is irreversible — once approved, the plan is sent for delivery.
Inputs: sessionId (required), action (required), feedback.
vocametrix_assess_pronunciationA
Score pronunciation accuracy at phoneme level against a reference text. Returns accuracy, fluency, completeness, and prosody scores (0–100) plus per-word and per-phoneme breakdowns. Supports 30+ locales (en-US, fr-FR, de-DE, zh-CN, ar-SA, etc.). Audio should be a clear reading of the reference text.
Inputs: audioPath (required), referenceText (required), speakerLocale.
vocametrix_assess_pronunciation_with_pitchA
Pronunciation assessment enriched with per-word F0 (pitch) contours. In addition to accuracy/fluency/prosody scores, returns fundamental frequency (pitch) statistics for each word — useful for tonal language analysis and prosody coaching.
Inputs: audioPath (required), referenceText (required), speakerLocale.
vocametrix_batch_pronunciationA
Assess pronunciation for all WAV files in a folder against a common reference text. Returns a table (Markdown + JSON) with accuracy, fluency, completeness, and prosody scores per file. Files are processed sequentially to stay within rate limits. Useful for classroom assessments, research cohorts, and batch L2 evaluation.
Inputs: folderPath (required), referenceText (required), locale.
vocametrix_calculate_abiC
Calculate the Acoustic Breathiness Index (ABI) combining connected speech and sustained vowel. ABI aggregates CPPS, jitter, GNE approximation, HNR (6 kHz), H1-H2, shimmer, and period SD. Sensitive to the full spectrum from breathy to pressed phonation.
Inputs: connectedSpeechPath (required), sustainedVowelPath (required).
vocametrix_calculate_avqiA
Calculate the Acoustic Voice Quality Index (AVQI v2.03 or v3.01), a clinically validated dysphonia score. AVQI > 2.43 (French) / 2.97 (English) indicates dysphonia. Requires a sustained vowel recording (e.g. /a/ held for 3+ seconds). Connected speech is optional but improves accuracy.
Inputs: sustainedVowelPath (required), connectedSpeechPath, version.
vocametrix_calculate_cppA
Calculate Cepstral Peak Prominence (CPP) from a sustained vowel. Higher CPP = better voice quality. Typical normal CPP: 20–28 dB. Clinically sensitive to breathiness and hoarseness.
Inputs: sustainedVowelPath (required).
vocametrix_calculate_dsiB
Calculate the Dysphonia Severity Index (DSI). DSI > 1.6 = normal voice; DSI < –1.6 = severe dysphonia. Requires a sustained vowel WAV file plus voice-range parameters (MPT, F0 range, minimum intensity).
Inputs: sustainedVowelPath (required), mpt (required), maximumF0 (required), minimumIntensity (required), +3 more.
vocametrix_calculate_formantsA
Compute F1–F4 formant statistics (mean, SD, range, CV, IQR) from a sustained vowel with vowel-space stability and articulatory precision scores. Useful for dysarthria assessment, vowel space analysis, and cleft palate evaluation.
Inputs: sustainedVowelPath (required), patientAge (required), patientGender (required).
vocametrix_calculate_gneA
Calculate the Glottal-to-Noise Excitation (GNE) ratio from a sustained vowel. GNE ranges 0–1; values < 0.5 suggest increased noise (breathiness/hoarseness). Computed via native Praat algorithm for clinical reliability.
Inputs: sustainedVowelPath (required).
vocametrix_calculate_h1_h2A
Calculate the formant-corrected H1*–H2* voice source measure from a sustained vowel. H1*–H2* is sensitive to breathiness: positive values indicate breathy voice, negative values indicate pressed/tense voice. Normal range: −2 to +2 dB.
Inputs: sustainedVowelPath (required), patientGender.
vocametrix_calculate_hnrA
Calculate multi-band Harmonics-to-Noise Ratio (HNR) across frequency bands (80–8000 Hz) with age- and gender-specific norms. Higher HNR = cleaner voice. Normal HNR (500 Hz band): > 20 dB. Requires a sustained vowel.
Inputs: sustainedVowelPath (required), patientAge (required), patientGender (required).
vocametrix_calculate_jitter_shimmerA
Calculate jitter (period perturbation, PPQ5) and shimmer (amplitude perturbation) from a sustained vowel. Normal jitter < 1.04%; normal shimmer < 3.81 dB. Elevated values indicate irregular vibration — associated with dysphonia.
Inputs: sustainedVowelPath (required).
vocametrix_calculate_prosody_similarityA
Compare prosodic patterns between a model (reference) recording and a learner recording. Returns similarity scores for pitch contour, intensity, duration, and pause patterns. Useful for accent coaching, speech imitation training, and L2 pronunciation.
Inputs: modelPath (required), learnerPath (required).
vocametrix_calculate_spectralA
Extract advanced spectral measures from a sustained vowel: center of gravity, skewness/kurtosis, H1-H2 (breathiness indicator), H1-A1, H1-A3, LTAS slope and tilt, alpha ratio. Returns age/gender-normalized norms and voice pattern classification.
Inputs: sustainedVowelPath (required), patientAge (required), patientGender (required), version.
vocametrix_calculate_sz_ratioA
Calculate the S/Z phonation ratio (duration of sustained /s/ vs /z/). Normal ratio ≈ 1.0. Ratio > 1.4 suggests vocal fold pathology (the /z/ is shorter). Requires two separate recordings: one of sustained /s/ and one of sustained /z/.
Inputs: sFilePath (required), zFilePath (required), patientAge (required), patientGender, +1 more.
vocametrix_calculate_voice_dynamicsA
Compute intensity dynamics, pitch-intensity correlation, and composite scores for voice control, projection, stability, effort, and monotonicity. Useful for voice training, public speaking coaching, and vocal fatigue assessment.
Inputs: sustainedVowelPath (required), patientAge (required), patientGender.
vocametrix_calculate_voice_range_profileA
Calculate the Voice Range Profile (VRP / ambitus / glissando) from a glissando recording. Returns frequency range (lowest to highest pitch) and intensity range with age/gender interpretation. Useful for singers and voice rehabilitation assessment.
Inputs: glissandoPath (required), patientAge, patientGender.
vocametrix_chat_speech_therapistA
Expert speech therapy assistant providing role-based guidance. Adapts its answers depending on whether the user is a therapist (clinical detail), a patient (accessible explanation), or a parent/caregiver (practical home tips). Maintains conversation context via threadId for multi-turn dialogue.
Inputs: message (required), accountType (required), threadId (required).
vocametrix_check_syntaxA
Analyze text for grammar and syntax errors with severity classification (error/warning/info). Returns overall score, per-issue breakdown, corrected text, and readability statistics. Useful for evaluating written language samples in speech-language assessments.
Inputs: text (required), locale (required).
vocametrix_classify_stutteringA
Classify stuttering disfluency patterns in a speech recording (async, ~30–120 seconds). Returns disfluency types (repetitions, prolongations, blocks), severity score, and fluency rate. The tool polls the result automatically — no separate status call needed.
Inputs: audioPath (required), pollIntervalMs, timeoutMs.
vocametrix_convert_french_to_ipaA
Convert French words or phrases to International Phonetic Alphabet (IPA) transcription. Accepts a single string or an array of up to 20 words. Returns IPA transcription per word with optional syllable boundary marks.
Inputs: input (required), includeSyllableMarks.
vocametrix_detect_phonemesA
Detect phonemes in an audio recording using a deep-learning classifier. Returns phoneme labels with confidence scores. Currently supports French (fr) and Estonian (et) phoneme inventories.
Inputs: audioPath (required), language.
vocametrix_extract_egemapsA
Extract the full openSMILE eGeMAPSv02 feature set (88 acoustic features) from an audio file. Features include F0, jitter, shimmer, HNR, MFCCs, formants, spectral flux, and loudness. Commonly used as input to machine-learning voice pathology classifiers.
Inputs: audioPath (required).
vocametrix_full_therapy_workflowA
End-to-end therapy plan generation with automatic polling and human-in-the-loop approval. Generates a therapy plan from session data, polls until complete, and presents it for approval. Returns the approved plan or the pending plan awaiting your approval action. After reviewing, call vocametrix_approve_therapy_plan with 'approve', 'modify', or 'reject'.
Inputs: sessionMetadata (required), wav2vecOutput (required), patientAnamnesis, pollIntervalMs, +1 more.
vocametrix_full_voice_assessmentA
Run a comprehensive clinical voice assessment in a single call. Executes AVQI, CPP, multi-band HNR, jitter/shimmer, and spectral analysis in parallel, then returns a unified JSON report with all metrics and clinical severity interpretation. Requires both a sustained vowel recording (e.g. /a/ held 3+ s) and a connected speech recording. This is the tool an SLP would use for a full voice quality screening.
Inputs: sustainedVowelPath (required), connectedSpeechPath (required), patientAge (required), patientGender (required).
vocametrix_generate_exercisesA
Generate personalized speech therapy exercises tailored to patient profile, pathology, and language. Returns structured exercises with instructions, target phonemes, difficulty level, and therapist tips.
Inputs: message (required), ageLevel (required), speechChallenge (required), language.
vocametrix_generate_therapy_planA
Launch an asynchronous LangGraph-powered therapy plan generation from session audio embeddings. Returns a therapy_session_id. Use vocametrix_get_therapy_status to poll progress, then vocametrix_get_therapy_result to retrieve the plan once complete (~30–120 seconds). Requires wav2vec embeddings — run eGeMAPS or embedding extraction first.
Inputs: sessionMetadata (required), wav2vecOutput (required), patientAnamnesis.
vocametrix_generate_word_listA
Generate a word list targeting a specific phoneme with pronunciation hints and difficulty progression. Useful for articulation therapy, phonological awareness drills, and accent training.
Inputs: language (required), patientAge (required), targetSound (required).
vocametrix_get_therapy_resultA
Retrieve the completed therapy plan result. Only call when vocametrix_get_therapy_status returns result_available = true or status = 'complete'. Returns the full therapy session with exercise plans, clinical narrative, and HTML report path.
Inputs: sessionId (required).
vocametrix_get_therapy_statusA
Poll the status of an async therapy plan generation or stuttering classification session. Statuses: pending → processing → pending_approval → complete (or failed). result_available = true means you can call vocametrix_get_therapy_result.
Inputs: sessionId (required).
vocametrix_interpret_spelling_attemptA
Interpret a speech-to-text transcription of a spelling attempt and give intelligent feedback. Returns whether the spelling matches, an explanation of differences, and correction guidance. Useful for spelling therapy apps where children spell words aloud.
Inputs: transcription (required), targetWord (required), language.
vocametrix_interpret_voice_metricsA
Translate raw voice metrics (jitter, shimmer, HNR, CPPS, F0, etc.) into clinical-language interpretation with severity classification (normal / mild / moderate / severe) and actionable recommendations. Useful when you have metric values from other tools and want a clinician-readable summary.
Inputs: metrics (required), patientAge (required), patientGender, languageCode.
vocametrix_measure_sound_levelA
Measure sound level in dB SPL over a specified time window in an audio file. Useful for environmental noise assessment, vocal loudness measurement, and calibration tasks. Note: startSec must be > 0 (use 0.001 for the start of the file).
Inputs: audioPath (required), startSec, endSec.
vocametrix_synthesize_speechB
Synthesize speech from text using Azure neural text-to-speech. Returns an audio URL and word-level timing data. Supports all Azure Neural voice names for the requested locale.
Inputs: text (required), speakerLocale, voiceName.
vocametrix_synthesize_speech_with_timingA
Synthesize speech via ElevenLabs v2 with per-character timing alignment. Returns audio data and a character-level timing map — useful for lip-sync, subtitles, and karaoke. Supports plain text or SSML markup.
Inputs: text (required), isSSML.
vocametrix_transcribe_audioA
Transcribe an audio file using Azure Speech-to-Text with streaming progress. Returns a transcriptionId and streams progress events via SSE until completion. Returns the final transcript and word-level timing. For long recordings, poll the progress events — transcription may take 30–120 seconds.
Inputs: audioPath (required), speakerLocale.
vocametrix_vocabulary_tutorA
Conversational vocabulary tutor adapting to learner profile (native language, target language, age, topic). Uses spaced repetition principles. Maintain conversation context via threadId.
Inputs: message (required), nativeLanguage (required), targetLanguage (required), ageGroup (required), +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 39 tools
Each tool targets a distinct function or metric, from acoustic analysis to therapy planning. Even similar tools like assess_pronunciation and assess_pronunciation_with_pitch are clearly differentiated by the additional pitch feature. No overlapping purposes.
All tools follow the 'vocametrix_verb_noun' snake_case pattern. Verbs like calculate_, assess_, generate_, get_ are used consistently for similar operations. No mixing of conventions.
39 tools is high, reflecting a broad domain. While each tool is focused, some could be combined (e.g., multiple calculate_ tools under a single analyze_voice_quality). Still within acceptable range for a comprehensive server.
Covers the full speech therapy workflow: assessment, diagnosis, plan generation, exercises, transcription, synthesis, and tutoring. No obvious gaps for the stated domain.
Maintenance
Related MCP Connectors
Official MCP server for OmniDimension. Drive voice agents, dispatch calls, and run bulk campaigns.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
Official MCP server for Lovable, the AI-powered full-stack app builder.
FalaAI API MCP server: transcribe audio, diagnose conversations, audit compliance (ISO 18295-1).
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP server for Synthesizer V AI Vocal Studio, which allows LLMs to create/edit vocal tracks e.g. adding lyrics to the melody.616Apache 2.0
- AlicenseAqualityDmaintenanceOfficial ElevenLabs MCP server for text-to-speech, voice cloning, audio transcription, and sound generation.24MIT
- AlicenseNot gradedqualityDmaintenanceOfficial MCP server that enables interaction with ElevenLabs Text to Speech and audio processing APIs. It allows generating speech, cloning voices, transcribing audio, and creating sound effects through natural language.MIT

@speechweave/mcpofficial
AlicenseAqualityBmaintenanceMCP server for SpeechWeave transcription, enabling AI assistants to transcribe local files and URLs via wait-first or async tools.657 npm1MIT