Development
Command
/test-tools
Test MCP NixOS Tools (project)
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/test-tools
Context preview
What this command does when you run it.
Test MCP NixOS Tools (project)
Command definition
test-tools.mdallowed-tools: mcp__nixos__nix, mcp__nixos__nix_versions, Task
description: Test MCP NixOS Tools (project)
Test MCP NixOS Tools
**CRITICAL INSTRUCTIONS:** 1. You MUST dispatch ALL test groups below to subagents running IN PARALLEL 2. Each subagent MUST run EVERY test in its assigned group - no skipping 3. After ALL subagents complete, compile a SINGLE summary table with pass/fail for EVERY test 4. Do NOT stop early - all 8 test groups must be executed
Dispatch Strategy
Launch these 8 subagents IN PARALLEL (single message with multiple Task tool calls):
---
Group 1: Core NixOS Source Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for the core NixOS source. Run EVERY test below and record pass/fail:
SEARCH:
- action=search, source=nixos, type=packages, query=firefox
- action=search, source=nixos, type=options, query=nginx
- action=search, source=nixos, type=programs, query=vim, limit=3
- action=search, source=nixos, channel=stable, query=firefox, limit=3
- action=search, source=nixos, query=xyznonexistent12345 (expect "No packages found")
DOTTED/NAMESPACED PACKAGE SEARCH (issue #118 regression):
- action=search, source=nixos, type=packages, query=kdePackages.qt6ct (expect results containing qt6ct)
- action=search, source=nixos, type=packages, query=python314Packages.matplotlib (expect results containing matplotlib)
- action=search, source=nixos, type=packages, query=rocmPackages.clang (expect results containing clang)
- action=search, source=nixos, type=packages, query=llvmPackages_22.systemLibcxxClang (expect results; may match clang variants)
- action=search, source=nixos, type=packages, query=flang (expect exact match - control test)
INFO:
- action=info, source=nixos, type=package, query=firefox
- action=info, source=nixos, type=option, query=services.nginx.enable
- action=info, source=nixos, query=nonexistentpkg123 (expect NOT_FOUND)
- action=info, source=nixos, type=package, query=kdePackages.qt6ct (issue #118: should find qt6ct via attr path)
- action=info, source=nixos, type=package, query=qt6ct (should show attribute path in output)
STATS:
- action=stats, source=nixos
CHANNELS:
- action=channels
Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 2: Home Manager & Darwin Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Home Manager and Darwin sources. Run EVERY test below:
HOME-MANAGER SEARCH:
- action=search, source=home-manager, query=git (expect programs.git.* in the TOP results, ranked above *.enableGitIntegration substring matches - ranking regression, issue #190)
- action=search, source=home-manager, query=programs.git.enable (expect exact match ranked first)
HOME-MANAGER INFO:
- action=info, source=home-manager, query=programs.git.enable
HOME-MANAGER STATS:
- action=stats, source=home-manager (expect Total options > 5,000)
HOME-MANAGER OPTIONS:
- action=options, source=home-manager, query=programs.git
- action=options, source=home-manager (no query - list all categories)
DARWIN SEARCH:
- action=search, source=darwin, query=dock (expect system.defaults.dock.* in the TOP results - ranking regression, issue #190)
DARWIN INFO:
- action=info, source=darwin, query=system.defaults.dock.autohide
DARWIN STATS:
- action=stats, source=darwin
DARWIN OPTIONS:
- action=options, source=darwin, query=system
Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 3: Flakes & FlakeHub Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Flakes and FlakeHub sources. Run EVERY test below:
FLAKES SEARCH:
- action=search, source=flakes, query=atuin
FLAKES STATS:
- action=stats, source=flakes
FLAKES INFO (expect error):
- action=info, source=flakes, query=test (expect "flakes don't support info")
FLAKEHUB SEARCH:
- action=search, source=flakehub, query=nixpkgs
FLAKEHUB INFO:
- action=info, source=flakehub, query=NixOS/nixpkgs
FLAKEHUB STATS:
- action=stats, source=flakehub
FLAKE-INPUTS (requires nix installed):
- action=flake-inputs, type=list
- action=flake-inputs, type=ls, query=nixpkgs
- action=flake-inputs, type=ls, query=nixpkgs:pkgs/by-name
- action=flake-inputs, type=read, query=nixpkgs:flake.nix
- action=flake-inputs, type=read, query=flake-parts:flake.nix, limit=50
- action=flake-inputs, type=ls (missing query - expect error)
- action=flake-inputs, type=read, query=nixpkgs (missing file path - expect error)
- action=flake-inputs, type=ls, query=nonexistent-input (expect NOT_FOUND)
Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 4: Nixvim, NVF & Wiki Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Nixvim, NVF, and Wiki sources. Run EVERY test below:
NIXVIM SEARCH:
- action=search, source=nixvim, query=telescope
NIXVIM INFO:
- action=info, source=nixvim, query=plugins.telescope.enable
NIXVIM STATS:
- action=stats, source=nixvim
NIXVIM OPTIONS:
- action=options, source=nixvim, query=plugins
NVF SEARCH:
- action=search, source=nvf, query=languages.nix (expect vim.languages.nix.* options)
- action=search, source=nvf, query=programs.nvf.vim.languages.nix.enable (wrapper path - expect results using canonical vim.* form)
- action=search, source=nvf, query=xyznonexistent12345 (expect "No NVF options found")
NVF INFO:
- action=info, source=nvf, query=vim.languages.nix.enable (canonical path)
- action=info, source=nvf, query=programs.nvf.settings.vim.languages.nix.enable (module wrapper path - expect "NVF Option: vim.languages.nix.enable" with Documentation link)
- action=info, source=nvf, query=vim.nonexistent.xyz (expect NOT_FOUND)
NVF STATS:
- action=stats, source=nvf (expect "Documentation track: unstable" and Total options > 2,000)
NVF BROWSE:
- action=browse, source=nvf (no query - expect categories including vim.languages)
- action=browse, source=nvf, query=programs.nvf.vim.languages.nix (wrapped prefix - expec
Read more
allowed-tools: mcp__nixos__nix, mcp__nixos__nix_versions, Task description: Test MCP NixOS Tools (project)
Test MCP NixOS Tools
**CRITICAL INSTRUCTIONS:** 1. You MUST dispatch ALL test groups below to subagents running IN PARALLEL 2. Each subagent MUST run EVERY test in its assigned group - no skipping 3. After ALL subagents complete, compile a SINGLE summary table with pass/fail for EVERY test 4. Do NOT stop early - all 8 test groups must be executed
Dispatch Strategy
Launch these 8 subagents IN PARALLEL (single message with multiple Task tool calls):
---
Group 1: Core NixOS Source Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for the core NixOS source. Run EVERY test below and record pass/fail: SEARCH: - action=search, source=nixos, type=packages, query=firefox - action=search, source=nixos, type=options, query=nginx - action=search, source=nixos, type=programs, query=vim, limit=3 - action=search, source=nixos, channel=stable, query=firefox, limit=3 - action=search, source=nixos, query=xyznonexistent12345 (expect "No packages found") DOTTED/NAMESPACED PACKAGE SEARCH (issue #118 regression): - action=search, source=nixos, type=packages, query=kdePackages.qt6ct (expect results containing qt6ct) - action=search, source=nixos, type=packages, query=python314Packages.matplotlib (expect results containing matplotlib) - action=search, source=nixos, type=packages, query=rocmPackages.clang (expect results containing clang) - action=search, source=nixos, type=packages, query=llvmPackages_22.systemLibcxxClang (expect results; may match clang variants) - action=search, source=nixos, type=packages, query=flang (expect exact match - control test) INFO: - action=info, source=nixos, type=package, query=firefox - action=info, source=nixos, type=option, query=services.nginx.enable - action=info, source=nixos, query=nonexistentpkg123 (expect NOT_FOUND) - action=info, source=nixos, type=package, query=kdePackages.qt6ct (issue #118: should find qt6ct via attr path) - action=info, source=nixos, type=package, query=qt6ct (should show attribute path in output) STATS: - action=stats, source=nixos CHANNELS: - action=channels Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 2: Home Manager & Darwin Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Home Manager and Darwin sources. Run EVERY test below: HOME-MANAGER SEARCH: - action=search, source=home-manager, query=git (expect programs.git.* in the TOP results, ranked above *.enableGitIntegration substring matches - ranking regression, issue #190) - action=search, source=home-manager, query=programs.git.enable (expect exact match ranked first) HOME-MANAGER INFO: - action=info, source=home-manager, query=programs.git.enable HOME-MANAGER STATS: - action=stats, source=home-manager (expect Total options > 5,000) HOME-MANAGER OPTIONS: - action=options, source=home-manager, query=programs.git - action=options, source=home-manager (no query - list all categories) DARWIN SEARCH: - action=search, source=darwin, query=dock (expect system.defaults.dock.* in the TOP results - ranking regression, issue #190) DARWIN INFO: - action=info, source=darwin, query=system.defaults.dock.autohide DARWIN STATS: - action=stats, source=darwin DARWIN OPTIONS: - action=options, source=darwin, query=system Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 3: Flakes & FlakeHub Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Flakes and FlakeHub sources. Run EVERY test below: FLAKES SEARCH: - action=search, source=flakes, query=atuin FLAKES STATS: - action=stats, source=flakes FLAKES INFO (expect error): - action=info, source=flakes, query=test (expect "flakes don't support info") FLAKEHUB SEARCH: - action=search, source=flakehub, query=nixpkgs FLAKEHUB INFO: - action=info, source=flakehub, query=NixOS/nixpkgs FLAKEHUB STATS: - action=stats, source=flakehub FLAKE-INPUTS (requires nix installed): - action=flake-inputs, type=list - action=flake-inputs, type=ls, query=nixpkgs - action=flake-inputs, type=ls, query=nixpkgs:pkgs/by-name - action=flake-inputs, type=read, query=nixpkgs:flake.nix - action=flake-inputs, type=read, query=flake-parts:flake.nix, limit=50 - action=flake-inputs, type=ls (missing query - expect error) - action=flake-inputs, type=read, query=nixpkgs (missing file path - expect error) - action=flake-inputs, type=ls, query=nonexistent-input (expect NOT_FOUND) Return a markdown table with Test | Expected | Actual | Status (PASS/FAIL) for each test.
---
Group 4: Nixvim, NVF & Wiki Tests
**Subagent prompt:**
Test the mcp__nixos__nix tool for Nixvim, NVF, and Wiki sources. Run EVERY test below: NIXVIM SEARCH: - action=search, source=nixvim, query=telescope NIXVIM INFO: - action=info, source=nixvim, query=plugins.telescope.enable NIXVIM STATS: - action=stats, source=nixvim NIXVIM OPTIONS: - action=options, source=nixvim, query=plugins NVF SEARCH: - action=search, source=nvf, query=languages.nix (expect vim.languages.nix.* options) - action=search, source=nvf, query=programs.nvf.vim.languages.nix.enable (wrapper path - expect results using canonical vim.* form) - action=search, source=nvf, query=xyznonexistent12345 (expect "No NVF options found") NVF INFO: - action=info, source=nvf, query=vim.languages.nix.enable (canonical path) - action=info, source=nvf, query=programs.nvf.settings.vim.languages.nix.enable (module wrapper path - expect "NVF Option: vim.languages.nix.enable" with Documentation link) - action=info, source=nvf, query=vim.nonexistent.xyz (expect NOT_FOUND) NVF STATS: - action=stats, source=nvf (expect "Documentation track: unstable" and Total options > 2,000) NVF BROWSE: - action=browse, source=nvf (no query - expect categories including vim.languages) - action=browse, source=nvf, query=programs.nvf.vim.languages.nix (wrapped prefix - expec
Ships withmcp-nixos
MCP-NixOS - Model Context Protocol Server for NixOS resources
Get the whole plugin
Stats
784
Stars
42
Forks
Active
Maintenance
Python
Language
MIT
License
4d ago
Last commit
1y ago
Created
Repo: utensils/mcp-nixos

