mcp-nixos  by utensils

Model Context Protocol server for NixOS resources

Created 6 months ago
284 stars

Top 92.1% on SourcePulse

GitHubView on GitHub
Project Summary

MCP-NixOS provides a Model Context Protocol server that delivers accurate, real-time data on NixOS packages, configuration options, Home Manager settings, and nix-darwin configurations to AI assistants. This aims to prevent AI hallucinations by providing factual information from NixOS resources and version history via NixHub.io. The project is suitable for AI developers and NixOS users seeking reliable data integration.

How It Works

MCP-NixOS acts as a bridge, querying various NixOS-related web APIs and presenting the data in a standardized format. It leverages FastMCP 2.x for asynchronous operations, improving efficiency. The project has undergone significant simplification, removing complex caching and abstractions in favor of direct API access, making it more streamlined and easier to maintain.

Quick Start & Requirements

  • Installation:
    • Recommended: uvx mcp-nixos (no Nix/NixOS required)
    • Global install: pip install mcp-nixos
    • Nix users: nix run github:utensils/mcp-nixos
    • Docker: docker run --rm -i ghcr.io/utensils/mcp-nixos
  • Prerequisites: Python 3.11+ (for development), Nix (optional, for Nix-specific installation/development). No specific hardware or OS requirements beyond Python compatibility.
  • Links: No explicit quick-start or demo links provided, but the README details various usage options.

Highlighted Details

  • Version 1.0.1 features a rewrite using FastMCP 2.x for async operations and a simplified codebase.
  • Provides real-time data for over 130K NixOS packages, 22K configuration options, and more.
  • Includes tools for searching packages, options, flakes, and package version history with commit hashes.
  • Supports cross-platform usage on Linux, macOS, and Windows without requiring Nix/NixOS installation.

Maintenance & Community

The project is maintained by James Brink and a community that enjoys Nix and async/await patterns. Acknowledgments are given to NixHub.io, search.nixos.org, and Jetify. No specific community links (Discord, Slack, etc.) are provided.

Licensing & Compatibility

  • License: MIT.
  • Compatibility: Permissive for commercial use and integration with closed-source projects due to the MIT license.

Limitations & Caveats

The project relies on external services (NixHub.io, search.nixos.org), and their availability or API changes could impact functionality. When running via Nix, a "relaxed" sandbox mode might be required due to file system monitoring dependencies of the watchfiles package.

Health Check
Last Commit

1 week ago

Responsiveness

Inactive

Pull Requests (30d)
1
Issues (30d)
4
Star History
49 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Travis Fischer Travis Fischer(Founder of Agentic), and
1 more.

fastmcp by punkpeye

1.3%
3k
TypeScript framework for building MCP servers handling client sessions
Created 8 months ago
Updated 6 days ago
Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Gregor Zunic Gregor Zunic(Cofounder of Browser Use), and
2 more.

airweave by airweave-ai

0.5%
3k
Semantic MCP server for AI agents
Created 8 months ago
Updated 1 day ago
Feedback? Help us improve.