Skip to main content
Glama
yunq

xiaozhidog-mcp-music

by yunq

Kostenloser Musik-MCP-Server

Dies ist ein kostenloser Musik-MCP-Server (Model Context Protocol), der speziell für den Xiaozhi AI-Lautsprecher entwickelt wurde und Funktionen wie Musiksuche und Wiedergabesteuerung bietet.

Funktionen

  • 🎵 Musiksuche: Unterstützt die Suche nach Songtiteln und Künstlernamen

  • ▶️ Wiedergabesteuerung: Abspielen, Pause, Stopp, Vorheriger Titel, Nächster Titel

  • 🔊 Lautstärkeregelung: Anpassung der Wiedergabelautstärke (0-100)

  • 📝 Wiedergabeliste: Hinzufügen, Anzeigen und Leeren der Wiedergabeliste

  • 🆓 Völlig kostenlos: Basiert auf einer Open-Source-Lizenz, keine Kosten

  • 🔌 Standard-Schnittstelle: Befolgt den MCP-Protokollstandard

Related MCP server: mcp_music_server

Installation und Konfiguration

1. Umgebungsvorbereitung

Stellen Sie sicher, dass Python 3.8+ installiert ist:

python3 --version

2. Abhängigkeiten installieren

cd /Users/a1234/Documents/music
pip3 install -r requirements.txt

3. Server testen

python3 music_mcp_server.py

4. Xiaozhi AI-Konfiguration

Schritt 1: MCP-Zugangspunkt abrufen

  1. Melden Sie sich im xiaozhi.me Dashboard an

  2. Gehen Sie zur Konfigurationsseite für die Rollen des Agenten

  3. Suchen Sie unten rechts den exklusiven MCP-Zugangspunkt für diesen Agenten

Schritt 2: MCP-Server konfigurieren

Fügen Sie die folgende Konfiguration im Xiaozhi AI-Dashboard hinzu:

{
  "name": "免费音乐服务器",
  "command": "python3",
  "args": ["/Users/a1234/Documents/music/music_mcp_server.py"],
  "transport": "stdio"
}

Verwendung

Nach der Konfiguration können Sie per Sprache oder Text mit dem Xiaozhi AI interagieren:

Musiksuche

  • "Suche Lieder von Jay Chou"

  • "Finde etwas Popmusik"

  • "Suche nach Qing Hua Ci"

Wiedergabesteuerung

  • "Spiele Qing Hua Ci"

  • "Musik pausieren"

  • "Wiedergabe fortsetzen"

  • "Musik stoppen"

  • "Nächstes Lied"

  • "Vorheriges Lied"

Lautstärkeregelung

  • "Lautstärke auf 80"

  • "Etwas leiser"

  • "Lautstärke auf 50 setzen"

Wiedergabelistenverwaltung

  • "Wiedergabeliste anzeigen"

  • "Dieses Lied zur Wiedergabeliste hinzufügen"

  • "Wiedergabeliste leeren"

Verfügbare Werkzeuge

Werkzeugname

Funktionsbeschreibung

Parameter

search_music

Musik suchen

query (Suchbegriff), limit (Anzahl der Ergebnisse)

play_music

Bestimmtes Lied abspielen

song_id (Song-ID), song_name, artist

pause_music

Wiedergabe pausieren

Keine

resume_music

Wiedergabe fortsetzen

Keine

stop_music

Wiedergabe stoppen

Keine

next_song

Nächstes Lied

Keine

previous_song

Vorheriges Lied

Keine

set_volume

Lautstärke einstellen

volume (0-100)

add_to_playlist

Zur Wiedergabeliste hinzufügen

song_id, song_name, artist

get_playlist

Wiedergabeliste abrufen

Keine

clear_playlist

Wiedergabeliste leeren

Keine

Technische Architektur

  • Protokoll: MCP (Model Context Protocol)

  • Übertragung: stdio (Standard Input/Output)

  • Sprache: Python 3.8+

  • Abhängigkeiten: mcp, httpx, pydantic

Erweiterte Entwicklung

Anbindung an echte Musik-APIs

Die aktuelle Version verwendet simulierte Daten. Sie können die Funktion search_music_api ändern, um echte kostenlose Musik-APIs anzubinden:

async def search_music_api(query: str, limit: int = 10) -> List[Dict[str, Any]]:
    async with httpx.AsyncClient() as client:
        # 接入您选择的免费音乐API
        response = await client.get(
            "https://api.example.com/search",
            params={"q": query, "limit": limit}
        )
        data = response.json()
        return parse_search_results(data)

Neue Funktionen hinzufügen

  1. Fügen Sie in handle_list_tools() eine neue Werkzeugdefinition hinzu

  2. Implementieren Sie die Werkzeuglogik in handle_call_tool()

  3. Aktualisieren Sie Konfigurationsdateien und Dokumentation

Fehlerbehebung

Häufige Fragen

F: Serverstart fehlgeschlagen A: Überprüfen Sie, ob die Python-Version und die Abhängigkeitspakete korrekt installiert sind

F: Xiaozhi AI kann keine Verbindung herstellen A: Bestätigen Sie, dass der Dateipfad korrekt ist, und überprüfen Sie die Konfiguration des MCP-Zugangspunkts

F: Keine Suchergebnisse A: Aktuell werden simulierte Daten verwendet; eine echte Musik-API kann angebunden werden

Debug-Modus

Ausführliche Protokollierung aktivieren:

PYTHON_LOG_LEVEL=DEBUG python3 music_mcp_server.py

Lizenz

Dieses Projekt ist unter der MIT-Lizenz quelloffen; Sie können es frei verwenden, ändern und verbreiten.

Mitwirken

Beiträge in Form von Issues und Pull Requests zur Verbesserung dieses Projekts sind herzlich willkommen!


Hinweis: Bitte stellen Sie sicher, dass Sie die geltenden Urheberrechtsgesetze für Musik einhalten und nur legale Musikressourcen verwenden.

Related MCP Connectors

Related MCP Servers