VOOZH about

URL: https://glama.ai/mcp/servers/utensils/mcp-nixos?locale=de-DE

⇱ mcp-nixos by utensils | Glama


MCP-NixOS – Damit Ihre KI keine Paketnamen halluziniert

👁 CI
👁 codecov
👁 PyPI
👁 FlakeHub
👁 Python 3.11+
👁 CodeRabbit Pull Request Reviews
👁 Built with Claude

Schnellstart

🚨 Kein Nix/NixOS erforderlich! Funktioniert auf jedem System – Windows, macOS, Linux. Sie fragen lediglich APIs ab.

Option 1: uvx (Empfohlen)

👁 Install MCP Server

{
 "mcpServers": {
 "nixos": {
 "command": "uvx",
 "args": ["mcp-nixos"]
 }
 }
}

Option 2: Nix

👁 Install MCP Server

{
 "mcpServers": {
 "nixos": {
 "command": "nix",
 "args": ["run", "github:utensils/mcp-nixos", "--"]
 }
 }
}

Option 3: Docker

👁 Install MCP Server

{
 "mcpServers": {
 "nixos": {
 "command": "docker",
 "args": ["run", "--rm", "-i", "ghcr.io/utensils/mcp-nixos"]
 }
 }
}

Ihre KI hat nun Zugriff auf echte NixOS-Daten, anstatt sich Dinge auszudenken. Gern geschehen.

Option 4: HTTP (Remote MCP)

FastMCP unterstützt den Betrieb dieses Servers über HTTP unter einer URL (der MCP-Endpunkt ist standardmäßig /mcp).

# Run an HTTP MCP server at http://127.0.0.1:8000/mcp
MCP_NIXOS_TRANSPORT=http MCP_NIXOS_HOST=127.0.0.1 MCP_NIXOS_PORT=8000 mcp-nixos

STDIO (Standard):

MCP_NIXOS_TRANSPORT=stdio mcp-nixos

Benutzerdefinierter Pfad:

MCP_NIXOS_TRANSPORT=http MCP_NIXOS_PATH=/api/mcp mcp-nixos

Zustandsloses HTTP (deaktiviert den Sitzungsstatus pro Client):

MCP_NIXOS_TRANSPORT=http MCP_NIXOS_STATELESS_HTTP=1 mcp-nixos

Option 5: Pi Coding Agent

Pi spricht nicht nativ MCP. Es gibt zwei unterstützte Wege:

A. pi-mcp-adapter (empfohlen — spricht MCP, Single Source of Truth):

pi install npm:pi-mcp-adapter

Fügen Sie dann Folgendes zu ~/.pi/agent/mcp.json hinzu:

{
 "mcpServers": {
 "nixos": {
 "command": "uvx",
 "args": ["mcp-nixos"],
 "lifecycle": "lazy"
 }
 }
}

B. Projektlokale Erweiterung (klonen + ausführen): Dieses Repository enthält .pi/extensions/mcp-nixos.ts, das automatisch geladen wird, wenn Sie pi im geklonten Repository ausführen. Optional: cd .pi && npm install für die Editor-Typauflösung. Pi führt es in jedem Fall aus.

Related MCP server: MCP-Context-Provider

Was ist das?

Ein MCP-Server, der genaue Echtzeitinformationen bereitstellt über:

  • NixOS-Pakete – Über 130.000 Pakete, die tatsächlich existieren

  • NixOS-Optionen – Über 23.000 Möglichkeiten, Ihr System zu konfigurieren

  • Home Manager – Über 5.000 Optionen für Dotfile-Enthusiasten

  • nix-darwin – Über 1.000 macOS-Einstellungen, die Apple nicht dokumentiert

  • Nixvim – Über 5.000 Optionen für die Neovim-Konfiguration via NuschtOS search

  • FlakeHub – Über 600 Flakes aus der FlakeHub.com Registry

  • Noogle – Über 2.000 Nix-Funktionen mit Typsignaturen via noogle.dev

  • NixOS Wiki – Community-Dokumentation und Anleitungen von wiki.nixos.org

  • nix.dev – Offizielle Nix-Tutorials und Anleitungen von nix.dev

  • Paketversionen – Historische Versionen mit Commit-Hashes via NixHub.io

  • Binary-Cache-Status – Überprüfen Sie, ob Pakete auf cache.nixos.org zwischengespeichert sind, inklusive Downloadgrößen

  • Lokale Flake-Inputs – Erkunden Sie Ihre fixierten Flake-Abhängigkeiten direkt aus dem Nix-Store (erfordert Nix)

Die Tools

Nur zwei. Wir haben 17 Tools in 2 zusammengefasst, da das Kontextfenster Ihrer KI nicht unendlich ist.

Insgesamt ca. 1.030 Token. Das ist alles. Während andere MCP-Server Ihren Kontext belegen, als wäre es Black Friday, trinken wir minimalistischen Tee in der Ecke. Ihre KI erhält NixOS-Superkräfte ohne den Ballast.

nix – Einheitliches Abfragetool

Ein Tool, sie alle zu beherrschen:

nix(action, query, source, type, channel, limit)

Aktion

Was es tut

search

Durchsucht Pakete, Optionen, Programme oder Flakes

info

Ruft detaillierte Informationen zu einem Paket oder einer Option ab

stats

Ruft Anzahlen und Kategorien ab

options

Durchsucht Home Manager/Darwin-Optionen nach Präfix

channels

Listet verfügbare NixOS-Kanäle auf

flake-inputs

Erkundet lokale Flake-Inputs aus dem Nix-Store

cache

Überprüft den Binary-Cache-Status für Pakete

Quelle

Was es abfragt

nixos

Pakete, Optionen, Programme

home-manager

Home Manager-Optionen

darwin

nix-darwin-Optionen

flakes

Community-Flakes (search.nixos.org)

flakehub

FlakeHub-Registry (flakehub.com)

nixvim

Nixvim Neovim-Konfigurationsoptionen

noogle

Nix-Funktionssignaturen und Dokumentation (noogle.dev)

wiki

NixOS Wiki-Artikel (wiki.nixos.org)

nix-dev

Offizielle Nix-Dokumentation (nix.dev)

nixhub

Paket-Metadaten und Store-Pfade (nixhub.io)

Beispiele:

# Search NixOS packages
nix(action="search", query="firefox", source="nixos", type="packages")

# Get package info
nix(action="info", query="firefox", source="nixos", type="package")

# Search Home Manager options
nix(action="search", query="git", source="home-manager")

# Browse darwin options
nix(action="options", source="darwin", query="system.defaults")

# Search Nixvim options
nix(action="search", query="telescope", source="nixvim")

# Get Nixvim option info
nix(action="info", query="plugins.telescope.enable", source="nixvim")

# Search FlakeHub
nix(action="search", query="nixpkgs", source="flakehub")

# Get FlakeHub flake info
nix(action="info", query="NixOS/nixpkgs", source="flakehub")

# Search Noogle for Nix functions
nix(action="search", query="mapAttrs", source="noogle")

# Get Noogle function info
nix(action="info", query="lib.attrsets.mapAttrs", source="noogle")

# Browse Noogle function categories
nix(action="options", source="noogle", query="lib.strings")

# Search NixOS Wiki
nix(action="search", query="nvidia", source="wiki")

# Get Wiki page info
nix(action="info", query="Flakes", source="wiki")

# Search nix.dev documentation
nix(action="search", query="packaging tutorial", source="nix-dev")

# Search NixHub for package metadata
nix(action="search", query="nodejs", source="nixhub")

# Get detailed package info from NixHub (license, homepage, store paths)
nix(action="info", query="python", source="nixhub")

# Check binary cache status
nix(action="cache", query="hello")

# Check cache for specific version
nix(action="cache", query="python", version="3.12.0")

# Check cache for specific system
nix(action="cache", query="firefox", system="x86_64-linux")

# Get stats
nix(action="stats", source="nixos", channel="stable")

# List local flake inputs (requires Nix)
nix(action="flake-inputs", type="list")

# Browse files in a flake input
nix(action="flake-inputs", type="ls", query="nixpkgs:pkgs/by-name")

# Read a file from a flake input
nix(action="flake-inputs", type="read", query="nixpkgs:flake.nix")

nix_versions – Paketversionsverlauf

Finden Sie historische Versionen mit Nixpkgs-Commit-Hashes. Die Ausgabe enthält:

  • Paket-Metadaten (Lizenz, Homepage, Programme), sofern verfügbar

  • Plattformverfügbarkeit pro Version (Linux/macOS)

  • Nixpkgs-Commit-Hash für reproduzierbare Builds

  • Attributpfad für Nix-Ausdrücke

nix_versions(package, version, limit)

Beispiele:

# List recent versions with metadata
nix_versions(package="python", limit=5)

# Find specific version
nix_versions(package="nodejs", version="20.0.0")

Installation

Sie benötigen KEIN installiertes Nix. Dies läuft überall dort, wo Python läuft.

# Run directly (no install)
uvx mcp-nixos

# Or install
pip install mcp-nixos

Für Nix-Benutzer:

nix run github:utensils/mcp-nixos
nix profile install github:utensils/mcp-nixos

Deklarative Installation (NixOS / Home Manager / nix-darwin)

mcp-nixos ist in nixpkgs verfügbar:

# NixOS (configuration.nix)
environment.systemPackages = [ pkgs.mcp-nixos ];

# Home Manager (home.nix)
home.packages = [ pkgs.mcp-nixos ];

# nix-darwin (darwin-configuration.nix)
environment.systemPackages = [ pkgs.mcp-nixos ];

Oder verwenden Sie das Flake direkt mit dem bereitgestellten Overlay:

# flake.nix
{
 inputs = {
 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
 mcp-nixos.url = "github:utensils/mcp-nixos";
 };

 outputs = { self, nixpkgs, mcp-nixos, ... }: {
 # Example: NixOS configuration
 nixosConfigurations.myhost = nixpkgs.lib.nixosSystem {
 system = "x86_64-linux";
 modules = [{
 nixpkgs.overlays = [ mcp-nixos.overlays.default ];
 environment.systemPackages = [ pkgs.mcp-nixos ];
 }];
 };

 # Example: Home Manager standalone
 homeConfigurations.myuser = home-manager.lib.homeManagerConfiguration {
 pkgs = import nixpkgs {
 system = "x86_64-linux";
 overlays = [ mcp-nixos.overlays.default ];
 };
 modules = [{
 home.packages = [ pkgs.mcp-nixos ];
 }];
 };
 };
}

Entwicklung

nix develop # Enter dev shell
nix build # Build package
pytest tests/ # Run tests
ruff check . # Lint
ruff format . # Format
mypy mcp_nixos/ # Type check

Danksagungen

  • NixHub.io – Paketversionsverlauf

  • search.nixos.org – Offizielle NixOS-Suche

  • FlakeHub – Flake-Registry von Determinate Systems

  • Jetify – Ersteller von Devbox und NixHub

  • Noogle – Suchmaschine für Nix-Funktionen

  • NuschtOS – Statische Options-Suchinfrastruktur, die die Nixvim-Unterstützung ermöglicht

  • Nixvim – Neovim-Konfigurationsframework für Nix

Lizenz

MIT – Weil Teilen Freude bereitet.


Erstellt von James Brink. Gewartet von Mass̶o̶c̶h̶i̶s̶t̶e̶n̶ Enthusiasten, die Nix genießen.

A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
21hResponse time
3wRelease cycle
15Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/utensils/mcp-nixos'

If you have feedback or need assistance with the MCP directory API, please join our Discord server