Token导航 LogoToken导航TokenDH.com
Nix Tools MCP logo
开发工具stdio官方级别未说明来源级核验

Nix Tools MCP

MCP Server

一个提供临时访问nixpkgs中任何工具的MCP服务器,支持执行命令、搜索包和验证包元数据。

工具数

3

提示词数

0

GitHub Stars

4

资源数

0
包管理PythonClaude开发工具Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

andrewyazura

提供方

andrewyazura

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python server.py # Run server

详细介绍

nix工具mcp

MCP服务器,为Claude Code提供对nixpkgs中任何工具的临时访问。

特性

  • nix_run -使用临时nix包执行命令
  • nix_search -在nixpkgs中搜索软件包
  • nix_check_package -验证包是否存在并获取元数据

技术栈

  • Python 3.14 -使用JIT编译器的最新Python
  • 紫外线 -快速Python包安装程序(比pip快10-100倍)
  • FastMCP -现代MCP服务器框架
  • 镍片 -可复制包装

需求

  • 尼克斯 启用薄片
  • 家庭经理 (用于声明性安装)

通过添加以下内容启用薄片 ~/.config/nix/nix.conf/etc/nix/nix.conf:

experimental-features = nix-command flakes

安装

选项1:家庭管理器模块(推荐)

添加薄片作为输入,并使用Home Manager模块:

# flake.nix
{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    home-manager.url = "github:nix-community/home-manager";
    nix-tools-mcp.url = "github:andrewyazura/nix-tools-mcp";
  };

  outputs = { self, nixpkgs, home-manager, nix-tools-mcp, ... }: {
    homeConfigurations.your-username = home-manager.lib.homeManagerConfiguration {
      modules = [
        nix-tools-mcp.homeManagerModules.default
        {
          programs.claude-code = {
            enable = true;
            mcpServers.nix-tools.enable = true;
          };
        }
      ];
    };
  };
}

选项2:直接包参考

直接在Home Manager配置中引用该包:

# flake.nix
{
  inputs = {
    nix-tools-mcp.url = "github:andrewyazura/nix-tools-mcp";
  };

  # In your home-manager configuration:
  programs.claude-code = {
    enable = true;
    mcpServers.nix-tools = {
      type = "stdio";
      command = "${nix-tools-mcp.packages.${pkgs.system}.default}/bin/nix-tools-mcp";
      args = [];
    };
  };
}

选项3:尝试不安装

直接测试MCP服务器:

nix run github:andrewyazura/nix-tools-mcp

方案4:地方发展

克隆并在本地使用:

git clone https://github.com/YOUR_USERNAME/nix-tools-mcp.git
cd nix-tools-mcp
nix develop  # Enter dev shell
uv sync      # Install dependencies
python server.py  # Run server

用法示例

安装后,启动一个新的Claude Code会话并尝试:

You: Use cowsay to say hello
Claude: [calls nix_run(["cowsay"], "cowsay hello")]
     ___________
    
     -----------
            \   ^__^
             \  (oo)\_______
                (__)\       )\/\
                    ||----w |
                    ||     ||

You: What packages can process YAML?
Claude: [calls nix_search("yaml")]
Results: yq, python3Packages.pyyaml, ruby3Packages.yaml, ...

You: Download https://api.github.com and extract the current_user_url field
Claude: [calls nix_run(["curl", "jq"], "curl -s https://api.github.com | jq .current_user_url")]
"https://api.github.com/user"

运作原理

  1. 首次运行:在以下位置创建缓存的venv ~/.cache/nix-tools-mcp/
  2. 依赖项安装:跑步 uv sync (使用Python 3.14时约为15毫秒)
  3. 后续运行:即时-重用缓存的venv
  4. 临时工具:通过以下方式提取包裹 nix shell nixpkgs#pkg,由Nix GC清理

项目结构

.
├── server.py               # MCP server implementation
├── pyproject.toml          # Python dependencies
├── uv.lock                 # Locked dependency versions
├── flake.nix               # Nix flake definition
├── flake.lock              # Nix flake lock file
└── modules/
    └── home-manager.nix    # Home Manager module

可用输出

  • packages.default -MCP服务器包
  • apps.default -跑步 nix run
  • devShells.default -发展环境
  • homeManagerModules.default -Home Manager模块
  • overlays.default -Nixpkgs覆盖层

支持的平台

  • ✅ macOS(aarch64达尔文,x86_64达尔文)
  • ✅ Linux(aarch64 Linux,x86_64-Linux)

贡献

欢迎投稿!请随时打开问题或撤回请求。

许可证

麻省理工学院

目录标签

目录标签

包管理PythonClaude开发工具nix工具本地部署MCP服务器

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP