About whisper-mcp
whisper-mcp is a local audio transcription MCP server built on whisper.cpp for users who want to transcribe recordings on their own machine. It supports several models and audio formats, with optional timestamps.
Key features
- 01Local transcription with whisper.cpp
- 02Several Whisper model sizes
- 03WAV, MP3, M4A and other formats
- 04Text, timestamp, or JSON output
- 05List and download models
Use cases
- 01Transcribing local audio recordings
- 02Choosing models for different transcription needs
- 03Getting timestamped or JSON transcripts
MCP support
Exposes tools to transcribe audio files, list available Whisper models, and download models to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
3Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| model | enum | No | Whisper model to use (tiny.en, base.en, small.en, medium.en, large). Default: base.entiny.en | base.en | small.en | medium.en | large |
| language | string | No | Language code (e.g., en, es, fr). Default: en |
| file_path | string | Yes | Absolute path to the audio file to transcribe |
| output_format | enum | No | Output format: text (plain text), timestamps (with timestamps), json (structured). Default: texttext | timestamps | json |
Details
From the project READMEWhisper MCP Server
A lightweight MCP (Model Context Protocol) server for local audio transcription using whisper.cpp. There are several Whisper MCP implementations out there. This one is minimal and pairs with apple-voice-memo-mcp for a complete voice memo workflow.
Features
- Local transcription - All processing happens on your machine
- Multiple models - Choose from tiny, base, small, medium, or large models
- Various formats - Supports wav, mp3, m4a, and other audio formats
- Timestamps - Get transcriptions with or without timestamps
Requirements
- macOS (tested on Apple Silicon)
- Node.js 18+
- whisper-cpp:
brew install whisper-cpp - ffmpeg:
brew install ffmpeg
Installation
npm install -g whisper-mcp
Or run directly:
npx whisper-mcp
Configuration
Claude Desktop
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"whisper-mcp": {
"command": "npx",
"args": ["-y", "whisper-mcp"]
}
}
}
After editing, restart Claude Desktop.
Claude Code (CLI)
For Claude Code, add to your project's .mcp.json file:
{
"mcpServers": {
"whisper-mcp": {
"command": "npx",
"args": ["-y", "whisper-mcp"]
}
}
}
Or for user-wide configuration, add to ~/.claude/settings.json:
{
"mcpServers": {
"whisper-mcp": {
"command": "npx",
"args": ["-y", "whisper-mcp"]
}
}
}
Tip: Use /mcp in Claude Code to verify the server is connected.
Local Development Setup
If running from source instead of npm:
{
"mcpServers": {
"whisper-mcp": {
"command": "node",
"args": ["/path/to/whisper-mcp/dist/index.js"]
}
}
}
With Apple Voice Memos MCP
For a complete voice memo workflow, use alongside apple-voice-memo-mcp:
{
"mcpServers": {
"apple-voice-memo-mcp": {
"command": "npx",
"args": ["-y", "apple-voice-memo-mcp"]
},
"whisper-mcp": {
"command": "npx",
"args": ["-y", "whisper-mcp"]
}
}
}
MCP Tools
transcribe_audio
Transcribe an audio file using Whisper.
Parameters:
file_path(required): Absolute path to the audio filemodel(optional): Model to use (tiny.en, base.en, small.en, medium.en, large). Default: base.enlanguage(optional): Language code. Default: enoutput_format(optional): text, timestamps, or json. Default: text
Example:
{
"file_path": "/path/to/audio.m4a",
"model": "medium.en",
"output_format": "timestamps"
}
list_whisper_models
List available Whisper models and their download status.
Returns:
{
"models": [
{
"name": "base.en",
"size": "142 MB",
"downloaded": true,
"path": "/Users/you/.whisper/ggml-base.en.bin"
}
]
}
download_whisper_model
Download a Whisper model for local use.
Parameters:
model(required): Model to download (tiny.en, base.en, small.en, medium.en, large)
Models
| Model | Size | Speed | Quality |
|---|---|---|---|
| tiny.en | 75 MB | Fastest | Basic |
| base.en | 142 MB | Fast | Good |
| small.en | 466 MB | Medium | Better |
| medium.en | 1.5 GB | Slow | Great |
| large | 2.9 GB | Slowest | Best |
Models are stored in ~/.whisper/.
Workflow Example
- List your voice memos:
list_voice_memos - Get audio path:
get_audiowith memo ID - Transcribe:
transcribe_audiowith the file path - Save to your vault
Development
# Clone and install
git clone https://github.com/jwulff/whisper-mcp.git
cd whisper-mcp
npm install
# Build
npm run build
# Test with MCP inspector
npm run inspector
License
MIT
Comments
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.