A high-performance Model Context Protocol (MCP) server providing local speech-to-text transcription using whisper.cpp, optimized for Apple Silicon.
20
stars
5
commits
TypeScript
primary language
Jun 3, 2025
updated
A high-performance Model Context Protocol (MCP) server providing local speech-to-text transcription using whisper.cpp, optimized for Apple Silicon.
brew install whisper-cpp)brew install ffmpeg) - automatically handles MP3, M4A, FLAC, OGG, etc.git clone https://github.com/your-username/local-stt-mcp.git
cd local-stt-mcp/mcp-server
npm install
npm run build
# Download whisper models
npm run setup:models
# For speaker diarization, set HuggingFace token
export HF_TOKEN="your_token_here" # Get free token from huggingface.co
Speaker Diarization Note: Requires HuggingFace account and accepting pyannote/speaker-diarization-3.1 license.
Add to your MCP client configuration:
{
"mcpServers": {
"whisper-mcp": {
"command": "node",
"args": ["path/to/local-stt-mcp/mcp-server/dist/index.js"]
}
}
}
| Tool | Description |
|---|---|
transcribe | Basic audio transcription with automatic format conversion |
transcribe_long | Long audio file processing with chunking and format conversion |
transcribe_with_speakers | Speaker diarization and transcription with format support |
list_models | Show available whisper models |
health_check | System diagnostics |
version | Server version information |
Apple Silicon Benchmarks:
See /benchmarks/ for detailed performance comparisons.
mcp-server/
├── src/ # TypeScript source code
│ ├── tools/ # MCP tool implementations
│ ├── whisper/ # whisper.cpp integration
│ ├── utils/ # Speaker diarization & utilities
│ └── types/ # Type definitions
├── dist/ # Compiled JavaScript
└── python/ # Python dependencies
# Build
npm run build
# Development mode (watch)
npm run dev
# Linting & formatting
npm run lint
npm run format
# Type checking
npm run type-check
MIT License - see LICENSE file for details.
5 commits
TypeScript
92.5%
JavaScript
7.5%
A high-performance Model Context Protocol (MCP) server providing local speech-to-text transcription using whisper.cpp, optimized for Apple Silicon.
20
stars
5
commits
TypeScript
primary language
Jun 3, 2025
updated
A high-performance Model Context Protocol (MCP) server providing local speech-to-text transcription using whisper.cpp, optimized for Apple Silicon.
brew install whisper-cpp)brew install ffmpeg) - automatically handles MP3, M4A, FLAC, OGG, etc.git clone https://github.com/your-username/local-stt-mcp.git
cd local-stt-mcp/mcp-server
npm install
npm run build
# Download whisper models
npm run setup:models
# For speaker diarization, set HuggingFace token
export HF_TOKEN="your_token_here" # Get free token from huggingface.co
Speaker Diarization Note: Requires HuggingFace account and accepting pyannote/speaker-diarization-3.1 license.
Add to your MCP client configuration:
{
"mcpServers": {
"whisper-mcp": {
"command": "node",
"args": ["path/to/local-stt-mcp/mcp-server/dist/index.js"]
}
}
}
| Tool | Description |
|---|---|
transcribe | Basic audio transcription with automatic format conversion |
transcribe_long | Long audio file processing with chunking and format conversion |
transcribe_with_speakers | Speaker diarization and transcription with format support |
list_models | Show available whisper models |
health_check | System diagnostics |
version | Server version information |
Apple Silicon Benchmarks:
See /benchmarks/ for detailed performance comparisons.
mcp-server/
├── src/ # TypeScript source code
│ ├── tools/ # MCP tool implementations
│ ├── whisper/ # whisper.cpp integration
│ ├── utils/ # Speaker diarization & utilities
│ └── types/ # Type definitions
├── dist/ # Compiled JavaScript
└── python/ # Python dependencies
# Build
npm run build
# Development mode (watch)
npm run dev
# Linting & formatting
npm run lint
npm run format
# Type checking
npm run type-check
MIT License - see LICENSE file for details.
5 commits
TypeScript
92.5%
JavaScript
7.5%