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

Nix MCP Servers

MCP Server

A nix flake for configuring Model Context Protocol (MCP) servers across supported AI assistant clients

工具数

0

提示词数

0

GitHub Stars

23

资源数

0
Claude开发工具命令行工具Claude DesktopClaudeCursor

安装说明

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

作者 / 组织

aloshy-ai

提供方

aloshy-ai

最后核验

2026/5/18 02:50

快速接入

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

详细介绍

Nix MCP服务器

![](https://aloshy.ai) ![Powered By Nix](https://nixos.org) ![Build Status](https://github.com/aloshy-ai/nix-mcp-servers/actions) ![License](./LICENSE)

一个Nix薄片,用于为Claude和Cursor等客户端声明性配置MCP(模型上下文协议)服务器。

特性

  • MCP服务器的声明性配置
  • 支持多个客户端(Claude、Cursor)
  • 支持多种服务器类型(文件系统、github)
  • 跨平台支持(NixOS、Darwin)
  • 使用Home Manager与现有的Nix配置集成

原理

此flake提供了Home Manager模块,可为不同的客户端生成MCP服务器配置文件。当您为客户端启用服务器时,将生成必要的配置并将其放置在该客户端的适当位置。

支持的服务器

  • 文件系统:提供对AI模型的文件系统访问
  • GitHub:允许GitHub访问AI模型

支持的客户

  • 克劳德:Anthropic的Claude AI助理
  • 光标:游标代码编辑器

用法

基本用法

将此薄片添加到您的家庭管理器配置中:

{
  inputs = {
    # ... your other inputs
    nix-mcp-servers.url = "github:yourusername/nix-mcp-servers";
  };

  outputs = { nixpkgs, home-manager, nix-mcp-servers, ... }: {
    homeConfigurations."yourusername" = home-manager.lib.homeManagerConfiguration {
      # ... your other configuration
      modules = [
        nix-mcp-servers.homeManagerModules.default
        
        # Your configuration
        {
          nix-mcp-servers = {
            # Enable configuration generation
            clients.generateConfigs = true;
            
            # Configure Cursor client
            clients.cursor = {
              enable = true;
              
              # Enable filesystem server for Cursor
              filesystem = {
                enable = true;
                paths = [
                  "/Users/yourusername/projects"
                  "/Users/yourusername/Documents"
                ];
              };
              
              # Enable GitHub server for Cursor
              github = {
                enable = true;
                token = "your-github-token";
              };
            };
            
            # Configure Claude client
            clients.claude = {
              enable = true;
              
              # Only enable filesystem for Claude
              filesystem = {
                enable = true;
                paths = [
                  "/Users/yourusername/projects"
                ];
              };
              
              # Don't enable GitHub for Claude
              github.enable = false;
            };
          };
        }
      ];
    };
  };
}

自定义配置路径

您可以为每个客户端自定义配置路径:

{
  nix-mcp-servers = {
    # Override base config path
    configPath = "/custom/path/to/mcp";
    
    clients.cursor = {
      enable = true;
      # Override Cursor config path
      configPath = "/custom/path/to/cursor/mcp/config.json";
      
      # ...rest of the configuration
    };
  };
}

发展

为该项目做出贡献:

  1. 克隆存储库
  2. 进行更改
  3. 测试用 nix flake check
  4. 提交PR

许可证

MIT许可证

项目概述

此Nix flake为跨不同平台和包管理器的模型控制协议(MCP)服务器提供了一个统一的配置系统。该项目:

  • 管理人工智能应用程序的MCP服务器配置
  • 处理特定于客户端的配置格式和路径
  • 适用于NixOS、nix-darwin和Home Manager
  • 提供Linux和macOS之间的跨平台兼容性
  • 支持多种服务器类型,具有特定于服务器的配置选项

安装与使用

有关详细的使用示例,请参阅我们的文档:

快速启动:

NixOS

添加到您的配置中。ix:

{
  inputs.mcp-servers.url = "github:aloshy-ai/nix-mcp-servers";
  
  outputs = { self, nixpkgs, mcp-servers, ... }: {
    nixosConfigurations.hostname = nixpkgs.lib.nixosSystem {
      # ...
      modules = [
        mcp-servers.nixosModules.default
        {
          services.mcp-servers = {
            enable = true; # Enable the entire module
            
            servers = {
              filesystem = {
                # command = "npx"; # Uses default
                filesystem = {
                  # args = [ "-y" "@modelcontextprotocol/server-filesystem" ]; # Uses default
                  extraArgs = [ "/Users/username/Desktop" "/path/to/other/allowed/dir" ]; # REQUIRED
                };
              };
              
              github = {
                env = {
                  GITHUB_PERSONAL_ACCESS_TOKEN = "xxxxxxxxxxxxxxx"; # REQUIRED through assertion
                };
              };
            };
            
            clients = {
              claude = {
                enable = true; # Using standard Nix 'enable' flag
                # clientType defaults to "claudeDesktop" based on name
                servers = [ "filesystem" "github" ];
              };
              
              cursor = {
                enable = true; # Enable Cursor configuration 
                servers = [ "filesystem" ]; # Only use filesystem server for Cursor
              };
            };
          };
        }
      ];
    };
  };
}

家庭经理

添加到您的主页。nix:

{
  imports = [
    (builtins.fetchTarball "https://github.com/aloshy-ai/nix-mcp-servers/archive/main.tar.gz").nixosModules.home-manager
  ];
  
  services.mcp-servers = {
    enable = true; # Enable the entire module
    
    servers = {
      filesystem = {
        # command = "npx"; # Uses default
        filesystem = {
          # args = [ "-y" "@modelcontextprotocol/server-filesystem" ]; # Uses default
          extraArgs = [ "/Users/username/Desktop" "/path/to/other/allowed/dir" ]; # REQUIRED
        };
      };
      
      github = {
        env = {
          GITHUB_PERSONAL_ACCESS_TOKEN = "xxxxxxxxxxxxxxx"; # REQUIRED through assertion
        };
      };
    };
    
    clients = {
      claude = {
        enable = true; # Using standard Nix 'enable' flag
        # clientType defaults to "claudeDesktop" based on name
        servers = [ "filesystem" "github" ];
      };
      
      cursor = {
        enable = true; # Enable Cursor configuration
        servers = [ "filesystem" ]; # Only use filesystem server for Cursor
      };
    };
  };
}

尼克松达尔文

添加到您的darwin-configuration.nix中:

{
  imports = [
    (builtins.fetchTarball "https://github.com/aloshy-ai/nix-mcp-servers/archive/main.tar.gz").darwinModules.default
  ];
  
  services.mcp-servers = {
    enable = true; # Enable the entire module
    
    servers = {
      filesystem = {
        # command = "npx"; # Uses default
        filesystem = {
          # args = [ "-y" "@modelcontextprotocol/server-filesystem" ]; # Uses default
          extraArgs = [ "/Users/username/Desktop" "/path/to/other/allowed/dir" ]; # REQUIRED
        };
      };
      
      github = {
        env = {
          GITHUB_PERSONAL_ACCESS_TOKEN = "xxxxxxxxxxxxxxx"; # REQUIRED through assertion
        };
      };
    };
    
    clients = {
      claude = {
        enable = true; # Using standard Nix 'enable' flag
        # clientType defaults to "claudeDesktop" based on name
        servers = [ "filesystem" "github" ];
      };
      
      cursor = {
        enable = true; # Enable Cursor configuration
        servers = [ "filesystem" ]; # Only use filesystem server for Cursor
      };
    };
  };
}

CLI工具

该套餐还提供 mcp-servers 帮助配置MCP服务器的CLI工具:

nix run github:aloshy-ai/nix-mcp-servers

测试您的设置

配置MCP服务器后,您可以验证配置是否正确应用:

对于NixOS和nix达尔文

# For NixOS
sudo nixos-rebuild test

# For nix-darwin
darwin-rebuild test

对于家庭经理

home-manager switch

然后检查配置文件是否存在:

# For Claude Desktop on macOS
cat ~/Library/Application\ Support/Claude/mcp-config.json

# For Claude Desktop on Linux
cat ~/.config/claude-desktop/mcp-config.json

# For Cursor on macOS
cat ~/Library/Application\ Support/Cursor/mcp-config.json

# For Cursor on Linux
cat ~/.config/Cursor/mcp-config.json

您应该看到一个JSON配置,其中包含您配置的服务器信息。

模块结构

该项目使用模块化结构来处理不同平台的配置:

  • 常用选项:定义服务器和客户端的核心模块选项
  • 平台适配器:为NixOS、Darwin和Home Manager实现特定于平台的配置
  • 库函数:提供路径处理、平台检测和配置生成的辅助函数

项目结构

此项目使用 片状零件 对于模块化结构:

  • modules/ -NixOS、Darwin和Home Manager模块

- common/ -共享模块定义和选项 - nixos/ -NixOS特定实现 - darwin/ -Darwin具体实现 - home-manager/ -Home Manager实施

  • lib/ -模块使用的实用功能

- clients.nix -客户端特定配置处理 - servers.nix -服务器配置格式化 - platforms.nix -平台检测和路径实用程序 - paths.nix -路径操纵功能

  • docs/ -文件

- examples/ -使用示例 - modules/ -模块文档

文档

您还可以直接使用以下工具生成和查看选项文档:

nix run github:aloshy-ai/nix-mcp-servers#view-docs

GitHub页面文档

此存储库配置为自动构建文档并将其部署到GitHub Pages。文档由 docs 在flake中打包,并在将更改推送到主分支时部署。

部署由 和平/行动gh页 动作,创建 gh-pages 分支机构与文件。这种方法不需要对GitHub Pages环境进行任何手动配置。

部署后,生成文档的URL将显示在GitHub存储库详细信息中。

目录标签

目录标签

Claude开发工具命令行工具developer-toolsnixaimcpdarwinartificial-intelligencenixpkgsnix-darwin本地部署Nix配置MCP服务器AI工具集成声明式配置跨平台支持

支持客户端

Claude DesktopClaudeCursor

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP