asr-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@asr-mcptranscribe this audio file"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
asr-mcp
基于本地 Whisper Large V3 (MLX) 模型的语音转文本 MCP 服务(stdio 传输)。转写全程本地运行,不联网、不上传音频。
功能
对外暴露两个 MCP 工具:
工具 | 说明 |
| 将音频转写为文本,支持三种输出: |
| 调用当前会话的 LLM 对转写结果纠错,支持 |
设计要点:
工具调用与重任务解耦:转写在独立子进程(
worker.py)中执行,server 以事件驱动方式等待并每 15 秒上报心跳进度,不轮询进程状态。超时语义诚实:默认超时 10 分钟;超时后不杀子进程,任务继续在后台跑完并自行落盘,工具如实返回「未完成」而非「出错」,并提示稍后检查输出文件。
中文标点修复:该模型转写中文时默认不输出任何标点,本服务按语言注入
initial_prompt引导生成规范标点。Sampling 优雅回退:纠错优先走 MCP Sampling;客户端不支持时(多数客户端的现状),工具返回一份现成的纠错提示词,由当前会话的 LLM 直接完成纠错。
Related MCP server: simple-asr-mcp
环境要求
macOS + Apple Silicon(MLX 仅支持 Apple 芯片)
Python ≥ 3.12
uv 包管理器
本地模型目录(见下节)
安装
git clone https://github.com/fengredrum/asr-mcp.git
cd asr-mcp
uv sync本项目默认 PyPI 索引为阿里云镜像(见
pyproject.toml),海外网络可在[tool.uv]中删除或替换该配置。
准备模型
下载模型到本地任意目录,例如:
huggingface-cli download mlx-community/whisper-large-v3-mlx --local-dir ~/models/whisper-large-v3-mlx通过环境变量 ASR_MCP_MODEL_PATH 指定模型目录(也支持直接填 Hugging Face 仓库 ID,mlx_whisper 会自动下载):
export ASR_MCP_MODEL_PATH=~/models/whisper-large-v3-mlx接入 MCP 客户端
以 Claude Code 为例:
claude mcp add asr-mcp \
--env ASR_MCP_MODEL_PATH=$HOME/models/whisper-large-v3-mlx \
-- uv --directory /绝对路径/asr-mcp run server.py或在客户端的 MCP 配置中手动添加:
{
"mcpServers": {
"asr-mcp": {
"command": "uv",
"args": ["--directory", "/绝对路径/asr-mcp", "run", "server.py"],
"env": {
"ASR_MCP_MODEL_PATH": "/你的模型目录/whisper-large-v3-mlx"
}
}
}
}接入后直接让 LLM「转写这个音频文件」即可,它会调用 transcribe_audio 并在完成后询问是否需要纠错。
调试转写链路
可绕过 MCP 直接运行 worker:
.venv/bin/python worker.py <音频路径> <text|timestamps|srt> <输出文件> [语言]输出文件命名约定
类型 | 文件名 |
纯文本 |
|
时间轴 |
|
字幕 |
|
纠错结果(约定) |
|
输出默认与音频文件同目录,也可由调用方指定输出目录。
项目结构
server.py # MCP server:工具定义、子进程调度、心跳进度、Sampling 回退
worker.py # 一次性转写工作进程,stdout 最后一行 JSON 为状态协议
transcriber.py # mlx_whisper.transcribe 薄封装(含中文标点 workaround)
formatter.py # text / timestamps / srt 三种格式化输出许可证
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityAmaintenanceMCP server for offline speech-to-text and speaker diarization, enabling AI agents to transcribe audio locally without cloud APIs.Last updated3MIT
- Alicense-qualityDmaintenanceMinimal MCP server for local speech recognition using faster-whisper. Runs on CPU, no cloud required.Last updatedMIT
- AlicenseAqualityAmaintenanceMCP server for audio transcription using local faster-whisper or OpenAI Whisper API, enabling multilingual transcription with optional GPT post-processing.Last updated3MIT
- Alicense-qualityDmaintenanceAn MCP server for audio/video transcription using MLX-optimized Whisper models, offering fast performance on Apple Silicon with support for multiple output formats and batch processing.Last updated1MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for Producer/Riffusion AI music generation
MCP server for AI dialogue using various LLM models via AceDataCloud
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fengredrum/asr-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server