mcp-nix

mcp-nix

Access the Nix ecosystem (Nixpkgs, NixOS, Home Manager, nix-darwin, nixvim, nixhub...)

Category
Visit Server

README

A tasteful MCP server for the Nix ecosystem

Tests

Ecosystem coverage

  • Nixpkgs
  • NixOS
  • Home Manager
  • Nixvim
  • nix-darwin
  • NixHub
  • Noogle (Nix standard library)

Without additional configuration, only Nixpkgs and NixOS categories are included.

Installation

Use the following configuration to add the MCP server to your client:

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

Using Nix

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

Tools

  • Categories included by default:
Category ID Tools
Nixpkgs nixpkgs search_nixpkgs, show_nixpkgs_package, read_derivation[^a]
NixOS nixos search_nixos_options, show_nixos_option, list_nixos_channels, read_nixos_module[^a]
  • Categories excluded by default
Category ID Tools
Home Manager homemanager search_homemanager_options, show_homemanager_option, list_homemanager_releases, read_home_module[^a]
Nixvim nixvim search_nixvim_options, show_nixvim_option, read_nixvim_declaration[^a]
nix-darwin nix-darwin search_nix_darwin_options, show_nix_darwin_option, read_nix_darwin_declaration[^a]
NixHub nixhub list_package_versions, find_nixpkgs_commit_with_package_version
Noogle noogle search_nix_stdlib, help_for_stdlib_function

[^a]: Requires explicit --include even when the category is enabled.

Including tools

  • By category
    • Pass the category's ID as an argument: --homemanager --nixvim
  • By name
    • Use --include: --include=list_package_versions,...

Excluding tools

  • By category
    • Prefix the category's ID by "no-": --no-nixos
  • By name
    • Use --exclude: --exclude=find_nixpkgs_commit_with_package_version,...

List of tools

Tool Usage
nixpkgs
search_nixpkgs Search for Nixpkgs packages by name or description
show_nixpkgs_package Get details for a Nixpkgs package by exact name
read_derivation[^a] Read the Nix source code for a package derivation
nixos
search_nixos_options Search NixOS configuration options
show_nixos_option Get details for a NixOS option, or list children if given a prefix
list_nixos_channels List available NixOS release channels
read_nixos_module[^a] Read the Nix source code for a NixOS option declaration
homemanager
search_homemanager_options Search Home Manager options for user environment configuration
show_homemanager_option Get details for a Home Manager option, or list children if given a prefix
list_homemanager_releases List available Home Manager releases
read_home_module[^a] Read the Nix source code for a Home Manager option declaration
nixvim
search_nixvim_options Search NixVim configuration options
show_nixvim_option Get details for a NixVim option, or list children if given a prefix
read_nixvim_declaration[^a] Get the declaration reference for a NixVim option
nix-darwin
search_nix_darwin_options Search nix-darwin configuration options for macOS
show_nix_darwin_option Get details for a nix-darwin option, or list children if given a prefix
read_nix_darwin_declaration[^a] Get the declaration reference for a nix-darwin option
nixhub
list_package_versions List all available versions for a Nixpkgs package
find_nixpkgs_commit_with_package_version Get the nixpkgs commit hash for a specific package version
noogle
search_nix_stdlib Search Nix standard library functions by name or type signature
help_for_stdlib_function Get detailed help for a Nix standard library function
[^a]: Requires explicit --include even when the category is enabled.

Contributing

Read CONTRIBUTING.md

Credits

Thanks to the NixOS Search Team, ExtraNix, NüschtOS, NixHub, Noogle for maintaining the backends and pipeline this server uses and for the Nix community for making any of this possible.

License

GPLv3: License

<!-- mcp-name: io.github.felixdorn/mcp-nix -->

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured