vox

vox

A native macOS MCP server for voice input and output, allowing Claude to listen and speak with offline speech recognition and TTS.

Category
Visit Server

README

vox

A native macOS MCP server that gives Claude a voice.

Built in Swift. No Node.js. No Python. No Electron. Just a single binary.

{
  "mcpServers": {
    "vox": {
      "command": "/path/to/vox"
    }
  }
}

Then just say: listen — and Claude hears you.


Tools

Tool What it does
listen Activates the mic, waits for you to speak, returns transcript + detected language when silence is detected
speak Speaks text aloud — ElevenLabs TTS with automatic fallback to macOS system voice

Why Swift + macOS only

  • AVFoundation — native mic capture, zero overhead
  • SFSpeechRecognizer — Apple on-device speech recognition, works offline, 50+ languages
  • NLLanguageRecognizer — automatic language detection per utterance
  • AVSpeechSynthesizer — built-in TTS fallback, no API key needed
  • Single ~200KB binary. Zero npm install. Zero Python venv.

Requirements

  • macOS 13+
  • Microphone set as default in System Settings → Sound → Input
  • Microphone + Speech Recognition permission for your terminal app
  • Optional: ELEVENLABS_API_KEY in ~/.claude/.env for high-quality multilingual TTS

Install

Option 1: Prompt for Claude Code

Copy and paste this into Claude Code:

Install vox (native macOS voice input/output MCP server):

1. Download the code-signed binary to ~/vox:
   curl -L https://github.com/boska/vox/releases/download/v1.1.0/vox-1.1.0-darwin-arm64 -o ~/vox && chmod +x ~/vox

2. Add to ~/.claude.json in the mcpServers section:
   {
     "mcpServers": {
       "vox": {
         "command": "/Users/$(whoami)/vox"
       }
     }
   }

3. Restart Claude Code

4. Test it by saying: listen

Claude will handle the download, configuration, and restart.

Option 2: Manual Install (Pre-built Binary)

curl -L https://github.com/boska/vox/releases/download/v1.1.0/vox-1.1.0-darwin-arm64 -o ~/vox && chmod +x ~/vox

Then add to ~/.claude.json:

{
  "mcpServers": {
    "vox": {
      "command": "/Users/$(whoami)/vox"
    }
  }
}

Restart Claude Code.

Option 3: Build from Source

git clone https://github.com/boska/vox
cd vox
swift build -c release --product vox

Add to ~/.claude.json:

{
  "mcpServers": {
    "vox": {
      "command": "/path/to/vox/.build/release/vox"
    }
  }
}

Restart Claude Code.

Voice

Default TTS voice is Hana via ElevenLabs (eleven_multilingual_v2). Supports Chinese, English, Czech, Vietnamese, and 20+ languages in the same voice. Without an ElevenLabs key, falls back to macOS system voice automatically.

How it works

Claude Code
    ↓ JSON-RPC 2.0 over stdio
  vox binary
    ↓                        ↑
AVAudioEngine        AVSpeechSynthesizer
SFSpeechRecognizer       ElevenLabs API
NLLanguageRecognizer

No ports. No sockets. No daemon. Just stdin/stdout.

Troubleshooting

"No speech detected" — speak within ~1s of calling listen, VAD cuts off after 0.8s silence.

No default input device — Mac mini has no built-in mic. Connect USB/Bluetooth mic or iPhone via Continuity Camera, set default in System Settings → Sound → Input.

ElevenLabs silent — add ELEVENLABS_API_KEY=sk-... to ~/.claude/.env, or leave it out to use system voice.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured