Files
mcp-servers/packages/sabnzbd-mcp/package.nix
T
hermes-agent 90c942e4bb
NixOS Configuration CI / Nix Flake Check (push) Successful in 1m23s
update: bump 6 MCP packages + nixpkgs flake
- flake.lock: nixpkgs 2026-05-31 → 2026-06-16
- zotero-mcp: v0.2.2 → v0.5.0
- duckduckgo-mcp-server: 0.1.1-unstable → v0.4.0
- kindly-web-search-mcp-server: bump to latest commit + add trafilatura dep
- sabnzbd-mcp: pin to specific commit instead of refs/heads/main
- jellyfin-mcp: v2026.318.7 → v2026.604.2 (remove go.mod patch)
- nextcloud-mcp-server: v0.89.0 → v0.121.3

n8n-mcp, mcp-arr-server, pdf-reader-mcp held back:
upstream npm packages require @modelcontextprotocol/sdk versions
not yet published to npm registry
2026-06-20 13:55:06 +02:00

57 lines
1.4 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
python3,
}:
let
python = python3.withPackages (
ps: with ps; [
fastapi
fastmcp
httpx
python-dotenv
]
);
in
stdenv.mkDerivation {
pname = "sabnzbd-mcp";
version = "0.1.0-unstable";
src = fetchFromGitHub {
owner = "jmagar";
repo = "sabnzbd-mcp";
rev = "9d691ed70b72397fddec03ca4ec68c81b30c79c3";
hash = "sha256-1sEnHH40cDVT5oiZD2Xywl7S9vJThii/ce+6r+XmpSw=";
};
nativeBuildInputs = [ makeWrapper ];
postPatch = ''
# The upstream client hardcodes /sabnzbd/api as the API path.
# Change to just /api so SABNZBD_URL can optionally include the path prefix
# (e.g. http://host:9092/sabnzbd or just http://host:9092).
substituteInPlace client.py \
--replace-fail '"{self.base_url}/sabnzbd/api"' '"{self.base_url}/api"'
'';
installPhase = ''
mkdir -p $out/lib/sabnzbd-mcp
cp sabnzbd-mcp-server.py client.py $out/lib/sabnzbd-mcp/
makeWrapper ${python}/bin/python $out/bin/sabnzbd-mcp \
--add-flags "$out/lib/sabnzbd-mcp/sabnzbd-mcp-server.py" \
--set-default SABNZBD_MCP_TRANSPORT stdio
'';
meta = with lib; {
description = "MCP server for SABnzbd Usenet client";
homepage = "https://github.com/jmagar/sabnzbd-mcp";
license = licenses.mit;
mainProgram = "sabnzbd-mcp";
platforms = platforms.all;
};
}