实时音频输入协议

一个为Claude Desktop提供实时麦克风输入的模型上下文协议(MCP)服务器,支持多种语音转文本引擎和低延迟音频捕获。

  • by joelfuller2016
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 joelfuller2016/claude-desktop-realtime-audio-mcp

使用说明

克劳德桌面实时音频MCP

一个模型上下文协议(MCP)服务器,支持 实时麦克风输入 适用于Windows上的Claude Desktop。该项目通过Windows Audio Session API(WASAPI)集成和实时语音识别,弥合了Claude的对话式人工智能与现场语音输入之间的差距。

🚀 特性

  • 实时音频采集:使用Windows WASAPI的低延迟麦克风输入
  • 多个语音转文本引擎:支持OpenAI Whisper、Azure语音和谷歌语音
  • MCP集成:通过模型上下文协议与Claude Desktop无缝集成
  • 语音活动检测:智能静音检测和音频分块
  • 设备管理:自动音频设备枚举和选择
  • 跨格式支持:支持多种音频格式和采样率
  • 性能优化:自然对话流的延迟最小

🏗️ 项目状态

🚧 积极发展

该项目目前正处于研发阶段。请参阅 项目路线图 下面是详细的里程碑和进度跟踪。

🎯 视觉

通过提供以下功能,与Claude Desktop进行自然、语音驱动的对话:

  • 从语音到文本的延迟低于500毫秒
  • 强大的错误处理和优雅的降级
  • 易于安装和配置
  • 支持多个音频输入源
  • 用于未来增强的可扩展架构

🗺️ 项目路线图

第一阶段:研究与架构(目标:2025年6月15日)

  • [x] 研究Windows WASAPI API和实时音频捕获方法
  • [x] 设计音频流媒体的MCP服务器架构
  • []用C语言创建概念验证WASAPI音频捕获++
  • []评估语音到文本集成选项
  • []设置开发环境和工具链

第二阶段:核心音频实施(目标:2025年7月1日)

  • []用C语言实现WASAPI音频采集模块++
  • []为音频模块创建Node.js FFI绑定
  • []开发实时音频缓冲和流媒体系统
  • []实现音频格式转换和处理流水线
  • []创建设备枚举和选择功能

第三阶段:MCP服务器开发(目标:2025年7月20日)

  • []使用TypeScript SDK实现MCP服务器
  • []为MCP接口创建音频捕获工具
  • []实现语音到文本集成工具
  • []开发配置和设备管理资源
  • []添加错误处理和优雅关机机制

第四阶段:语音识别集成(目标:2025年8月10日)

  • []集成OpenAI Whisper进行本地处理
  • []添加Azure语音服务集成
  • []实现谷歌语音转文本支持
  • []使用组块策略开发实时转录
  • []创建语音活动检测和静音处理

第五阶段:克劳德桌面集成(目标:2025年8月25日)

  • []测试与Claude Desktop配置的集成
  • []优化延迟和性能以实现实时使用
  • []实现用户偏好和配置UI
  • []创建安装和设置自动化
  • []开发使用示例和演示场景

第6阶段:测试和文件编制(目标:2025年9月15日)

  • []为所有组件创建全面的测试套件
  • []编写详细的安装和使用文档
  • []制定故障排除指南和常见问题解答
  • []执行安全和性能审计
  • []准备发布包和分发

🏛️ 架构概述

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│   Claude        │    │  MCP Server      │    │  Audio Module   │
│   Desktop       │◄──►│  (TypeScript)    │◄──►│  (C++ WASAPI)   │
│                 │    │                  │    │                 │
└─────────────────┘    └──────────────────┘    └─────────────────┘
                                │                         │
                                ▼                         ▼
                        ┌──────────────────┐    ┌─────────────────┐
                        │  Speech-to-Text  │    │  Windows Audio  │
                        │  Services        │    │  System         │
                        │  (Whisper/Azure/ │    │  (Microphone)   │
                        │   Google)        │    │                 │
                        └──────────────────┘    └─────────────────┘

🛠️ 技术栈

  • 核心MCP服务器:使用TypeScript @模型上下文协议/sdk
  • 音频捕获:C++与Windows WASAPI
  • Node.js集成:node-gyp用于本机模块编译
  • 语音识别:
    • OpenAI Whisper(本地处理)
    • Azure语音服务(云)
    • 谷歌语音转文本(云)
  • 构建系统:node-gyp,TypeScript编译器
  • 文档:Markdown与GitHub页面

📋 先决条件

  • Windows 10/11 (Windows 7+支持WASAPI)
  • Node.js 16+ 使用npm
  • Visual Studio生成工具 (用于本地编译)
  • Python 3.8+ (适用于节点gyp)
  • Git 用于版本控制

🚦 快速开始

备注:这个项目正在开发中。安装说明将随第一个版本一起提供。

# Clone the repository
git clone https://github.com/joelfuller2016/claude-desktop-realtime-audio-mcp.git
cd claude-desktop-realtime-audio-mcp

# Install dependencies
npm install

# Build the project
npm run build

# Configure Claude Desktop
# (Instructions will be provided in setup documentation)

🤝 贡献

我们欢迎各种各样的贡献!您是否愿意:

  • 🐛 报告错误或问题
  • 💡 建议新功能或改进
  • 🔧 提交代码贡献
  • 📚 改进文档
  • 🧪 帮助进行测试

请查看我们的 贡献指南 有关如何开始的详细信息。

📖 研究与参考

该项目建立在以下方面的广泛研究之上:

📜 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

  • Anthropic 克劳德和模型上下文协议
  • OpenAI 用于Whisper语音识别
  • 优秀工具的Node.js和TypeScript社区
  • 微软提供全面的WASAPI文档和示例

📞 支持与社区


⭐ 如果您觉得这个存储库有趣或有用,请为其添加星号!

该项目旨在使语音驱动的人工智能对话更加自然和易于访问。加入我们,共同构建人机交互的未来。