mcpField
V
Voice Transcriber MCP Server

Voice Transcriber MCP Server

Local
github.com/fgasparettoMedia & Design0Updated 33w ago

About Voice Transcriber MCP Server

Voice Transcriber MCP Server transcribes Google Chat voice messages and local audio files using Groq Whisper API. It is intended for Claude Code users and can fetch message audio with an existing Google Chat OAuth2 token.

Key features

  1. 01Transcribe Google Chat voice messages by URL
  2. 02Transcribe local audio files
  3. 03Use Groq Whisper API for transcription
  4. 04Reuse Google Chat OAuth2 credentials

Use cases

  1. 01Read a voice message attached to a Google Chat message
  2. 02Transcribe a local recording
  3. 03Transcribe audio in a specified language

MCP support

Exposes tools to transcribe Google Chat voice messages and local audio files to MCP clients. The message tool uses a Google Chat OAuth2 token to fetch attachments, then sends audio to Groq Whisper API.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"fgasparetto-voice-transcriber": {
"command": "uvx",
"args": [
"voice-transcriber-mcp"
],
"env": {
"GROQ_API_KEY": "<GROQ_API_KEY>",
"GCHAT_TOKEN_PATH": "<GCHAT_TOKEN_PATH>"
}
}
}
}
Run commanduvx voice-transcriber-mcp
Environment variables to set
GROQ_API_KEYSecretGroq API key for Whisper transcription (free at console.groq.com)
GCHAT_TOKEN_PATHSecretPath to Google Chat OAuth2 token.json

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypivoice-transcriber-mcp2.0.1

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Voice Transcriber MCP Server

MCP server that automatically transcribes Google Chat voice messages using Groq Whisper API (whisper-large-v3). No local GPU needed.

When Claude Code encounters an audio attachment in a Google Chat message, this server transcribes it immediately without asking for confirmation.

Features

  • Transcribe Google Chat voice messages by URL (automatic)
  • Transcribe local audio files (mp3, m4a, wav, ogg, flac, webm, aac)
  • Uses Groq Whisper API (free tier, fast, cloud-based)
  • Reuses Google Chat OAuth2 credentials (no separate Google auth needed)

Prerequisites

1. Groq API Key (free)
  1. Go to console.groq.com/keys
  2. Create a free account
  3. Generate an API key
  4. You'll set this as GROQ_API_KEY in your MCP config (see below)
2. Google Chat OAuth2 Token

This server needs a valid Google Chat OAuth2 token (token.json) to fetch messages and download audio attachments.

If you already use a Google Chat MCP server (e.g. multi-chat-mcp-server), the token is already available. Default path:

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

If your token is in a different location, set the GCHAT_TOKEN_PATH environment variable.

If you don't have a Google Chat token yet, you need to:

  1. Create a Google Cloud project with Chat API enabled
  2. Create OAuth2 credentials (Desktop app)
  3. Run the OAuth flow to generate token.json with scopes:
    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.spaces.readonly
3. uv (Python package manager)
OSCommand
Linux / macOS / WSLcurl -LsSf https://astral.sh/uv/install.sh | sh
Windowspowershell -c "irm https://astral.sh/uv/install.ps1 | iex"

Verify: uv --version

Installation

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

Configuration

Add to your Claude Code MCP config (.mcp.json or ~/.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"
      }
    }
  }
}

Replace:

  • /path/to/voice-transcriber-mcp with the actual clone directory
  • gsk_your_groq_api_key_here with your Groq API key
Environment Variables
VariableRequiredDefaultDescription
GROQ_API_KEYYes—Groq API key (get one free)
GCHAT_TOKEN_PATHNo~/tools/multi-chat-mcp-server/src/providers/google_chat/token.jsonPath to Google Chat OAuth2 token

Tools

transcribe_voice_message

Transcribe a voice message from Google Chat. Called automatically by Claude when it encounters an audio attachment.

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

Transcribe a local audio file.

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

Platform Notes

Linux

No additional steps. Ensure uv is in your PATH.

macOS
  • If uv not found after install: export PATH="$HOME/.local/bin:$PATH"
Windows (WSL)

Claude Code runs inside WSL. All paths must be Linux-style:

  • Token path: /home/USER/tools/... (NOT /mnt/c/...)
  • If uv not found: source ~/.bashrc or add ~/.local/bin to PATH

Troubleshooting

ProblemSolution
GROQ_API_KEY not setAdd it to the env section in your MCP config
Google Chat token not foundSet GCHAT_TOKEN_PATH or authenticate your Google Chat MCP
Groq API error 413Audio file too large (Groq limit: 25MB)
uv: command not foundInstall uv (see Prerequisites)

How It Works

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

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.