Sobre o projeto
ARR-MCP é um servidor MCP (Model Context Protocol) que conecta assistentes de IA como Claude, Cursor e VS Code à pilha de mídia *Arr, incluindo Sonarr, Radarr, Prowlarr, Bazarr, qBittorrent e NZBGet. Ele suporta múltiplas instâncias de cada serviço, permitindo que os usuários executem configurações separadas (por exemplo, instâncias Sonarr 4K e 1080p) e as enderecem por nome.
O servidor implementa MCP real usando JSON-RPC 2.0 sobre stdio e Streamable HTTP, construído no SDK oficial do Go. Ele fornece 246 ferramentas em todos os serviços suportados, permitindo que os usuários realizem tarefas que de outra forma fariam através da interface web de cada serviço. Essas ferramentas cobrem gerenciamento de biblioteca, operações de busca e importação, configuração de perfis de qualidade, gerenciamento de provedores e operações de sistema.
Principais recursos incluem:
- Suporte a múltiplas instâncias com instâncias nomeadas e seleção padrão
- Controles de permissão com três modos: somente leitura, confirmar (padrão) e acesso total
- Configurações de escopo de confirmação para operações de gravação ou destrutivas
- Comportamento de fallback para clientes sem suporte a elicitação
- Binário estático único com contêiner distroless e suporte a imagens multi-arquitetura
- Manifestos de implantação Kubernetes incluídos
A configuração pode ser feita via variáveis de ambiente para instâncias únicas ou um arquivo config.yaml para múltiplas instâncias. O arquivo de configuração suporta referenciar segredos via variáveis de ambiente, tornando seguro commitá-lo ou montá-lo a partir de um ConfigMap. O servidor valida a configuração na inicialização, capturando erros antes que apareçam durante a operação.
As ferramentas são organizadas por serviço e tipo de acesso (leitura, gravação, destrutivo). Sonarr e Radarr mantêm paridade com 62 nomes de ferramentas comuns. Bazarr fornece ferramentas de gerenciamento de legendas, Prowlarr lida com gerenciamento de indexadores e obtenção de releases, enquanto qBittorrent e NZBGet oferecem funcionalidade de cliente de download de torrent e Usenet, respectivamente.
O servidor inclui verificações de saúde, suporta transportes stdio e HTTP, e fornece configuração copiável e colável para vários clientes MCP. Os payloads de resposta são projetados para incluir apenas campos relevantes em vez de dados completos upstream, mantendo as respostas gerenciáveis enquanto fornecem informações necessárias para a tomada de decisão.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.