NixOS Configuration CI / Nix Flake Check (push) Successful in 10s
Library Genesis MCP server (jmrplens/libgen-mcp v2.0.1): federated book/paper search, download and read across LibGen and open-access sources. No account, API key or cookie required, unlike annas-mcp. The flake's pinned nixpkgs only ships Go 1.26 and upstream needs Go 1.27, so package the prebuilt static release binaries (same approach as yarr).
4.6 KiB
4.6 KiB
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 |
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.