mcpField
M
Mcp Nix Ecosystem (nixos, Nix, Home Manager,... )

Mcp Nix Ecosystem (nixos, Nix, Home Manager,... )

ローカル
github.com/felixdorn開発ツール742 週間前に更新

Mcp Nix Ecosystem (nixos, Nix, Home Manager,... ) について

Mcp Nix Ecosystemは、Nixパッケージ、設定オプション、標準ライブラリ関数を検索するMCPサーバーです。派生定義やオプション宣言、nixpkgsのバージョン情報も確認できます。

主な機能

  1. 01Nixpkgsのパッケージ検索と派生定義の参照
  2. 02Nixエコシステム各プロジェクトのオプション検索
  3. 03オプション詳細と宣言の確認
  4. 04パッケージのバージョンと対応するnixpkgsコミットの検索
  5. 05Nix標準ライブラリ関数の検索

活用シーン

  1. 01Nixpkgsのパッケージを探して派生定義を確認
  2. 02NixOSやHome Managerの設定オプションを検索
  3. 03オプション宣言や標準ライブラリ関数の説明を確認
  4. 04指定バージョンを含むnixpkgsコミットを特定

MCP 対応

パッケージ、オプション、バージョン、標準ライブラリの検索ツールをMCPクライアントに提供します。--exclude引数で特定のツールを無効にできます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"nix": {
"command": "uvx",
"args": [
"mcp-nix"
]
}
}
}
起動コマンドuvx mcp-nix

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcp-nix

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Nix* 用の完全な MCP サーバー

テスト

特長

  • Nixpkgs を検索し、パッケージの derivation を読み取る
  • 幅広いオプションを網羅
    • NixOS
    • Home Manager
    • Nix Darwin
    • Nixvim
    • Impermanence
    • MicroVM.nix
    • nix-nomad
    • simple-nixos-mailserver
    • sops-nix
    • nixos-hardware
    • disko
  • Nix 標準ライブラリを検索し、関数定義を読み取る
  • パッケージが存在する nixpkgs のバージョンを検索する

インストール

以下の設定を使用して、MCP サーバーをクライアントに追加します。

uvx を使用する場合:

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

Cursor に追加

nix run を使用する場合:

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

Cursor に追加

宣言的に設定する場合:

flake input を追加します。

{
  inputs.mcp-nix.url = "github:felixdorn/mcp-nix";
}

次に、パッケージを参照します。

{
  command = "${inputs.mcp-nix.packages.${system}.default}/bin/mcp-nix";
}
ツール
ツール説明
search_nixpkgsNixpkgs パッケージを検索します
read_derivationパッケージのソースコードを読み取ります
search_options複数のプロジェクトのオプションを検索します
list_versionsプロジェクトで利用可能なバージョンを一覧表示します
show_option_detailsオプションの詳細を取得するか、子項目を一覧表示します
read_option_declarationオプションのソースコードを読み取ります
find_nixpkgs_commit_with_package_versionバージョンに対応する nixpkgs のコミットを取得します。見つからない場合は利用可能なバージョンを表示します(NixHub)
search_nix_stdlibNix 標準ライブラリの関数を検索します(Noogle)
help_for_stdlib_function標準ライブラリ関数のヘルプを取得します(Noogle)
ツールの除外

--exclude を使用して、特定のツールを無効にします。

{
  "mcpServers": {
    "nix": {
      "command": "uvx",
      "args": ["mcp-nix", "--exclude=read_derivation,read_option_declaration"]
    }
  }
}
コントリビューション

CONTRIBUTING.md をお読みください。

謝辞

バックエンドとこのサーバーが使用するパイプラインを保守している NixOS Search Team、ExtraNix、NüschtOS、nix-nomad、NixHub、Noogle に感謝します。また、これらすべてを実現してくれた Nix コミュニティにも感謝します。

ライセンス

GPLv3:ライセンス

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。