Speech AI - Pronunciation, STT & TTS

io.github.fasuizu-br由 GitHub 账号 fasuizu-br 发布v2.3.0更新于 Oct 24, 2026

Pronunciation scoring, speech-to-text, and text-to-speech for language learning

已验证Streamable HTTP可网页运行媒体与设计AI 与机器学习

概览

AI 生成的概览

远程语音 AI 服务器,提供英语发音评分、语音转文字和文字转语音合成。

可以做什么
根据音频评估英语发音,给出整体、句子、单词和音素四个层级的评分,音素以 IPA 和 ARPAbet 表示,并可列出支持的音素清单。将音频转写为文字,附单词级时间戳和置信度,另有多语言 Whisper 模式,支持语言检测和可选的说话人分离。将英语文本合成为语音,并列出可用语音及其元数据。检查发音、STT、Whisper 和 TTS 服务的健康状态与就绪情况。
适用场景
适合语言学习或语音相关工具:助手需要给学习者的发音打分、转写录音或生成语音,而无需自行部署语音模型。
运行要求
远程 MCP 端点,无需本地运行时或安装包。README 说明当前 API 需要 Brainiall 账户的 Authorization Bearer API 密钥,并指出本条目中的网关地址已停用。音频以 base64 数据传入。
安装前请注意
README 标明本条目所列网关为旧版,并称不要使用这些地址,连接前请确认当前端点。当前 API 需要 Brainiall API 密钥,切勿提交或外泄。提交的音频会发送至第三方服务。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Speech AI - Pronunciation, STT & TTS,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.fasuizu-br%2Fspeech-ai/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "speech-ai-pronunciation-stt-tts": {
      "type": "http",
      "url": "https://apim-ai-apis.azure-api.net/mcp/pronunciation/mcp"
    }
  }
}

README

Brainiall Speech AI examples — migration notice

[Current TTS health] [Current TTS repository]

This repository is legacy. The former apim-ai-apis.azure-api.net gateway and the old Speech AI MCP URLs documented in earlier revisions have been retired. Do not use those URLs. The other files in this repository are retained only as historical source and may no longer run.

Current supported surfaces

NeedCurrent surface
Text-to-speech MCP serverhttps://api.brainiall.com/mcp/tts/mcp
Text-to-speech REST endpointPOST https://api.brainiall.com/v1/tts/synthesize
TTS health checkhttps://api.brainiall.com/mcp/tts/health
TTS setup, OpenAPI and maintained examplesfasuizu-br/brainiall-tts-mcp
Brazilian Portuguese transcriptionTranscreve BR
Speech-to-text API overviewBrainiall Speech-to-Text
Account and API keyBrainiall app
Offline contract compatibility checkscompatibility-pack/

Authentication for the current API uses an Authorization: Bearer YOUR_BRAINIALL_API_KEY header. Never commit a real key.

For TTS examples for Claude, Cursor, VS Code, n8n, Postman and raw REST clients, use the maintained TTS repository linked above. It is the canonical source for current voices, prices and request schemas.

The small compatibility pack is different from the historical examples. It is an offline-only contract test for buffered TTS, generic diarized-STT review artifacts, a synthetic diarization canary and local-by-default usage planning. It performs no API call during tests, contains no key, copies no third-party source, and does not claim streaming, cancellation, OpenAI drop-in compatibility, completed third-party integration or billing. Read its kill gates before reusing it.

Why this notice exists

External directories and search engines may still link to this repository. This notice prevents an old listing from sending developers to endpoints that no longer work and points them to the maintained production surfaces.

License

MIT — Brainiall

C112 — hosted STT contract fixture

The Whisper-WebUI OpenAI-compatible fixture is a provider-neutral, synthetic request/response example for maintainers evaluating an external speech-to-text path. It does not claim that Whisper-WebUI has adopted the contract, and it never includes a key or private audio.

来源:README.md,提交 eab44aa

工具

10

assess_pronunciation

Assess Pronunciation

Assess English pronunciation quality from audio. Scores pronunciation at four levels: overall, sentence, word, and phoneme. Each score is 0-100. Phonemes are returned in both IPA and ARPAbet notation. Sub-300ms inference latency. Args: audio_base64: Base64-encoded audio data. Supports WAV, MP3, OGG, and WebM formats. text: The reference English text that the speaker was expected to read aloud. audio_format: Audio format hint — one of 'wav', 'mp3', 'ogg', 'webm'. Defaults to 'wav'. Returns: dict with keys: - overallScore (int 0-100): Overall pronunciation quality - sentenceScore (int 0-100): Sentence-level fluency and accuracy - words (list): Per-word scores, each containing: - word (str): The word - score (int 0-100): Word pronunciation score - phonemes (list): Per-phoneme scores with IPA/ARPAbet notation - decodedTranscript (str): What the model heard (ASR transcript) - transcript (str): Reference text - confidence (float 0-1): Scoring confidence - warnings (list[str]): Quality warnings if any - audioQuality (dict): Audio metrics (SNR, peak/RMS dB, etc.)

输入参数text必填audio_base64必填audio_format

check_pronunciation_service

Check Pronunciation Service

Check if the pronunciation assessment service is healthy and ready. Returns: dict with keys: - status (str): 'healthy' or error state - modelLoaded (bool): Whether the scoring model is loaded - version (str): API version

无需输入参数。

get_phoneme_inventory

Get Phoneme Inventory

Get the full phoneme inventory supported by the pronunciation scorer. Returns a list of all English phonemes the engine can assess, including ARPAbet symbol, IPA equivalent, example word, and phoneme category (vowel, consonant, diphthong). Returns: list of dicts, each with keys: - arpabet (str): ARPAbet symbol (e.g. 'AA', 'TH') - ipa (str): IPA notation - example (str): Example word containing the phoneme - category (str): vowel, consonant, or diphthong

无需输入参数。

transcribe_audio

Transcribe Audio

Transcribe audio to text with word-level timestamps. Converts spoken English audio into text with optional word-level timestamps and per-word confidence scores. Args: audio_base64: Base64-encoded audio data (WAV, MP3, OGG, FLAC, WebM). audio_format: Audio format hint. Auto-detected from magic bytes if omitted. include_timestamps: Whether to include word-level timing (default: true). Returns: dict with keys: - text (str): Full decoded transcript - words (list): Per-word results with timestamps, each containing: - word (str): The transcribed word - start (float): Start time in seconds - end (float): End time in seconds - confidence (float 0-1): Word-level confidence - audioDurationMs (int): Audio duration in milliseconds - metadata (dict): Processing time, audio length, model version - audioQuality (dict): Audio metrics (SNR, peak/RMS dB, etc.)

输入参数audio_base64必填audio_formatinclude_timestamps

check_stt_service

Check STT Service

Check if the speech-to-text service is healthy and ready. Returns: dict with keys: - status (str): 'healthy' or error state - modelLoaded (bool): Whether the STT model is loaded - version (str): API version

无需输入参数。

synthesize_speech

Synthesize Speech

Generate natural speech audio from English text. Produces high-quality speech with 12 English voices. Returns base64-encoded WAV audio (16-bit PCM, 24kHz mono) along with metadata. Available voices: - af_heart (default), af_bella, af_nicole, af_sarah, af_sky (American female) - am_adam, am_michael (American male) - bf_emma, bf_isabella (British female) - bm_george, bm_lewis, bm_daniel (British male) Args: text: English text to synthesize (1-5000 characters). voice: Voice ID. See list above. Defaults to 'af_heart'. speed: Speed multiplier from 0.5 to 2.0 (default: 1.0). Returns: dict with keys: - audio_base64 (str): Base64-encoded WAV audio (16-bit PCM, 24kHz) - duration_ms (str): Audio duration in milliseconds - voice (str): Voice ID used - text_length (str): Input text character count - processing_ms (str): Synthesis time in milliseconds

输入参数text必填speedvoice

list_tts_voices

List TTS Voices

List all available text-to-speech voices with metadata. Returns: dict with keys: - voices (list): Available voices, each with id, name, gender, accent, grade - defaultVoice (str): Default voice ID

无需输入参数。

check_tts_service

Check TTS Service

Check if the text-to-speech service is healthy and ready. Returns: dict with keys: - status (str): 'healthy' or error state - modelLoaded (bool): Whether the TTS model is loaded - version (str): API version

无需输入参数。

transcribe_audio_pro

Transcribe Audio Pro (Whisper)

Transcribe audio with Whisper Large V3 Turbo — multilingual STT. Supports 99 languages with automatic language detection, word-level timestamps, per-word confidence scores, and optional speaker diarization (identifies who spoke each word). Best-in-class WER (~2%). Args: audio_base64: Base64-encoded audio (WAV, MP3, OGG, FLAC, WebM). language: Language code. Auto-detected if omitted. Supports 99 languages. diarize: Enable speaker diarization (default: false). When true, each word includes a speaker label (e.g. SPEAKER_00, SPEAKER_01). Returns: dict with keys: - text (str): Full decoded transcript - words (list): Per-word results with timestamps, each containing: - word (str), start (float), end (float), confidence (float 0-1) - speaker (str|null): Speaker label when diarize=true - speakers (dict|null): Speaker info with count and labels - audioDurationMs (int): Audio duration in milliseconds - metadata (dict): Processing time, language, languageProbability - audioQuality (dict): Audio metrics (SNR, peak/RMS dB, etc.)

输入参数diarizelanguageaudio_base64必填

check_whisper_service

Check Whisper Service

Check if the Whisper STT Pro service is healthy and ready. Returns: dict with keys: - status (str): 'healthy' or error state - modelLoaded (bool): Whether the Whisper model is loaded - diarizeLoaded (bool): Whether the diarization pipeline is loaded - version (str): API version - modelName (str): Whisper model name (e.g. 'large-v3-turbo')

无需输入参数。

版本历史

1
  1. v2.3.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分