Vocateca, gemeinsam mit LLMs
Vocateca lässt sich auf zwei Arten mit einem KI-Assistenten verbinden: über ein Kommandozeilen-Interface, das du direkt scripten kannst, und über einen MCP-Server, mit dem Assistenten wie Claude dieselben Befehle als Tools aufrufen. Beide greifen auf dieselben lokalen Daten zu — deine Bibliothek muss deinen Mac nicht verlassen, um für ein LLM nützlich zu sein.
Die CLI
vocateca-cli ist dieselbe Headless-Oberfläche, die auch die App selbst zum Abonnieren, Transkribieren und Suchen nutzt — jeder Befehl unterstützt --json, die Ausgabe ist also exakt genug, um sie zu scripten oder einem Modell zu übergeben.
Die CLI ist Open Source — lies den Code oder baue sie dir selbst. github.com/madevmuc/vocateca-open-core
Einen Podcast-Feed abonnieren
$ vocateca-cli sources add-podcast https://feeds.example.com/interest-rates-weekly.xml \
--title "Interest Rates Weekly" --json
{
"action" : "add-podcast",
"added" : true,
"ok" : true,
"polled" : false,
"slug" : "interest-rates-weekly",
"title" : "Interest Rates Weekly"
}Nachsehen, was die Warteschlange gerade tut
$ vocateca-cli status --json
{
"by_status" : {
"deferred" : 12,
"deleted" : 0,
"done" : 486,
"downloaded" : 0,
"downloading" : 1,
"failed" : 2,
"pending" : 3,
"skipped" : 0,
"stale" : 0,
"transcribing" : 1
},
"in_flight" : 2,
"paused_reason" : "",
"queue_depth" : 5,
"queue_paused" : false
}Alles durchsuchen, was du transkribiert hast
$ vocateca-cli library search "interest rates" --limit 2 --json
[
{
"guid" : "local:9f3a1c02",
"score" : 0.94,
"show_slug" : "interest-rates-weekly",
"show_title" : "Interest Rates Weekly",
"title" : "The Fed's next move",
"transcript_path" : "/Users/you/Library/Application Support/Vocateca/transcripts/interest-rates-weekly/9f3a1c02.md"
},
{
"guid" : "local:6b71ffa9",
"score" : 0.81,
"show_slug" : "market-signals",
"show_title" : "Market Signals",
"title" : "Why the yield curve matters",
"transcript_path" : "/Users/you/Library/Application Support/Vocateca/transcripts/market-signals/6b71ffa9.md"
}
]Ein Transkript als SRT exportieren
$ vocateca-cli library export local:9f3a1c02 --format srt --out ~/Desktop/ --json
{
"action" : "library-export",
"dest_path" : "/Users/you/Desktop/9f3a1c02.srt",
"format" : "srt",
"guid" : "local:9f3a1c02",
"ok" : true,
"source_path" : "/Users/you/Library/Application Support/Vocateca/transcripts/interest-rates-weekly/9f3a1c02.srt"
}Der MCP-Server
MCP (Model Context Protocol) ist ein Standard, mit dem KI-Assistenten wie Claude Tools direkt auf deinem Rechner aufrufen können — statt Befehle zu kopieren und einzufügen, führt der Assistent sie selbst aus und liest das Ergebnis.
vocateca-cli mcp macht jeden CLI-Befehl von oben als MCP-Tool verfügbar, generiert aus demselben Befehlskatalog, damit beide Oberflächen nie auseinanderlaufen. Eine Auswahl der nützlichsten:
statusWarteschlangentiefe, laufende Jobs, Anzahl je Status, Pause-Zustand.showsAbonnierte Shows mit Anzahl offener/fertiger/fehlgeschlagener Episoden.episodesEpisoden einer einzelnen Show.failedFehlgeschlagene Episoden über alle Shows hinweg.statsDurchsatz, Erfolgsquote, Echtzeitfaktor über N Tage.library_searchScore-basierte Suche über Transkript-Titel und -Texte.library_exportEin Transkript exportieren (md, txt, html, srt, okf).sources_add-podcastEinen RSS-/Podcast-Feed abonnieren. (schreibend)transcribeEinen einzelnen Link importieren und optional bis zum Ende durchlaufen lassen. (schreibend)queue_runEinen Headless-Durchlauf starten: herunterladen, transkribieren, in die Bibliothek schreiben. (schreibend)retry_allAlle fehlgeschlagenen Episoden neu einreihen, optional für eine Show. (schreibend)notifications_listIn-App-Benachrichtigungen.Insgesamt 46 Tools — eines pro CLI-Befehl, auch die schreibenden (sources_add-podcast, queue_run, retry, …). Jedes schreibende Tool akzeptiert ein optionales dry_run, um eine Änderung vorab zu prüfen.
Mit Claude Desktop oder Claude Code verbinden
Trage in der mcpServers-Konfiguration den Pfad zur gebauten vocateca-cli-Binary und den Unterbefehl mcp ein:
{
"mcpServers": {
"vocateca": {
"command": "/absolute/path/to/vocateca-cli",
"args": ["mcp"]
}
}
}Beispiele aus der Praxis
Was tatsächlich passiert, wenn du einen Assistenten Folgendes fragst:
„Was braucht gerade meine Aufmerksamkeit?“
Claude ruft die Tools status und failed auf. Beide liefern kleine JSON-Objekte zurück — Warteschlangentiefe, Anzahl je Status, eine Liste fehlgeschlagener GUIDs samt Fehlertext. Claude liest dieses JSON und antwortet in normaler Sprache. Sonst wird auf deinem Mac nichts angerührt oder irgendwohin geschickt.
„Bring mich auf den neuesten Stand“
Claude ruft shows auf, dann episodes für die gemeinte Show, gefiltert auf --status done. Es bekommt Titel, Veröffentlichungsdatum und Wortanzahl zurück — keine vollständigen Transkripte — und fasst die Liste für dich zusammen. Fragst du danach, was in einer bestimmten Episode gesagt wurde, ruft Claude erst dann library_export auf oder liest die verlinkte Datei — und erst dann wird der Transkripttext Teil des Gesprächs.
„Finde alles, was ich zu Leitzinsen gesagt habe“
Claude ruft library_search auf. Die Antwort ist eine Rangliste — Show, Titel, ein Relevanz-Score und ein lokaler Dateipfad — nicht der Transkriptinhalt. Claude kann dir sagen, welche Episoden passen und wo sie liegen. Um zu sehen, was tatsächlich drinsteht, muss es die Datei explizit exportieren oder öffnen — das kannst du live mitverfolgen.
Was lokal bleibt: deine Audiodateien, deine Transkripte, deine Watchlist und alles in state.sqlite — Vocateca lädt nichts davon hoch. Was beim Modell ankommt: nur das JSON, das ein Tool-Aufruf zurückgibt — genau das, was auf deinem Terminal stünde, würdest du denselben Befehl selbst ausführen.