首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
mcp-nixos2025-05-300分享
github
MCP-NixOS 是一个模型上下文协议服务器,它提供关于 NixOS 软件包、选项、Home Manager 和 nix-darwin 配置的实时、准确信息,防止 AI 助手对 NixOS 资源产生错误想象,并使它们能够提供基于事实的系统配置指导。
By utensils
2025-05-300
github
详情内容

MCP-NixOS - 因为你的AI助手不应该对软件包产生幻觉

CI
codecov
PyPI
Python Versions
smithery badge
Verified on MseeP

🎉 重构完成:1.0.0 版本代表了一次彻底的重写,极大地简化了一切。我们移除了所有复杂的缓存、抽象和“企业级”模式。因为有时候,少即是多,而多只是炫耀。

快速开始(因为你现在就想用它)

🚨 不需要 Nix/NixOS! 这个工具可以在任何系统上运行——Windows、macOS、Linux。你只是在查询 Web API。

选项 1:使用 uvx(推荐给大多数用户)

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

选项 2:使用 Nix(适合 Nix 用户)

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

就这样。你的 AI 助手现在可以访问真实的 NixOS 数据,而不是编造东西。不客气。

这是什么东西?

MCP-NixOS 是一个模型上下文协议服务器,为你的 AI 助手提供准确、实时的信息,包括:

  • NixOS 软件包(超过 13 万个实际存在的软件包)
  • 配置选项(超过 2.2 万种方式让你的系统崩溃)
  • Home Manager 设置(超过 4 千个选项,适合高级用户)
  • nix-darwin 配置(超过 1 千个 macOS 设置,Apple 不希望你碰)
  • 软件包版本历史 通过 NixHub.io(找到那个古老的 Ruby 2.6 并附带提交哈希)

你真正关心的工具

🔍 NixOS 工具

  • nixos_search(query, type, channel) - 搜索软件包、选项或程序
  • nixos_info(name, type, channel) - 获取软件包/选项的详细信息
  • nixos_stats(channel) - 软件包和选项的数量统计
  • nixos_channels() - 列出所有可用的频道
  • nixos_flakes_search(query) - 搜索社区 Flakes
  • nixos_flakes_stats() - Flake 生态系统的统计信息

📦 版本历史工具(新功能!)

  • nixhub_package_versions(package, limit) - 获取版本历史并附带提交哈希
  • nixhub_find_version(package, version) - 智能搜索特定版本

🏠 Home Manager 工具

  • home_manager_search(query) - 搜索用户配置选项
  • home_manager_info(name) - 获取选项详细信息(附带建议!)
  • home_manager_stats() - 查看可用选项
  • home_manager_list_options() - 浏览所有 131 个类别
  • home_manager_options_by_prefix(prefix) - 按前缀探索选项

🍎 Darwin 工具

  • darwin_search(query) - 搜索 macOS 选项
  • darwin_info(name) - 获取选项详细信息
  • darwin_stats() - macOS 配置统计信息
  • darwin_list_options() - 浏览所有 21 个类别
  • darwin_options_by_prefix(prefix) - 探索 macOS 选项

安装选项

记住:你不需要安装 Nix/NixOS! 这个工具可以在任何能运行 Python 的地方运行。

适合普通人(Windows/Mac/Linux)

# 直接用 uvx 运行(无需安装)
uvx mcp-nixos

# 或者全局安装
pip install mcp-nixos
uv pip install mcp-nixos

适合 Nix 用户(你知道你是谁)

# 无需安装直接运行
nix run github:utensils/mcp-nixos

# 安装到 profile
nix profile install github:utensils/mcp-nixos

值得一提的功能

🚀 1.0.0 版本:大简化

  • 大幅减少代码 - 移除了数千行复杂代码
  • 100% 功能保留 - 一切仍然可用
  • 0% 缓存损坏 - 因为我们完全移除了缓存
  • 无状态操作 - 无需清理文件
  • 直接 API 访问 - 没有抽象的废话

📊 你得到什么

  • 实时数据 - 始终最新,永不过时
  • 纯文本输出 - 人类和 AI 都可读
  • 智能建议 - 当你拼错选项名称时提供帮助
  • 跨平台 - 支持 Linux、macOS,甚至 Windows
  • 无需配置 - 开箱即用™

🎯 关键改进

  • 动态频道解析 - stable 始终指向当前稳定版
  • 增强的错误信息 - 当出错时提供实际帮助
  • 去重的 Flake 结果 - 不再有重复的垃圾信息
  • 版本感知搜索 - 找到你需要的旧 Ruby 版本
  • 类别浏览 - 系统地探索选项

给开发者(勇敢的人)

使用 Nix(受祝福的道路)

nix develop
menu  # 显示所有可用命令

# 常见任务
run        # 启动服务器
run-tests  # 运行所有测试
lint       # 格式化并检查代码
typecheck  # 检查类型

不使用 Nix(痛苦的道路)

pip install -e ".[dev]"
pytest tests/
black mcp_nixos/
flake8 mcp_nixos/

测试哲学

  • 367 个测试 真正测试功能
  • 真实 API 调用 因为模拟是给胆小鬼的
  • 纯文本验证 确保没有 XML 泄漏
  • 跨平台测试 因为 Windows 用户也值得痛苦

环境变量

只有一个。我们现在是极简主义者:

变量 描述 默认值
ELASTICSEARCH_URL NixOS API 端点 https://search.nixos.org/backend

致谢

该项目查询了多个优秀的服务:

注意:这些服务并未认可此工具。我们只是感激的 API 用户。

许可证

MIT - 因为分享是关怀,即使代码让人痛苦。


由 James Brink 创建,由享受 Nix 的受虐狂维护。

特别感谢 NixOS 项目,它创造了一个同时是最好的也是最糟糕的操作系统。

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档