Speech-to-Text MCP Server
An MCP server that provides speech-to-text transcription and speaker diarization using OpenAI Whisper and pyannote.audio.
README
Speech-to-Text MCP Server
一个支持语音转文本和说话人分离的 Model Context Protocol (MCP) 服务器。
功能特性
- ✅ 支持上传最长 60 分钟的音频文件
- ✅ 自动语音识别 (使用 OpenAI Whisper)
- ✅ 说话人分离功能 (使用 pyannote.audio)
- ✅ 支持多种音频格式 (mp3, wav, m4a, flac 等)
- ✅ 输出带时间戳的转录文本
系统要求
- Python 3.10 或更高版本
- Windows/Linux/macOS
- 至少 8GB RAM (推荐 16GB)
- 建议使用 GPU 以加速处理 (可选)
安装步骤
1. 创建虚拟环境
python -m venv venv
.\venv\Scripts\Activate.ps1
2. 安装依赖
pip install -e .
3. 安装 FFmpeg (音频处理必需)
Windows:
- 下载 FFmpeg: https://ffmpeg.org/download.html
- 解压并添加到系统 PATH
或使用 Chocolatey:
choco install ffmpeg
4. 获取 Hugging Face Token
pyannote.audio 需要 Hugging Face token:
- 访问 https://huggingface.co/settings/tokens
- 创建一个新的 token
- 接受模型使用条款:
- https://huggingface.co/pyannote/speaker-diarization-3.1
- https://huggingface.co/pyannote/segmentation-3.0
配置 MCP 客户端
在你的 MCP 客户端配置文件中添加此服务器:
{
"mcpServers": {
"speech-to-text": {
"command": "python",
"args": [
"e:\\demoProject\\speech_to_text\\server.py"
],
"env": {
"HUGGINGFACE_TOKEN": "your_token_here"
}
}
}
}
使用方法
服务器提供以下工具:
1. transcribe_audio
转录音频文件为文本。
参数:
audio_file_path(必需): 音频文件的完整路径language(可选): 语言代码,如 "zh" (中文), "en" (英文), 默认自动检测enable_diarization(可选): 是否启用说话人分离,默认 false
示例调用:
{
"audio_file_path": "C:\\Users\\username\\Desktop\\meeting.mp3",
"language": "zh",
"enable_diarization": true
}
2. get_supported_formats
获取支持的音频格式列表。
输出示例
不启用说话人分离:
[00:00:00.000 --> 00:00:05.000] 大家好,欢迎参加今天的会议。
[00:00:05.000 --> 00:00:12.000] 今天我们主要讨论项目进展。
启用说话人分离:
[说话人 SPEAKER_00] [00:00:00.000 --> 00:00:05.000]
大家好,欢迎参加今天的会议。
[说话人 SPEAKER_01] [00:00:05.000 --> 00:00:12.000]
今天我们主要讨论项目进展。
技术细节
- 语音识别引擎: OpenAI Whisper (medium 模型)
- 说话人分离: pyannote.audio 3.1
- 音频处理: pydub + FFmpeg
- MCP 版本: 1.0
性能建议
- 对于长音频 (>30分钟),建议使用 GPU
- 首次运行会下载模型文件 (~1.5GB)
- 处理时间大约为音频时长的 0.5-2 倍 (取决于硬件)
故障排除
问题: FFmpeg 未找到
解决: 确保 FFmpeg 已安装并在 PATH 中
问题: CUDA out of memory
解决: 使用 CPU 模式或减少 batch size
问题: pyannote.audio 认证失败
解决: 检查 HUGGINGFACE_TOKEN 是否正确设置并接受了模型条款
许可证
MIT License
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。