Skip to main content
Glama

livechat-mcp

Ein Model Context Protocol (MCP) Server, der es dir ermöglicht, eine kontinuierliche Sprachkonversation mit deinem KI-Coding-Assistenten zu führen. Du sprichst, deine Sprache wird lokal mit Whisper transkribiert und jede Äußerung wird an den Assistenten übermittelt, als hättest du sie getippt. Kein Tab-Wechsel, kein Kopieren/Einfügen, keine Batch-Aufnahme.

Funktioniert mit jedem MCP-Host. Erstklassige Unterstützung für:

  • Claude Code

  • Codex CLI

  • Gemini CLI

Anforderungen

  • macOS, Linux oder Windows (nativ via PowerShell oder unter WSL2 / Git Bash).

  • Python 3.10+

  • Ein installierter MCP-Host (Claude Code, Codex, Gemini, etc.)

  • Ein funktionierendes Mikrofon

  • ~500 MB Speicherplatz für den Whisper-Modell-Cache + Abhängigkeiten

  • uv für das Projektmanagement (empfohlen)

Schnellinstallation (empfohlen)

Von einem Klon des Repositories aus:

# macOS / Linux / Git Bash on Windows
./install.sh
# Native Windows PowerShell
.\install.ps1

Der Bootstrap erkennt das Betriebssystem, installiert bei Bedarf Portaudio (brew / apt / dnf / pacman / zypper — Windows-Wheels enthalten es bereits), installiert uv, falls es fehlt, führt uv sync aus, legt den Wizard in ~/.local/bin ab und startet den interaktiven Einrichtungsassistenten.

Windows: Die native Sperrung verwendet msvcrt und die Übernahmesignalisierung ist dateibasiert, daher gibt es keine fcntl-Abhängigkeit. Der interaktive Wizard ist ein Bash-Skript — install.ps1 ruft es über Git Bash auf, dessen Installation via winget angeboten wird, falls es fehlt.

Manuelle Einrichtung

Wenn du die Installation lieber Schritt für Schritt durchführen möchtest, hier ist, was install.sh tut:

1. Portaudio installieren

sounddevice benötigt Portaudio.

  • macOS: brew install portaudio

  • Debian/Ubuntu: sudo apt-get install libportaudio2 portaudio19-dev

  • Fedora/RHEL: sudo dnf install portaudio portaudio-devel

  • Arch: sudo pacman -S portaudio

2. uv installieren, falls nicht vorhanden

curl -LsSf https://astral.sh/uv/install.sh | sh

3. Klonen und Abhängigkeiten installieren

cd livechat-mcp
uv sync

Dies erstellt .venv/ und installiert mcp, faster-whisper, sounddevice, silero-vad, torch usw.

4. Einrichtungsassistent ausführen

install -m 0755 bin/livechat-mcp ~/.local/bin/livechat-mcp
livechat-mcp setup

Der Assistent wird:

  1. Fragen, für welche Assistenten die Installation erfolgen soll (Claude Code / Codex / Gemini, jede Kombination).

  2. Die Slash-Befehle /livechat und /endlivechat in Hosts kopieren, die benutzerdefinierte Slash-Befehle unterstützen. Für Codex installiert er sowohl Legacy-Prompt-Dateien als auch einen livechat-Skill, da aktuelle Codex CLI-Releases keine benutzerdefinierten Prompts als /livechat bereitstellen.

  3. Den MCP-Server in der Konfigurationsdatei jedes Hosts registrieren.

  4. Dich durch die anpassbaren Umgebungsvariablen führen (Stille-Schwellenwert, Whisper-Modell usw.) — drücke Enter, um die Standardwerte beizubehalten.

Stelle sicher, dass ~/.local/bin in deinem PATH enthalten ist (dies ist bereits der Fall, wenn du den offiziellen uv-Installer verwendet hast).

Wenn du die Dinge lieber manuell konfigurieren möchtest, findest du die manuellen Schritte für jeden Host unten.

5. Mikrofonberechtigung erteilen

  • macOS: Wenn der Server zum ersten Mal versucht, Audio aufzunehmen, wird macOS deine Terminal-App (Terminal, iTerm, Ghostty, Warp usw.) nach dem Mikrofonzugriff fragen. Wenn du die Aufforderung verpasst, aktiviere sie manuell:

    Systemeinstellungen → Datenschutz & Sicherheit → Mikrofon → für dein Terminal aktivieren

    Wenn du dies überspringst, liefert die Audioaufnahme lautlos Stille und nichts wird transkribiert.

  • Windows: Einstellungen → Datenschutz & Sicherheit → Mikrofon → Desktop-Apps den Zugriff auf das Mikrofon erlauben (und sicherstellen, dass dein Terminal berechtigt ist).

  • Linux: Normalerweise keine Aufforderung — stelle nur sicher, dass dein Benutzer den richtigen ALSA- / PulseAudio- / Pipewire-Zugriff hat (normalerweise die audio-Gruppe).

6. Whisper-Modell vorab herunterladen (optional)

Der erste Durchlauf lädt base.en (~150 MB) herunter. Du kannst es vorab laden:

uv run python -c "from faster_whisper import WhisperModel; WhisperModel('base.en', device='cpu', compute_type='int8')"

Manuelle Installation (überspringen, wenn du livechat-mcp setup verwendet hast)

Claude Code

Kopiere die Slash-Befehle:

mkdir -p ~/.claude/commands
cp commands/livechat.md ~/.claude/commands/
cp commands/endlivechat.md ~/.claude/commands/

Registriere den MCP-Server:

claude mcp add livechat -- uv --directory "$(pwd)" run livechat-mcp

Oder bearbeite ~/.claude.json direkt:

{
  "mcpServers": {
    "livechat": {
      "command": "uv",
      "args": ["--directory", "/absolute/path/to/livechat-mcp", "run", "livechat-mcp"]
    }
  }
}

Codex CLI

Installiere den Codex-Skill und die Legacy-Prompt-Dateien:

mkdir -p ~/.codex/skills/livechat
cp skills/livechat/SKILL.md ~/.codex/skills/livechat/
mkdir -p ~/.codex/prompts
cp commands/livechat.md ~/.codex/prompts/
cp commands/endlivechat.md ~/.codex/prompts/

Registriere den MCP-Server in ~/.codex/config.toml:

[mcp_servers.livechat]
command = "uv"
args = ["--directory", "/absolute/path/to/livechat-mcp", "run", "livechat-mcp"]

Gemini CLI

Gemini verwendet TOML für benutzerdefinierte Befehle. Der Wizard generiert diese für dich; um es manuell zu tun, siehe commands/gemini/livechat.toml.template (erstellt durch einmaliges Ausführen von livechat-mcp setup).

Registriere den MCP-Server in ~/.gemini/settings.json:

{
  "mcpServers": {
    "livechat": {
      "command": "uv",
      "args": ["--directory", "/absolute/path/to/livechat-mcp", "run", "livechat-mcp"]
    }
  }
}

Verwendung

Öffne das CLI deines Assistenten in einem beliebigen Terminal:

claude    # or: codex    or: gemini

Dann im Prompt des Assistenten:

/livechat            # Claude Code, Gemini CLI
use livechat         # Codex CLI

Codex-Neustart erforderlich. Codex lädt Skills und MCP-Server nur beim Start. Wenn du den Wizard bei geöffnetem Codex ausgeführt hast, beende ihn und starte ihn neu, bevor du use livechat verwendest.

Codex 0.128.0 unterstützt keine benutzerdefinierten /livechat Slash-Befehle; / ist derzeit für die eingebauten Befehle von Codex reserviert. Die Einrichtung installiert stattdessen einen auffindbaren livechat-Skill, sodass du use livechat eingeben oder /skills öffnen und livechat auswählen kannst.

Der Assistent ruft get_voice_input auf und beginnt zuzuhören. Sprich normal. Wenn du für ca. 1,5 Sekunden pausierst, wird deine Äußerung abgeschlossen, transkribiert und als Prompt gesendet. Der Assistent antwortet und hört dann sofort auf die nächste Äußerung.

Während der Assistent eine Antwort generiert, ist das Mikrofon weiterhin aktiv — alles, was du während dieser Zeit sagst, wird in die Warteschlange gestellt und beim nächsten get_voice_input-Aufruf auf einmal übermittelt.

Eine Sitzung beenden

Drei Möglichkeiten:

  1. /endlivechat — am saubersten, wird vom Prompt des Assistenten aus ausgeführt. (Du musst zuerst die aktuelle Antwort unterbrechen, falls sie gerade generiert wird.)

  2. Wake-Phrase — sage terminate voice session now. Die Transkription löst das Herunterfahren aus. Die Phrase ist absichtlich umständlich gewählt, um Kollisionen mit echtem Review-Inhalt zu vermeiden. Konfigurierbar über LIVECHAT_END_PHRASE.

  3. Strg+C — beendet den MCP-Server. Der Assistent sieht beim nächsten Aufruf einen Tool-Fehler und beendet die Schleife.

Konfiguration

Alle anpassbaren Werte befinden sich in livechat_mcp/config.py und können über Umgebungsvariablen überschrieben werden:

Variable

Standardwert

Hinweise

LIVECHAT_WHISPER_MODEL

base.en

Nur Englisch: tiny.en, base.en, small.en, medium.en. Mehrsprachig (ohne .en): tiny, base, small, medium

LIVECHAT_WHISPER_LANGUAGE

en

Sprachcode (en, pt, es, …) oder auto zur Erkennung pro Äußerung. auto erfordert ein mehrsprachiges Modell

LIVECHAT_WHISPER_DEVICE

auto

cpu, cuda, auto

LIVECHAT_WHISPER_COMPUTE

int8

int8 (CPU), float16 (GPU)

LIVECHAT_SILENCE_SEC

1.5

Stille nach dem Sprechen, um eine Äußerung zu beenden

LIVECHAT_VAD_THRESHOLD

0.5

Silero VAD Sprachwahrscheinlichkeitsschwellenwert

LIVECHAT_MIN_UTTERANCE_SEC

0.4

Minimale Äußerungslänge (filtert Husten)

LIVECHAT_MAX_UTTERANCE_SEC

120

Erzwingt das Abschneiden zu langer Äußerungen

LIVECHAT_LONG_POLL_SEC

300

Wie lange get_voice_input blockiert, bevor __NO_INPUT__ erfolgt

LIVECHAT_END_PHRASE

terminate voice session now

Gesprochene Phrase zum Beenden der Sitzung

LIVECHAT_DEBUG

nicht gesetzt

Auf 1 setzen für VAD/Segmentierungs-Debug-Logs nach stderr

Der einfache Weg, diese zu setzen, ist livechat-mcp set KEY VALUE — dies bearbeitet den env-Block in jeder gefundenen Host-Konfiguration (Claude / Codex / Gemini).

livechat-mcp show           # print current env block(s)
livechat-mcp set LIVECHAT_SILENCE_SEC 1.5
livechat-mcp unset LIVECHAT_DEBUG

Starte dein Assistenten-CLI nach jeder Änderung neu — MCP-Umgebungsvariablen werden vom Server beim Start gelesen.

Um es manuell zu tun, bearbeite das env-Feld des Livechat-MCP-Eintrags in der Konfiguration jedes Hosts. Beispiel für Claude Code:

{
  "mcpServers": {
    "livechat": {
      "command": "uv",
      "args": ["--directory", "/abs/path", "run", "livechat-mcp"],
      "env": {
        "LIVECHAT_WHISPER_MODEL": "small.en",
        "LIVECHAT_DEBUG": "1"
      }
    }
  }
}

Fehlerbehebung

Nichts passiert, wenn ich spreche. Überprüfe (in dieser Reihenfolge): Mikrofonberechtigung für deine Terminal-App, Mikrofon-Eingangspegel (Systemeinstellungen → Ton), setze LIVECHAT_DEBUG=1 und beobachte stderr auf VAD-Ereignisse, senke LIVECHAT_VAD_THRESHOLD auf 0.3.

Transkriptionen sind ungenau. Modell aktualisieren: LIVECHAT_WHISPER_MODEL=small.en oder medium.en. medium.en ist auf der CPU spürbar langsamer (immer noch nahezu in Echtzeit), aber viel besser für technisches Vokabular.

Äußerung endet zu schnell / zu langsam. Optimiere LIVECHAT_SILENCE_SEC (oder führe livechat-mcp set LIVECHAT_SILENCE_SEC 1.5 aus). 1.0–4.5 ist der nützliche Bereich — niedriger fühlt sich reaktionsschneller an, riskiert aber das Abschneiden bei Pausen mitten im Gedanken.

uv nicht gefunden. Installiere entweder uv (empfohlen) oder ändere den MCP-Konfigurationsbefehl command in einen direkten Aufruf von python -m livechat_mcp.server aus einem aktivierten venv heraus.

Der Server startet, aber der Assistent ruft das Tool nie auf. Stelle sicher, dass /livechat aufgerufen wurde. Ohne den Slash-Befehl hat der Assistent keine Anweisung, in die Schleife einzutreten.

Server-Logs landen als Müll in der UI des Assistenten / unterbrechen das Protokoll. Dies sollte nicht passieren — alle Server-Logs gehen an stderr. Wenn du es siehst, melde einen Bug. Stelle sicher, dass du keine print(...)-Anweisungen ohne file=sys.stderr hinzugefügt hast.

portaudio-Fehler beim Start. Installiere es: brew install portaudio. Wenn es installiert ist und immer noch fehlschlägt, versuche brew reinstall portaudio und installiere sounddevice neu: uv sync --reinstall.

Funktionsweise (Kurzfassung)

[mic] → [Silero VAD] → [Whisper] → [queue] ← [get_voice_input tool] ← [Assistant]
   ↑________background thread, always running________↑

Die Audio-Pipeline ist vom MCP-Tool entkoppelt, sodass das Mikrofon immer aktiv ist, während der Server läuft. Äußerungen, die gesprochen werden, während der Assistent eine Antwort generiert, werden in die Warteschlange gestellt und beim nächsten Tool-Aufruf übermittelt.

Lizenz

MIT.

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/brunocramos/livechat-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server