Discogs MCP Server
Accede a la API de Discogs para catalogación musical, búsqueda y otras operaciones de base de datos.
Documentación
Discogs MCP Server
Servidor MCP para la API de Discogs, que permite operaciones de catálogo musical, funcionalidad de búsqueda y más.
Inicio rápido
Si solo quieres empezar a usar este Servidor MCP inmediatamente con la aplicación de escritorio Claude y no te importa el desarrollo ni ejecutar el servidor tú mismo, asegúrate de tener Node.js instalado y tu token de acceso personal de Discogs listo, y ve directamente a la sección de configuración de Claude. Usa el método NPX de esa sección.
Tabla de contenidos
- Agradecimientos
- Herramientas disponibles
- Advertencias
- Requisitos previos
- Configuración
- Ejecutar el servidor
- Inspección
- Clientes MCP
- PENDIENTE
- Licencia
Agradecimientos
Este servidor MCP está construido con FastMCP, un framework de TypeScript para crear servidores MCP. Para más información sobre MCP y cómo usar servidores MCP, consulta la documentación de FastMCP y la documentación oficial de MCP.
Herramientas disponibles
Consulta la lista de herramientas disponibles: TOOLS.md
Advertencias
- La documentación de la API de Discogs no es perfecta y algunos endpoints pueden no estar completamente documentados o tener inconsistencias.
- Debido a la gran cantidad de endpoints de API y tipos de respuesta, no es factible verificar la seguridad de tipos para cada respuesta posible. Por favor, informa de cualquier problema relacionado con tipos que encuentres.
- Este servidor MCP permite editar datos en tu colección de Discogs. Úsalo con precaución y verifica tus acciones antes de ejecutarlas.
- El valor predeterminado de
per_pagede la API de Discogs es50, que puede ser demasiada información para que algunos clientes la procesen de manera efectiva, por lo que dentro de este proyecto se ha establecido un valor dediscogs.config.defaultPerPageen5. Puedes solicitar más datos en tus prompts, pero ten en cuenta que algunos clientes pueden tener dificultades con respuestas más grandes.
Requisitos previos
- Node.js (probado con Node.js
20.x.x, pero18.x.xdebería funcionar también)- Comprueba tu versión de Node.js con:
node --version
- Comprueba tu versión de Node.js con:
- Docker (opcional, para ejecutar una imagen docker local sin tener que lidiar con Node o dependencias)
Configuración
- Clona el repositorio
- Crea un archivo
.enven el directorio raíz basado en.env.example - Establece las siguientes variables de entorno requeridas en tu
.env:DISCOGS_PERSONAL_ACCESS_TOKEN: Tu token de acceso personal de Discogs
Para obtener tu token de acceso personal de Discogs, ve a tu página de Configuración de Discogs > Desarrolladores y encuentra tu token o genera uno nuevo. NO COMPARTAS TU TOKEN. El soporte OAuth se añadirá en una futura versión.
Las demás variables de entorno en .env.example son opcionales y tienen valores predeterminados sensatos, así que no necesitas configurarlas a menos que tengas requisitos específicos.
SERVER_HOST: La dirección del host al que vincular el servidor (predeterminado:0.0.0.0). Establécelo en0.0.0.0para permitir conexiones desde fuera del contenedor/máquina, o127.0.0.1para restringirlo solo a localhost.
Ejecutar el servidor localmente
Opción 1: Desarrollo local
-
Instala las dependencias:
pnpm install -
Comandos disponibles:
pnpm run dev: Inicia el servidor de desarrollo con recarga automáticapnpm run dev:stream: Inicia el servidor de desarrollo con recarga automática en modo de transmisión HTTPpnpm run build: Compila la versión de producciónpnpm run start: Ejecuta la compilación de producciónpnpm run inspect: Ejecuta el MCP Inspector (consulta la sección Inspección)pnpm run format: Comprueba el formato del código (prettier)pnpm run lint: Ejecuta el linter (eslint)pnpm run test: Ejecuta vitestpnpm run test:coverage: Ejecuta la cobertura v8 de vitestpnpm run version:check: Comprueba que la versión en package.json y src/version.ts coinciden
Opción 2: Docker
-
Construye la imagen de Docker:
docker build -t discogs-mcp-server:latest . -
Ejecuta el contenedor:
docker run --env-file .env discogs-mcp-server:latestPara el modo de transporte de transmisión HTTP:
# The port should match what is in your .env file # By default, the server listens on 0.0.0.0, allowing connections from outside the container docker run --env-file .env -p 3001:3001 discogs-mcp-server:latest stream
Inspección
Ejecuta el MCP Inspector para probar tu servidor MCP local:
pnpm run inspect
Esto iniciará el MCP Inspector en http://127.0.0.1:6274. Visita esta URL en tu navegador para interactuar con tu servidor MCP local.
Para más información sobre el MCP Inspector, visita la documentación oficial.
Clientes MCP
Se añadirán más ejemplos de clientes en el futuro. Si deseas configuración para un cliente específico, ya sea solicítalo abriendo un nuevo issue o creando un pull request para editar esta sección del README tú mismo.
Configuración de Claude Desktop
Encuentra tu claude_desktop_config.json en Claude > Settings > Developer > Edit Config y, dependiendo de la opción que prefieras, añade SOLO UNA de las siguientes:
NPX
Ejecutándolo directamente desde el registro npm.
{
"mcpServers": {
"discogs": {
"command": "npx",
"args": [
"-y",
"discogs-mcp-server"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Node local
Las dependencias deberían haberse instalado antes de usar este método (pnpm install).
{
"mcpServers": {
"discogs": {
"command": "npx",
"args": [
"tsx",
"/PATH/TO/YOUR/PROJECT/FOLDER/src/index.ts"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Docker
La imagen docker debería haberse construido antes de usar este método.
{
"mcpServers": {
"discogs": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--env-file",
"/PATH/TO/YOUR/PROJECT/FOLDER/.env",
"discogs-mcp-server:latest"
]
}
}
}
Cualquier cambio en el código local requerirá reiniciar Claude para que surta efecto. Además, Claude requiere interacción humana en el bucle para permitir que se ejecute una herramienta MCP, por lo que cada vez que se acceda a una nueva herramienta, Claude pedirá permiso. Normalmente solo tienes que hacerlo una vez por herramienta por chat. Si usas la versión gratuita, los chats largos pueden provocar errores más frecuentes al intentar ejecutar herramientas, ya que Claude limita la cantidad de contexto dentro de un solo chat.
LibreChat
En el archivo de configuración librechat.yaml, añade esto bajo la sección mcpServers:
discogs:
type: stdio
command: npx
args: ["-y", "discogs-mcp-server"]
env:
DISCOGS_PERSONAL_ACCESS_TOKEN: YOUR_TOKEN_GOES_HERE
LM Studio
Ve al Settings del Chat. En la pestaña Program habrá un menú desplegable con un valor predeterminado de Install. Selecciona Edit mcp.json. Añade esto bajo la sección mcpServers:
"discogs": {
"command": "npx",
"args": [
"-y",
"discogs-mcp-server"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "YOUR_TOKEN_GOES_HERE"
}
}
Después de Guardar, en la pestaña Program ahora debería haber un interruptor mcp/discogs para habilitar el servidor. Dentro de cada cuadro de chat hay un menú Integrations donde también puedes habilitar servidores mcp.
PENDIENTE
- Soporte OAuth
- Herramientas faltantes:
- Carga de inventario
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.