The MCP-NixOS server provides accurate, real-time access to NixOS, Home Manager, and nix-darwin resources for AI assistants.
Search capabilities: Search for NixOS packages, options, or programs, including version-specific data across different channels (unstable, stable, and older)
Detailed information: Retrieve comprehensive details about specific NixOS packages and options
Home Manager support: Search configuration options, get detailed information, list top-level categories, and search by prefix
nix-darwin access: Interact with macOS configurations, including searching options and retrieving information about system and services
Statistics: Obtain usage data about available NixOS packages/options, Home Manager options, and nix-darwin configurations
Structured searches: Perform customizable searches with limits and channel preferences
This server helps AI assistants provide accurate NixOS-related information, reducing hallucinations and incorrect package suggestions.
Integrates with Codecov for tracking code coverage statistics from the project's test suite, with links to coverage reports.
Connects to the NixOS Elasticsearch API to query package information and system options with field-specific search boosts, multiple channel support, and error handling.
Offers specific integration for Firefox configuration in Home Manager, enabling access to Firefox profiles and settings information through dedicated search and info tools.
Provides access to Git configuration options in Home Manager, allowing AI assistants to retrieve information about Git username and other configuration settings.
Provides nix-darwin integration for macOS configuration options, allowing AI assistants to search and retrieve information about system defaults, services, and other macOS-specific settings that can be configured through nix-darwin.
Provides access to NGINX service configuration options in NixOS, allowing AI assistants to retrieve information about NGINX service settings.
Provides real-time access to NixOS packages and system options via the Elasticsearch API, allowing AI assistants to search and retrieve accurate information about available packages, their metadata, and system configuration options across multiple NixOS channels.
Enables access to PostgreSQL service configuration options in NixOS, allowing AI assistants to search and retrieve information about PostgreSQL service settings.
Provides integration with PyPI for package distribution, with version tracking and Python version compatibility information.
Offers integration with the yabai window manager configuration options in nix-darwin, providing access to service settings for macOS window management.
Provides access to Zsh shell configuration options in Home Manager, allowing AI assistants to search and retrieve information about Zsh settings.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-nixossearch for neovim packages in nixos"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP-NixOS - Because Your AI Shouldn't Hallucinate Package Names
Quick Start
🚨 No Nix/NixOS Required! Works on any system - Windows, macOS, Linux. You're just querying APIs.
Option 1: uvx (Recommended)
Option 2: Nix
Option 3: Docker
Your AI now has access to real NixOS data instead of making things up. You're welcome.
Related MCP server: Notion MCP Server
What Is This?
An MCP server providing accurate, real-time information about:
NixOS packages - 130K+ packages that actually exist
NixOS options - 23K+ ways to configure your system
Home Manager - 5K+ options for dotfile enthusiasts
nix-darwin - 1K+ macOS settings Apple doesn't document
Nixvim - 5K+ options for Neovim configuration via NuschtOS search
Package versions - Historical versions with commit hashes via NixHub.io
The Tools
Just two. We consolidated 17 tools into 2 because your AI's context window isn't infinite.
nix - Unified Query Tool
One tool to rule them all:
Action | What it does |
| Search packages, options, programs, or flakes |
| Get detailed info about a package or option |
| Get counts and categories |
| Browse Home Manager/Darwin options by prefix |
| List available NixOS channels |
Source | What it queries |
| Packages, options, programs |
| Home Manager options |
| nix-darwin options |
| Community flakes |
| Nixvim Neovim configuration options |
Examples:
nix_versions - Package Version History
Find historical versions with nixpkgs commit hashes:
Examples:
Installation
You DON'T need Nix installed. This runs anywhere Python runs.
For Nix users:
Development
With Nix
Without Nix
Local MCP Testing
Create .mcp.json in your project:
Troubleshooting
Nix Sandbox Error
Or add to /etc/nix/nix.conf:
Acknowledgments
NixHub.io - Package version history
search.nixos.org - Official NixOS search
Jetify - Creators of Devbox and NixHub
NuschtOS - Static option search infrastructure powering Nixvim support
Nixvim - Neovim configuration framework for Nix
License
MIT - Because sharing is caring.
Created by James Brink. Maintained by mass̶o̶c̶h̶i̶s̶t̶s̶ enthusiasts who enjoy Nix.