An open API service indexing awesome lists of open source software.

https://github.com/lukasl-dev/rime

An MCP server for NixOS users.
https://github.com/lukasl-dev/rime

mcp mcp-server nix nixos

Last synced: 3 months ago
JSON representation

An MCP server for NixOS users.

Awesome Lists containing this project

README

          

# rime



Rust


NixOS


A minimal [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server for Nix tooling, written in Rust.

## Tools

❄️ Nix

- `nix_evaluate`: Evaluate a Nix expression.
- `nix_log`: Get build log for an installable.
- `nix_packages_search`: Search packages in an installable.
- `nix_packages_why_depends`: Show why a package depends on another.
- `nix_flakes_show`: Show a flake's outputs.
- `nix_flakes_metadata`: Show flake metadata.
- `nix_config_check`: Run `nix config check`.
- `nix_config_show`: Run `nix config show`.
- `nix_manual_list`: List Markdown files in the Nix manual.
- `nix_manual_read`: Read a Markdown file from the Nix manual.
- `nixpkgs_options_search`: Search for Nixpkgs options in nixpkgs for a specific ref.

❄️ NixOS

- `nixos_wiki_search`: Search the NixOS wiki.
- `nixos_wiki_read`: Read a page from the NixOS wiki.
- `nixos_channels`: List available NixOS channels with their status.

🏠 Home Manager

- `home_manager_options_search`: Search Home Manager options.

🌑 nvf

- `nvf_options_search`: Search [nvf](https://github.com/notashelf/nvf) options for a specific ref.
- `nvf_manual_list`: List files in the nvf manual for a specific ref.
- `nvf_manual_read`: Read a file from the nvf manual for a specific ref.

📦 Nixhub

- `nixhub_package_versions`: Get version history for a package via [nixhub](https://nixhub.io).

🔍 General Tools

- `manix_search`: Search docs with [manix](https://github.com/mlvzk/manix).

## Getting Started

### Prerequisites

Ensure `nix` is installed and available on your `PATH`.

### Build & Run

```bash
# Build
nix build .#rime

# Run (Stdio)
./result/bin/rime stdio

# Run (HTTP)
./result/bin/rime http --host 127.0.0.1 --port 8080
```

## Usage

OpenAI Codex

Add to `~/.codex/config.toml`:

```toml
[mcp_servers.rime]
command = "/path/to/rime"
args = ["stdio"]
```

opencode

Add to `~/.config/opencode/config.json`:

```json
{
"mcp": {
"rime": {
"type": "local",
"command": ["/path/to/rime", "stdio"],
"enabled": true
}
}
}
```

Claude Code

```bash
claude mcp add rime -- /path/to/rime stdio
```

Gemini Code

Add to `~/.gemini/settings.json`:

```json
{
"mcpServers": {
"rime": {
"command": "/path/to/rime",
"args": ["stdio"]
}
}
}
```

VSCode

Add to `.vscode/mcp.json`:

```json
{
"servers": {
"rime": {
"command": "/path/to/rime",
"args": ["stdio"]
}
}
}
```

Zed

Add to `settings.json`:

```json
{
"context_servers": {
"rime": {
"command": "/path/to/rime",
"args": ["stdio"]
}
}
}
```

## Credits

- [manix](https://github.com/mlvzk/manix)
- [nixhub](https://nixhub.io/)
- [nvf](https://github.com/notashelf/nvf)
- [mcp-nixos](https://github.com/utensils/mcp-nixos)