MCP音频服务器🔊
一个强大的模型上下文协议(MCP)服务器,为Claude Desktop和其他MCP客户端提供文本到语音和音频播放功能。
✨ 特性
- 🗣️ 高品质TTS:
- 智能语言检测:对于高质量的中文语音,自动使用谷歌的TTS,对于其他语言,则回退到系统的TTS。 - 语音选择:对于非中文文本,请列出并从各种系统安装的语音中进行选择。 - 可定制的语音:调整速率和音量,以获得量身定制的聆听体验。
- 🎵 音频文件播放:播放各种音频格式(WAV、MP3、OGG等)。
- ⏹️ 音频控制:停止播放并获取实时音频状态。
- 🔌 符合MCP标准:完全兼容克劳德桌面和MCP规范2024-11-05。
- 🛡️ 错误处理:强大的错误处理和验证。
- 📊 状态监测:实时音频系统状态和播放信息。
🚀 快速开始
先决条件
- Python 3.8+
- Claude Desktop(用于MCP集成)
- 系统音频功能
安装
- 克隆存储库:
git clone https://github.com/yourusername/mcp-audio-server.git
cd mcp-audio-server- 安装依赖项:
pip install -r requirements.txt- 配置Claude桌面:
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"audio-server": {
"command": "/path/to/your/python",
"args": ["/path/to/mcp-audio-server/audio_server.py"]
}
}
}- 重新启动克劳德桌面 并开始使用音频功能!
🛠️ 可用工具
| 工具 | 说明 | 参数 |
|---|---|---|
speak_text | 将文本转换为语音。自动使用谷歌中文TTS。 | text (必填), rate (可选), volume (可选), voice_id (非中国人可选) |
list_voices | 列出非中文语言的可用TTS语音。 | 无 |
play_audio_file | 播放音频文件。 | file_path (必填), volume (可选) |
stop_audio | 停止当前音频播放。 | 无 |
get_audio_status | 获取音响系统状态。 | 无 |
📖 使用示例
文本转语音(中文)
"请用语音说出 '你好,世界'"*这将自动使用谷歌TTS来获得自然的声音。*
文本转语音(英语,特定语音)
- 首先,列出可用的声音:
"List all available voices"- 然后,使用列表中的特定语音ID:
"Use the voice with ID 'com.apple.speech.synthesis.voice.daniel' to say 'Hello, this is a test.'"播放音频文件
"Play the audio file at /path/to/music.mp3"停止音频
"Stop the current audio playback"检查状态
"What's the current audio status?"🧪 测试
运行综合测试套件:
# Test all MCP methods
python test_all_mcp_methods.py
# Test Claude Desktop format compatibility
python test_claude_desktop_format.py
# Test audio functionality
python test_audio_server.py
# Interactive testing mode
python audio_server.py --interactive📁 项目结构
mcp-audio-server/
├── audio_server.py # Main MCP server
├── requirements.txt # Python dependencies
├── README.md # English documentation (default)
├── README_CN.md # Chinese documentation
├── .gitignore # Git ignore rules
├── tests/ # Test files
│ ├── test_*.py # Various tests
│ └── validate_*.py # Validation scripts
├── examples/ # Configuration examples
│ ├── claude_desktop_config.json
│ └── other config files
├── scripts/ # Utility scripts
│ ├── install_and_setup.sh
│ └── other shell scripts
└── docs/ # Additional documentation
├── INTEGRATION_GUIDE.md # Integration guide
├── USAGE_GUIDE.md # Usage guide
└── FINAL_INTEGRATION_REPORT.md🔧 配置
Claude桌面配置
服务器与Claude Desktop无缝集成。确保您的配置文件设置正确:
地点:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 窗户:
%APPDATA%\Claude\claude_desktop_config.json
配置示例:
{
"mcpServers": {
"audio-server": {
"command": "/Users/yourusername/miniconda3/envs/mcp_agent/bin/python",
"args": ["/path/to/mcp-audio-server/audio_server.py"]
}
}
}🐛 故障排除
常见问题
- 音频未播放:检查系统音频设置和权限
- TTS不工作:确保pyttsx3安装正确
- MCP连接问题:验证Claude Desktop配置路径
- 权限错误:检查音频文件的文件权限
调试模式
以交互模式运行进行调试:
python audio_server.py --interactive🤝 贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 添加新功能的测试
- 提交拉取请求
📄 许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
🙏 致谢
- 使用模型上下文协议(MCP)构建
- 使用pyttsx3进行文本到语音转换
- 使用pygame进行音频播放
- 与Claude Desktop兼容
📞 支持
如果您遇到任何问题或有疑问:
- 检查故障排除部分
- 查看集成指南
- 在GitHub上打开一个问题
- 查看Claude Desktop文档
______________________________________________________________________
由以下材料制成❤️ 对于MCP社区
