语音转写服务

该服务通过Groq Whisper API自动转写Google Chat语音消息和本地音频文件,无需本地GPU支持。

  • by fgasparetto
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 fgasparetto/voice-transcriber-mcp

使用说明

语音转录器MCP服务器

MCP服务器 自动转录谷歌聊天语音信息 使用 Groq Whisper API (耳语-arge-v3)。不需要本地GPU。

当Claude Code在Google Chat消息中遇到音频附件时,此服务器会立即转录它,而无需确认。

特性

  • 通过URL转录谷歌聊天语音信息(自动)
  • 转录本地音频文件(mp3、m4a、wav、ogg、flac、webm、aac)
  • 使用Groq Whisper API(免费、快速、基于云)
  • 重用Google Chat OAuth2凭据(不需要单独的Google身份验证)

先决条件

1.Groq API密钥(免费)

  1. 首选 console.groq.com/keys
  2. 创建免费帐户
  3. 生成API密钥
  4. 您可以将其设置为 GROQ_API_KEY 在MCP配置中(见下文)

2.谷歌聊天OAuth2令牌

此服务器需要有效的Google Chat OAuth2令牌(token.json)获取消息并下载音频附件。

如果您已经使用谷歌聊天MCP服务器 (例如。 多聊天mcp服务器),令牌已可用。默认路径:

~/tools/multi-chat-mcp-server/src/providers/google_chat/token.json

如果您的令牌位于其他位置,请设置 GCHAT_TOKEN_PATH 环境变量。

如果你还没有谷歌聊天令牌,您需要:

  1. 创建一个启用聊天API的谷歌云项目
  2. 创建OAuth2凭据(桌面应用程序)
  3. 运行OAuth流以生成 token.json 范围:
    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.spaces.readonly

3.uv(Python包管理器)

OS 命令
Linux/MOSC/WSL curl -LsSf https://astral.sh/uv/install.sh | sh
视窗 powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

验证: uv --version

安装

git clone https://github.com/fgasparetto/voice-transcriber-mcp.git
cd voice-transcriber-mcp
uv sync

配置

添加到您的Claude Code MCP配置中(.mcp.json 或 ~/.claude.json):

{
  "mcpServers": {
    "voice-transcriber": {
      "type": "stdio",
      "command": "uv",
      "args": [
        "--directory", "/path/to/voice-transcriber-mcp",
        "run", "python", "server.py"
      ],
      "env": {
        "GROQ_API_KEY": "gsk_your_groq_api_key_here"
      }
    }
  }
}

替换:

  • /path/to/voice-transcriber-mcp 使用实际的克隆目录
  • gsk_your_groq_api_key_here 使用Groq API密钥

环境变量

变量 必填 默认 描述
GROQ_API_KEY 是 - Groq API密钥(免费获得一个)
GCHAT_TOKEN_PATH 没有 ~/tools/multi-chat-mcp-server/src/providers/google_chat/token.json 谷歌聊天OAuth2令牌的路径

工具

transcribe_voice_message

从谷歌聊天中转录语音信息。 自动调用 克劳德在遇到音频附件时。

transcribe_voice_message(
  message_url="https://chat.google.com/dm/SPACE/THREAD/MSG",
  language="it"
)

transcribe_audio_file

转录本地音频文件。

transcribe_audio_file(
  file_path="/tmp/recording.m4a",
  language="it"
)

平台说明

Linux

无需额外步骤。确保 uv 在你的路径。

macOS

  • 如果 uv 安装后找不到: export PATH="$HOME/.local/bin:$PATH"

Windows(WSL)

Claude Code在WSL内部运行。所有路径都必须是Linux风格:

  • 令牌路径: /home/USER/tools/... (不是 /mnt/c/...)
  • 如果 uv 未找到: source ~/.bashrc 或添加 ~/.local/bin 前往PATH

故障排除

问题 解决方案
GROQ_API_KEY not set 将其添加到 env MCP配置中的部分
Google Chat token not found 设置 GCHAT_TOKEN_PATH 或验证您的谷歌聊天MCP
Groq API error 413 音频文件太大(Groq限制:25MB)
uv: command not found 安装uv(请参阅先决条件)

运作原理

Claude Code → MCP tool call → server.py
  1. Parse Google Chat URL
  2. Fetch message via Google Chat API (OAuth2 token)
  3. Download audio attachment via media API
  4. Send to Groq Whisper API (whisper-large-v3)
  5. Return transcribed text

许可证

麻省理工学院