106bf1014e4ba851ac1e5375b2d817de1a29b132
NixOS Configuration CI / Nix Flake Check (pull_request) Successful in 25s
romm_system action=scan threw client-side: Scan endpoint removed in RomM 5.0. Use the RomM web UI to trigger library scans. That note is stale. The comment above the stub says RomM 5.0 removed POST /api/tasks/run -- true -- but 5.4 serves POST /api/tasks/scan with a ScanPayload (type, platforms, platform_fs_slugs, roms_ids, apis). Verified against the running instance: /api/tasks/scan is in the 5.4.1 OpenAPI (226 paths), and a call with a bad key answers 401 from that exact endpoint rather than 404. So the stub was blocking a working endpoint, and scans still needed a human in the UI. Patch restores runScan() defaulting to type=quick, which indexes new and changed files without re-hashing the whole library (a full scan hashes 229 GB). The patch targets dist/client.js: the npm tarball ships only dist/ plus a .d.ts, so there is no .ts to patch without dragging in typescript. Keep it small and delete it when upstream restores runScan().
MCP Server Packages for Nix
Overview
This repository provides Nix derivations for MCP (Model Context Protocol) servers that are not yet available in nixpkgs.
Available Packages
| Package | Description | Language |
|---|---|---|
| academic-search-mcp-server | Search academic papers via Semantic Scholar and Crossref | Python |
| applemusic-mcp | Apple Music — manage playlists, search catalog, browse library | Python |
| duckduckgo-mcp-server | Web search and content fetching via DuckDuckGo | Python |
| jellyfin-mcp | MCP server for Jellyfin media server | Python |
| libgen-mcp | Library Genesis + open-access search/download/read (no account needed) | Go |
| kindly-web-search-mcp-server | Web search + content retrieval via SearxNG, Tavily, or SearXNG | Python |
| manim-mcp-server | Execute Manim animation code and return videos | Python |
| mcp-arr-server | MCP server for *arr suite — Sonarr, Radarr, Lidarr, Prowlarr | TypeScript |
| mcp-score | AI-driven music score generation and MuseScore live control | Python |
| n8n-mcp | AI access to n8n node docs and workflow management | TypeScript |
| nextcloud-mcp-server | Nextcloud MCP server (files, calendar, contacts, deck, etc.) | Python |
| pdf-reader-mcp | Production‑ready PDF processing with parallel processing | TypeScript |
| rust-research-mcp | Accumulate and organize academic knowledge | Rust |
| simple-web-search-mcp | Zero-config web search and page reading for LLMs | TypeScript |
| mcp-searxng | Privacy-respecting web search and URL reading via SearXNG | TypeScript |
| transmission-mcp | MCP server for the Transmission BitTorrent client | Python |
| sabnzbd-mcp | MCP server for SABnzbd download management | Python |
| jellyfin-mcp | MCP server for Jellyfin — search, playback, metadata, admin | Go |
| zotero-mcp | Connect Zotero research library with AI assistants | Python |
| annas-mcp | Anna's Archive search/download (SokolskyNikita fork); needs cookie/API key | Go |
| bitwarden-mcp | Official Bitwarden vault, login, Send, org management | TypeScript |
| mcp-email-server | Send, receive, search email over IMAP/SMTP | Python |
| namecheap-mcp | Namecheap DNS, domains, contacts, registrar lock | TypeScript |
| navidrome-mcp | Navidrome music library search, playlists, radio, playback | TypeScript |
| ovhcloud-mcp | OVHcloud VPS, domains, DNS, billing, SSH, API explorer | TypeScript |
| slskd-mcp | slskd (Soulseek) search, download, peer browsing, private messages | Python |
| mcp-score | AI-driven music score generation and MuseScore live control | Python |
Home Manager Modules
The flake also exports reusable Home Manager modules:
home-manager.sharedModules = [
mcp-servers.homeManagerModules.mcp-gateway
mcp-servers.homeManagerModules.ssh-mcp
];
services.mcp-gatewayrendersgateway.yamlfrom Nix options.services.ssh-mcp.instances.<name>renders per-instancehosts.tomlandknown_hostsfiles and exposes agatewayBackendhelper.
See docs/mcp-gateway.md and docs/ssh-mcp.md.
Usage
Using the Overlay (Recommended)
Add this flake to your inputs and apply the overlay:
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
mcp-servers.url = "git+ssh://gitea@gitea.bueso.eu/luis/mcp-servers";
};
outputs = { self, nixpkgs, ... }: {
# Apply the overlay to get packages in pkgs
nixosConfigurations.myhost = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
{
nixpkgs.overlays = [ mcp-servers.overlays.default ];
}
# Now you can use pkgs.manim-mcp-server
];
};
};
}
Using Packages Directly
Access packages without the overlay:
{
mcp-servers.url = "git+ssh://gitea@gitea.bueso.eu/luis/mcp-servers";
outputs = { mcp-servers, ... }: {
# Access directly
myPackage = mcp-servers.packages.x86_64-linux.manim-mcp-server;
};
}
License
Each packaged MCP server retains its original license. The Nix expressions in this repository are provided as-is.
Languages
Nix
89%
Python
11%