Skip to main content
Glama

kbk-mcp

MCP-Server für KaboomKartell — bringt das KBK-Radio in jede MCP-fähige KI (Claude, ChatGPT, Perplexity …). Bind die URL einmal als Connector ein, dann reicht „guck mal auf KBK was läuft".

Öffentlicher Endpoint (nach Deploy): https://mcp.kaboomkartell.com/mcp

Tools (13 read-only + vote_track write + 1 App-Tool)

Tool

Was

get_now_playing

Live-Track je Channel (phonk/hardtek) + nächster Track

list_channels

Echte Struktur: 2 Channels, 4 Genres, Mapping, Akzentfarben

get_crowd_control

Die 5 Vote-Kandidaten + Live-Tally (read-only)

get_schedule / get_next_drop

Timetable + nächster Drop

search_tracks / get_track

Library-Suche + Track-Details

list_playlists / get_playlist

Playlists + ihre Tracks

get_stats

Live-Zahlen (wolves online, tracks spun, BPM, aura)

get_twitch_status

Twitch-Live-Status

get_live_alert

Zeitkritischer Live-Trigger (Twitch on air / nächstes Event) — einziger Anlass für eine proaktive Erinnerung

get_multiverse

Kanon des Song-Multiversums als Möglichkeitsraum (Kosmologie + Regeln + versiegelte Zonen) — proxied GET /api/kbk/canon der Website

vote_track

(write) Vote fürs nächste Lied (Crowd Control) mit Agenten-Token; ohne Token → Ein-Klick-Authorize-Link statt Fehler

play_channel

Öffnet das interaktive Player-Widget (MCP-App) und spielt den Live-Stream (Klick auf Play)

Related MCP server: beatport-mcp-server

Architektur

  • src/kbk-client.ts — einzige Kopplungsschicht zu den öffentlichen KBK-APIs.

  • src/tools.ts — Registry der 13 read-only Tools (inkl. get_multiverse) + vote_track (write).

  • src/player-app.tsplay_channel + UI-Resource (MCP-App).

  • src/server.tscreateServer() (transport-agnostisch).

  • src/main.tsstdio-Entry (lokal/Claude Desktop).

  • src/http.tsStreamable HTTP-Entry (remote, /mcp + /health, Rate-Limit).

  • src/ui/ — Player-Widget (vite → dist/ui/index.html, Single-File).

Daten-URLs: Tools rufen KBK intern (KBK_BASE_URL, auf dem Server 127.0.0.1:8081); Stream-/Cover-URLs werden auf die öffentliche Domain (KBK_PUBLIC_URL) umgeschrieben, damit der Browser sie laden kann.

Entwicklung

npm install
npm run build        # tsc (server) + vite (player-ui)
npm run smoke        # stdio-Test gegen Live-API (15 Tools + Player-Resource)
npm run smoke:http   # HTTP-Test (Streamable HTTP)

Lokal in Claude Desktop (stdio)

%APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "kbk": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\…\\kbk-mcp\\dist\\main.js"]
    }
  }
}

Öffentlich nutzen (Remote-Connector)

Sobald deployt, fügt jeder Nutzer den Connector einmal in seiner KI hinzu:

  • Claude (Free/Pro/Max/Team/Enterprise): Settings → Connectors → Custom → URL https://mcp.kaboomkartell.com/mcp.

  • ChatGPT (Pro + Developer Mode), Perplexity (Pro+): analog.

Danach: „Was läuft gerade auf KaboomKartell?" oder „Mach den KBK-Player auf."

Deploy (mcp.kaboomkartell.com)

Ein Linux-Server, Port 8086, hinter Caddy. Artefakte in deploy/:

  • kbk-mcp.service/etc/systemd/system/ (Port 8086, KBK_BASE_URL intern).

  • Caddyfile-snippet.txt → Block in /etc/caddy/Caddyfile + systemctl reload caddy.

  • deploy.sh → pull + npm ci + npm run build + restart + health-check.

Erst-Setup (einmalig, als root): Repo nach /opt/kbk-mcp/repo klonen, systemd-Unit + Caddy-Block installieren, systemctl enable --now kbk-mcp. Voraussetzung: die MCP-Domain ist per DNS propagiert. Updates danach via deploy.sh.

Roadmap

  • Stufe 3: Voting mit OAuth (Crowd-Control aktiv mitsteuern), vote_next_track.

  • Härtetest: Ton beim Weiterchatten — Claude und ChatGPT.

Tech

@modelcontextprotocol/sdk · @modelcontextprotocol/ext-apps · express 5 · zod 4 · vite + vite-plugin-singlefile · TypeScript (ESM).

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/FlorianWinkler1248/kbk-mcp'

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