Discogs MCP Server
Acesse a API do Discogs para catalogação musical, pesquisa e outras operações no banco de dados.
Documentação
Discogs MCP Server
Servidor MCP para a API do Discogs, permitindo operações de catálogo musical, funcionalidade de busca e muito mais.
Início Rápido
Se você quiser apenas começar a usar este MCP Server imediatamente com o aplicativo de desktop Claude e não se importar com desenvolvimento ou execução do servidor, certifique-se de ter o Node.js instalado e seu token de acesso pessoal do Discogs pronto e vá direto para a seção de configuração do Claude. Use o método NPX dessa seção.
Sumário
- Agradecimentos
- Ferramentas Disponíveis
- Advertências
- Pré-requisitos
- Configuração
- Executando o Servidor
- Inspeção
- Clientes MCP
- TODO
- Licença
Agradecimentos
Este servidor MCP é construído usando FastMCP, um framework TypeScript para construir servidores MCP. Para mais informações sobre MCP e como usar servidores MCP, consulte a documentação do FastMCP e a documentação oficial do MCP.
Ferramentas Disponíveis
Confira a lista de ferramentas disponíveis: TOOLS.md
Advertências
- A documentação da API do Discogs não é perfeita e alguns endpoints podem não estar totalmente documentados ou podem ter inconsistências.
- Devido ao grande número de endpoints e tipos de resposta da API, não é viável verificar a segurança de tipos para todas as respostas possíveis. Por favor, relate quaisquer problemas relacionados a tipos que você encontrar.
- Este servidor MCP permite editar dados na sua coleção do Discogs. Use com cautela e verifique suas ações antes de executá-las.
- O padrão de
per_pageda API do Discogs é50, o que pode ser dados demais para alguns clientes processarem de forma eficaz, então neste projeto um valor dediscogs.config.defaultPerPagefoi definido como5. Você pode solicitar mais dados em seus prompts, mas esteja ciente de que alguns clientes podem ter dificuldades com respostas maiores.
Pré-requisitos
- Node.js (testado com Node.js
20.x.x, mas18.x.xtambém deve funcionar)- Verifique sua versão do Node.js com:
node --version
- Verifique sua versão do Node.js com:
- Docker (opcional, para executar uma imagem docker local sem precisar lidar com Node ou dependências)
Configuração
- Clone o repositório
- Crie um arquivo
.envno diretório raiz com base em.env.example - Defina as seguintes variáveis de ambiente obrigatórias no seu
.env:DISCOGS_PERSONAL_ACCESS_TOKEN: Seu token de acesso pessoal do Discogs
Para obter seu token de acesso pessoal do Discogs, acesse a página Discogs Settings > Developers e encontre seu token ou gere um novo. NÃO COMPARTILHE SEU TOKEN. O suporte a OAuth será adicionado em uma versão futura.
As outras variáveis de ambiente em .env.example são opcionais e têm padrões sensatos, então você não precisa defini-las a menos que tenha requisitos específicos.
SERVER_HOST: O endereço do host ao qual o servidor será vinculado (padrão:0.0.0.0). Defina como0.0.0.0para permitir conexões de fora do contêiner/máquina, ou127.0.0.1para restringir apenas ao localhost.
Executando o Servidor Localmente
Opção 1: Desenvolvimento Local
-
Instale as dependências:
pnpm install -
Comandos disponíveis:
pnpm run dev: Inicie o servidor de desenvolvimento com hot reloadingpnpm run dev:stream: Inicie o servidor de desenvolvimento com hot reloading no modo de streaming HTTPpnpm run build: Compile a versão de produçãopnpm run start: Execute a compilação de produçãopnpm run inspect: Execute o MCP Inspector (veja a seção Inspeção)pnpm run format: Verifique a formatação do código (prettier)pnpm run lint: Execute o linter (eslint)pnpm run test: Execute o vitestpnpm run test:coverage: Execute a cobertura do vitest v8pnpm run version:check: Verifica se a versão do package.json e src/version.ts correspondem
Opção 2: Docker
-
Compile a imagem Docker:
docker build -t discogs-mcp-server:latest . -
Execute o contêiner:
docker run --env-file .env discogs-mcp-server:latestPara o modo de transporte HTTP Streaming:
# 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
Inspeção
Execute o MCP Inspector para testar seu servidor MCP local:
pnpm run inspect
Isso iniciará o MCP Inspector em http://127.0.0.1:6274. Visite esta URL no seu navegador para interagir com seu servidor MCP local.
Para mais informações sobre o MCP Inspector, visite a documentação oficial.
Clientes MCP
Mais exemplos de clientes serão adicionados no futuro. Se você quiser configuração para um cliente específico, solicite abrindo uma nova issue ou crie o pull request para editar esta seção do README você mesmo.
Configuração do Claude Desktop
Encontre seu claude_desktop_config.json em Claude > Settings > Developer > Edit Config e, dependendo de qual opção você preferir, adicione APENAS UMA das seguintes:
NPX
Executando diretamente do registro npm.
{
"mcpServers": {
"discogs": {
"command": "npx",
"args": [
"-y",
"discogs-mcp-server"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Node Local
As dependências devem ter sido instaladas antes de você 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
A imagem docker deve ter sido compilada 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"
]
}
}
}
Quaisquer alterações no código local exigirão que o Claude seja reiniciado para ter efeito. Além disso, o Claude exige interação humana no processo para permitir que uma ferramenta MCP seja executada, então toda vez que uma nova ferramenta for acessada, o Claude pedirá permissão. Normalmente você só precisa fazer isso uma vez por ferramenta por chat. Se estiver usando a versão gratuita, chats longos podem resultar em erros mais frequentes ao tentar executar ferramentas, pois o Claude limita a quantidade de contexto em um único chat.
LibreChat
No arquivo de configuração librechat.yaml, adicione isto na seção mcpServers:
discogs:
type: stdio
command: npx
args: ["-y", "discogs-mcp-server"]
env:
DISCOGS_PERSONAL_ACCESS_TOKEN: YOUR_TOKEN_GOES_HERE
LM Studio
Vá para o Chat Settings. Na aba Program haverá um menu suspenso com o padrão Install. Selecione Edit mcp.json. Adicione isto na seção mcpServers:
"discogs": {
"command": "npx",
"args": [
"-y",
"discogs-mcp-server"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "YOUR_TOKEN_GOES_HERE"
}
}
Depois de Salvar, na aba Program agora deve haver um alternador mcp/discogs para habilitar o servidor. Dentro de cada caixa de chat há um menu Integrations onde você também pode habilitar servidores mcp.
TODO
- Suporte a OAuth
- Ferramentas ausentes:
- Upload de inventário
Licença
Este servidor MCP é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.