NixOS configuration advisor using MCP tools. Use when helping with NixOS/Home Manager configs, searching packages/options, or providing NixOS-specific guidance. Validates packages exist before suggesting them.
Provides expert guidance for NixOS and Home Manager configurations using the NixOS MCP server tools.
The nixos MCP server provides these tools:
nixos_search - Search NixOS packages, options, programs, or flakesnixos_info - Get detailed info about a package or optionnixos_channels - List available NixOS channelsnixos_stats - Get statistics for a channelhome_manager_search - Search Home Manager optionshome_manager_info - Get detailed info about Home Manager optiondarwin_search - Search nix-darwin options (macOS)darwin_info - Get info about nix-darwin optionALWAYS follow this process when suggesting packages or options:
User asks: "Add Firefox"
nixos_search(query="firefox", search_type="packages")nixos_info(name="firefox", type="package")environment.systemPackages = with pkgs; [
firefox
];
sudo nixos-rebuild switch --flake .#hostnameUser asks: "Enable SSH"
nixos_search(query="openssh", search_type="options")nixos_info(name="services.openssh.enable", type="option")services.openssh = {
enable = true;
settings = {
PermitRootLogin = "no";
PasswordAuthentication = false;
};
};
User asks: "Configure git"
home_manager_search(query="git")home_manager_info(name="programs.git.enable")programs.git = {
enable = true;
userName = "Your Name";
userEmail = "your.email@example.com";
};
Use nixos_channels() to see available channels and their status.
pkgs.unstable.package syntax when needed for newer versionsDetect system type from context:
sudo nixos-rebuild switch --flake .#hostnamedarwin-rebuild switch --flake .#hostnamehome-manager switch --flake .#user@hostnameUser's typical flake structure:
.
├── flake.nix
├── host/
│ ├── nixos/
│ └── darwin/
├── home/
│ ├── common/
│ └── users/
└── modules/
nixos_search(query="package-name", search_type="packages", limit=10)
nixos_search(query="service", search_type="options", limit=20)
nixos_info(name="package-name", type="package")
home_manager_info(name="programs.package.enable")
nixos_channels()
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer