このプロジェクトについて
ARR-MCPは、Claude、Cursor、VS CodeなどのAIアシスタントを、Sonarr、Radarr、Prowlarr、Bazarr、qBittorrent、NZBGetを含む*Arrメディアスタックに接続するMCP(Model Context Protocol)サーバーです。各サービスの複数インスタンスをサポートし、ユーザーは個別の構成(例:4Kと1080pのSonarrインスタンス)を実行し、名前で指定できます。
このサーバーは、公式Go SDKで構築され、stdioおよびStreamable HTTP経由でJSON-RPC 2.0を使用する実際のMCPを実装しています。サポートされるすべてのサービスにまたがる246のツールを提供し、ユーザーが各サービスのWeb UIを通じて行うであろうタスクを実行できるようにします。これらのツールは、ライブラリ管理、検索とインポート操作、品質プロファイル構成、プロバイダー管理、システム操作をカバーします。
主な機能は次のとおりです。
- 名前付きインスタンスとデフォルト選択によるマルチインスタンス対応
- readonly、confirm(デフォルト)、full accessの3モードによる権限制御
- 書き込みまたは破壊的操作に対する確認スコープ設定
- elicitationサポートがないクライアント向けのフォールバック動作
- distrolessコンテナとマルチアーキテクチャイメージをサポートする単一の静的バイナリ
- Kubernetesデプロイメントマニフェストを含む
構成は、単一インスタンスの場合は環境変数で、複数インスタンスの場合はconfig.yamlファイルで行えます。構成ファイルは環境変数を介したシークレットの参照をサポートし、コミットしたりConfigMapからマウントしたりしても安全です。サーバーは起動時に構成を検証し、運用中に表面化する前にエラーを捕捉します。
ツールはサービスとアクセスタイプ(read、write、destructive)別に整理されています。SonarrとRadarrは62の共通ツール名で同等性を維持しています。Bazarrは字幕管理ツールを提供し、Prowlarrはインクサー管理とリリース取得を処理し、qBittorrentとNZBGetはそれぞれトレントおよびUsenetダウンロードクライアント機能を提供します。
サーバーにはヘルスチェックが含まれ、stdioとHTTPの両方のトランスポートをサポートし、さまざまなMCPクライアント向けにコピー&ペースト可能な構成を提供します。レスポンスペイロードは、完全な上流データではなく関連フィールドのみを含むように投影され、レスポンスを扱いやすく保ちながら、意思決定に必要な情報を提供します。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.