Bump applemusic, zotero, nextcloud MCP servers to latest
NixOS Configuration CI / Nix Flake Check (pull_request) Successful in 25s

- applemusic-mcp: 0.15.1 -> 0.18.3 (adds keyring dep)
- zotero-mcp: 0.5.0 -> 0.9.1 (pyzotero 1.13.5, vendored pdf-inspector,
  updated dep set per pyproject)
- nextcloud-mcp-server: 0.121.3 -> 0.173.0 (adds anyio, uvicorn,
  cryptography, lxml, botocore, numpy, packaging, pypdfium2; updated
  postPatch for new uv_build/icalendar constraints)

All hashes computed via nix build on wilkes; nix flake check passes.
This commit is contained in:
hermes-agent committed 2026-08-13 16:28:47 +00:00
1 parent b4b26c6ef2
commit fcd3f6d0f0
3 files changed
+45 -25

No files matched your search

+3 -2
View File
@@ -6,14 +6,14 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "applemusic-mcp"; pname = "applemusic-mcp";
version = "0.15.1"; version = "0.18.3";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "epheterson"; owner = "epheterson";
repo = "applemusic-mcp"; repo = "applemusic-mcp";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-N97bZyT8TWOrt1WS7W31OJaICwoUxFfcDDuRs+TweTQ="; hash = "sha256-VHW7ct824hW+Gv3x6tMDGnvx3Hj/0ZDqGjc7yQOaf7U=";
}; };
build-system = with python3Packages; [ build-system = with python3Packages; [
@@ -26,6 +26,7 @@ python3Packages.buildPythonApplication rec {
requests requests
cryptography cryptography
playwright playwright
keyring
]; ];
pythonImportsCheck = [ "applemusic_mcp" ]; pythonImportsCheck = [ "applemusic_mcp" ];
+6 -5
View File
@@ -132,14 +132,14 @@ let
in in
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "nextcloud-mcp-server"; pname = "nextcloud-mcp-server";
version = "0.121.3"; version = "0.173.0";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cbcoutinho"; owner = "cbcoutinho";
repo = "nextcloud-mcp-server"; repo = "nextcloud-mcp-server";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-U6BG5anTEllNnJzta4VV6QOfn86+N15q6v/SfLGM7mc="; hash = "sha256-wN0LUoKD4qR00H1eTeIHEoAmSEC7YY+sQ2HtY6oerjE=";
}; };
build-system = [ python3Packages.uv-build ]; build-system = [ python3Packages.uv-build ];
@@ -148,6 +148,7 @@ python3Packages.buildPythonApplication rec {
mcp httpx pillow icalendar pydantic click pyjwt mcp httpx pillow icalendar pydantic click pyjwt
aiosqlite alembic authlib fastembed anthropic boto3 starlette aiosqlite alembic authlib fastembed anthropic boto3 starlette
jinja2 markdownify pymupdf pymupdf4llm openai dynaconf sqlalchemy jinja2 markdownify pymupdf pymupdf4llm openai dynaconf sqlalchemy
anyio uvicorn cryptography lxml botocore numpy packaging pypdfium2
pythonvcard4 prometheus-client python-json-logger importlib-metadata pythonvcard4 prometheus-client python-json-logger importlib-metadata
googleapis-common-protos opentelemetry-api opentelemetry-proto googleapis-common-protos opentelemetry-api opentelemetry-proto
@@ -161,11 +162,11 @@ python3Packages.buildPythonApplication rec {
postPatch = '' postPatch = ''
substituteInPlace pyproject.toml \ substituteInPlace pyproject.toml \
--replace-quiet '"uv_build>=0.11.5,<0.12.0"' '"uv_build"' \ --replace-quiet '"uv_build>=0.12.1,<0.13.0"' '"uv_build"' \
--replace-quiet '" (>=1.27,<1.28)"' '""' \ --replace-quiet '" (>=1.29,<1.30)"' '""' \
--replace-quiet '" (>=0.28.1,<0.29.0)"' '""' \ --replace-quiet '" (>=0.28.1,<0.29.0)"' '""' \
--replace-quiet '" (>=10.3.0,<12.0.0)"' '""' \ --replace-quiet '" (>=10.3.0,<12.0.0)"' '""' \
--replace-quiet '" (>=7.1.0,<7.2.0)"' '""' \ --replace-quiet '" (>=7.2.0,<7.3.0)"' '""' \
--replace-quiet '" (>=3.0.1,<4.0)"' '""' \ --replace-quiet '" (>=3.0.1,<4.0)"' '""' \
--replace-quiet '" (>=1.28.2,<2.0.0)"' '""' \ --replace-quiet '" (>=1.28.2,<2.0.0)"' '""' \
--replace-quiet '" (>=2.0.0,<3.0.0)"' '""' \ --replace-quiet '" (>=2.0.0,<3.0.0)"' '""' \
+36 -18
View File
@@ -3,13 +3,14 @@
python3Packages, python3Packages,
fetchFromGitHub, fetchFromGitHub,
fetchPypi, fetchPypi,
fetchurl,
}: }:
let let
# Internal dependency: pyzotero (not in nixpkgs) # Internal dependency: pyzotero (not in nixpkgs)
pyzotero = python3Packages.buildPythonPackage rec { pyzotero = python3Packages.buildPythonPackage rec {
pname = "pyzotero"; pname = "pyzotero";
version = "1.11.0"; version = "1.13.5";
format = "wheel"; format = "wheel";
src = fetchPypi { src = fetchPypi {
@@ -17,7 +18,7 @@ let
format = "wheel"; format = "wheel";
dist = "py3"; dist = "py3";
python = "py3"; python = "py3";
hash = "sha256-VDSMczLHnNGs9THyVI/I2MbqMeiemMQgIy2XoZOtlbI="; hash = "sha256-KoHXv+ix6kRzvLUPOPBeAeAJaO/3bBxHi1PwUa5rDcg=";
}; };
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [
@@ -36,46 +37,60 @@ let
license = licenses.blueOak100; license = licenses.blueOak100;
}; };
}; };
# pdf-inspector: Rust with prebuilt abi3 wheels, not in nixpkgs.
# Pinned exactly (pre-1.0); no Python dependencies of its own.
pdf-inspector = python3Packages.buildPythonPackage rec {
pname = "pdf-inspector";
version = "0.2.6";
format = "wheel";
src = fetchurl {
url = "https://files.pythonhosted.org/packages/59/af/be72ab2bd310b6532e4311cf06175eb722802ccea29dbd9281f66c645bd8/pdf_inspector-0.2.6-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
hash = "sha256-33bdEAUEtwXOku8sZo8VLwUnfZQqvZSn0/JSy1RI1W0=";
};
doCheck = false;
pythonImportsCheck = [ "pdf_inspector" ];
meta = with lib; {
description = "PDF text extraction (Rust, abi3 wheels)";
homepage = "https://github.com/54yyyu/pdf-inspector";
license = licenses.mit;
};
};
in in
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "zotero-mcp"; pname = "zotero-mcp";
version = "0.5.0"; version = "0.9.1";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "54yyyu"; owner = "54yyyu";
repo = "zotero-mcp"; repo = "zotero-mcp";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-ioy6bdP+jFioUGBKiiYtD4nbdFe6v2E3nCi6s9+dTT0="; hash = "sha256-1A4aKGLFUmY+abLKhxmnSd3KaJtC8onda4/MkjrybIg=";
}; };
build-system = with python3Packages; [ build-system = with python3Packages; [
hatchling hatchling
]; ];
# Core dependencies # Core dependencies (from pyproject.toml v0.9.1)
dependencies = with python3Packages; [ dependencies = with python3Packages; [
pyzotero pyzotero
mcp
python-dotenv python-dotenv
markitdown pdf-inspector
markdownify
pydantic pydantic
requests requests
fastmcp fastmcp
httpx
unidecode unidecode
# PDF support bibtexparser
pymupdf
ebooklib
pdfplumber
# Semantic search
chromadb
sentence-transformers
openai
google-genai
tiktoken
]; ];
# Optional: semantic search dependencies # Optional extras (semantic search, PDF, scite)
optional-dependencies = with python3Packages; { optional-dependencies = with python3Packages; {
semantic = [ semantic = [
chromadb chromadb
@@ -88,6 +103,9 @@ python3Packages.buildPythonApplication rec {
pymupdf pymupdf
ebooklib ebooklib
]; ];
scite = [
requests
];
}; };
pythonImportsCheck = [ "zotero_mcp" ]; pythonImportsCheck = [ "zotero_mcp" ];