MLX Whisper MCP Server logo

MLX Whisper MCP Server

by kachiO

A simple Model Context Protocol (MCP) server that provides audio transcription capabilities using MLX Whisper on Apple Silicon Macs. It allows transcribing audio files, base64-encoded data, and YouTube videos.

View on GitHub

Last updated: N/A

What is MLX Whisper MCP Server?

This server is a Model Context Protocol (MCP) server that leverages MLX Whisper to provide audio transcription services. It's designed to be used with clients like Claude Desktop, enabling them to transcribe audio files, base64-encoded audio data, and YouTube videos on Apple Silicon Macs.

How to use MLX Whisper MCP Server?

To use this server, you need Python 3.12+, an Apple Silicon Mac, and uv installed. Run uv run mlx_whisper_mcp.py to start the server. Then, configure your Claude Desktop application with the server's command and arguments as described in the README. You can then use Claude Desktop with prompts to transcribe files, audio data, or YouTube videos.

Key features of MLX Whisper MCP Server

  • Transcribes audio files directly from disk

  • Transcribes audio from base64-encoded data

  • Downloads and transcribes YouTube videos

  • Uses the high-quality mlx-community/whisper-large-v3-turbo model

  • Self-contained script with automatic dependency management via uv run

Use cases of MLX Whisper MCP Server

  • Transcribing local audio recordings

  • Translating audio from one language to another

  • Extracting text from YouTube videos

  • Integrating audio transcription into Claude Desktop workflows

FAQ from MLX Whisper MCP Server

What if I get an import error for MLX Whisper?

Make sure you're running on an Apple Silicon Mac.

Why am I getting a 'File Not Found' error?

Ensure you're using absolute paths when referencing audio files.

What can I do about memory issues with long audio files?

Very long audio files may cause memory pressure with the large model.

Why are YouTube downloads failing?

Some videos may be restricted or require authentication.

What do I do if I see 'not valid JSON' errors in the logs?

Make sure server logging output is properly directed to stderr.

What model does this use?

It uses the mlx-community/whisper-large-v3-turbo model.