Skip to main content
Glama
ccombe

Nicotine+ Soulseek MCP Server

by ccombe

Nicotine+ Soulseek MCP Server

Un servidor de Model Context Protocol (MCP) local y sin estado que se integra directamente con el motor de red Nicotine+ (Soulseek).

Permite a los asistentes de IA (como Claude Desktop, Antigravity u otros clientes MCP) buscar en la red peer-to-peer de Soulseek, evaluar calidad de audio / bitrates, seleccionar candidatos de descarga con la cola más corta y las velocidades más rápidas, descargar automáticamente listas de canciones completas y monitorizar el progreso de las transferencias.


Características

  • Local y sin estado: Se ejecuta localmente a través de STDIO estándar usando el SDK oficial de MCP para Python.

  • Detección automática de la configuración de escritorio de Nicotine+: Lee automáticamente tu configuración existente de escritorio de Nicotine+ (~/.config/nicotine/config o %APPDATA%/nicotine/config) y hereda tu cuenta de Soulseek y tus directorios de descarga sin necesidad de reentrarlos manualmente.

  • Clasificación y puntuación inteligentes: Evalúa y clasifica los resultados de búsqueda según:

    • Calidad de audio (MP3 320 kbps, FLAC, V0, etc.)

    • Longitud de cola (priorizando usuarios con slots de subida libres / cola 0)

    • Velocidad de subida del usuario (en KB/s)

  • Automatización masiva (auto_find_and_download): Pega una lista de canciones o álbumes en tu agente de IA; buscará, elegirá el archivo óptimo para cada uno y pondrá las descargas en cola automáticamente.

  • Monitorización de transferencias en tiempo real (get_downloads_status): Permite seguir los porcentajes de progreso, la velocidad de descarga y posiciones en cola.

  • Alta calidad de código: Construido con uv, anotaciones de tipos estrictas, esquemas Pydantic v2 y verificado con ruff y pytest.


Herramientas MCP disponibles

Nombre de la herramienta

Descripción

search_tracks

Busca canciones / álbumes en Soulseek con filtros de bitrate (predeterminado 320 kbps), tipo de archivo (mp3, flac, etc.), cola máxima y slots libres. Los resultados se clasifican y puntúan por calidad y velocidad.

auto_find_and_download

Buscador masivo de canciones: toma una lista de consultas de canciones / álbumes, busca cada una en Soulseek, elige la mejor candidata que cumpla con la calidad (predeterminado 320 kbps) y los criterios de cola, y deja las descargas encoladas.

queue_download

Encola la descarga de un archivo concreto utilizando su nombre de usuario y la ruta virtual de los resultados de búsqueda.

get_downloads_status

Devuelve el estado en tiempo real, porcentajes de progreso, velocidades y posiciones en cola de todas las transferencias activas, en cola y completadas.

clear_finished_downloads

Elimina las transferencias completadas de la lista de descargas.

get_connection_status

Devuelve el estado de la conexión, el usuario en la sesión, la dirección del servidor y la ruta de destino de las descargas.

set_credentials

Establece o actualiza dinámicamente el nombre de usuario y la contraseña de Soulseek.

🚀 Configuración sin instalación de 1 minuto para agentes de IA

Puedes apuntar cualquier agente de IA (Claude Desktop, Antigravity, Cursor, Windsurf, Rhy, Roo Code, etc.) directamente a este repositorio de GitHub sin clonarlo ni gestionar entornos virtuales manualmente.

Recomendado: Zero-Install a través de uvx (macOS, Windows, Linux)

Añade esto a tu archivo de configuración de MCP (por ejemplo, claude_desktop_config.json):

{
  "mcpServers": {
    "nicotine-plus": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/ccombe/nicotine-plus-mcp@v0.2.0",
        "nicotine-mcp"
      ]
    }
  }
}

[!TIP]

  • uvx descarga automáticamente, instala en una caché aislada y lanza el servidor bajo demanda.

  • Puedes fijar una versión específica añadiendo @v0.2.0 (recomendado para estabilidad) o usar la rama master predeterminada si siempre quieres las últimas novedades.


💻 Instalación mediante clonado de Git local

Si prefieres clonar y ejecutar el servidor localmente:

git clone https://github.com/ccombe/nicotine-plus-mcp.git
cd nicotine-plus-mcp
uv run nicotine-mcp

Configuración local de MCP

macOS / Linux

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

Windows

{
  "mcpServers": {
    "nicotine-plus": {
      "command": "uv.exe",
      "args": [
        "--directory",
        "C:\\path\\to\\nicotine-plus-mcp",
        "run",
        "nicotine-mcp"
      ]
    }
  }
}

[!NOTE] Detección automática multiplataforma:

  • Linux: Usa automáticamente ~/.config/nicotine/config y $XDG_DATA_HOME/nicotine.

  • macOS: Comprueba automáticamente ~/Library/Application Support/nicotine y ~/.config/nicotine.

  • Windows: Usa automáticamente %APPDATA%\nicotine\config.

Si ya usas la aplicación de escritorio de Nicotine+ en tu máquina, no se requiere configuración ni credenciales. Si quieres especificar credenciales o rutas personalizadas, simplemente añade SOULSEEK_USERNAME, SOULSEEK_PASSWORD y SOULSEEK_DOWNLOAD_DIR al bloque env.


Ejemplo de uso con tu agente de IA

Puedes enviar peticiones como la siguiente:

"Por favor, busca y descarga las siguientes canciones en MP3 320 kbps, eligiendo a los usuarios con la velocidad más rápida y con espacio de subida libre:

  1. Daft Punk - Around the World

  2. Aphex Twin - Xtal

  3. Boards of Canada - Dayvan Cowboy"

El agente ejecutará auto_find_and_download con la lista, y podrás ver el progreso en cualquier momento preguntando "¿Cómo van mis descargas?" (lo que llama a get_downloads_status).


Desarrollo, pruebas y verificación

Ejecuta de todas las suites de tests:

uv run pytest

Ejecuta el análisis de código (linter) y comprobador de formato (ruff):

uv run ruff check src/nicotine_mcp tests
uv run ruff format --check src/nicotine_mcp tests

Ejecuta la comprobación estricta de tipos con ty:

uv run ty check src/nicotine_mcp tests

Audita las dependencias en busca de vulnerabilidades de seguridad y verifica la integridad del lockfile:

uv run pip-audit
uv lock --check
-
license - not tested
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
3Releases (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.

Related MCP Connectors

  • AI-manageable audio CDN: upload, transcode, normalize, stream & deliver audio, plus grounded docs.

  • Generate AI music via the Lacuna Music API from MCP clients like Claude Desktop & Code.

  • Search your knowledge bases from any AI assistant using hybrid RAG.

View all MCP Connectors

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/ccombe/nicotine-plus-mcp'

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