# cfgd

Declaratively manages workstation setup, dotfiles, and system packages using a GitOps model. Useful for keeping multiple machines aligned with version-controlled YAML.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 7
- Author: tj-smith47
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/tj-smith47/cfgd
- Updated: 2026-10-17
- HTML: https://affpapa.org/en/nevibecode/mcp/cfgd

## What it does

The tool defines a workstation state inside YAML specifications, handling packages, dotfiles, environment variables, and settings. With composable profiles that support inheritance, it compares current system state against declared definitions, generates execution plans, and resolves configuration drift.

Reusable modules pick the right package manager for the host operating system automatically. The MCP server runs inside Docker. When invoking automated configuration generation, an `ANTHROPIC_API_KEY` environment variable is required.

Because the software is currently in Alpha, specifications and behavior can change between releases. Failed task actions get logged and skipped instead of stopping the entire reconciliation run.

## Requirements
- Needs: Docker

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add cfgd -- docker run -i --rm ghcr.io/tj-smith47/cfgd:0.12.0
```

### Codex

**Platform CLI**
```bash
codex mcp add cfgd -- docker run -i --rm ghcr.io/tj-smith47/cfgd:0.12.0
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "cfgd": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/tj-smith47/cfgd:0.12.0"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "cfgd": {
            "type": "stdio",
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/tj-smith47/cfgd:0.12.0"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add cfgd docker run -i --rm ghcr.io/tj-smith47/cfgd:0.12.0
```

## When to use it
- Reconcile dotfiles and machine settings across several workstations
- Bootstrap editor and tool configs inside fresh development containers
- Track configuration drift against declared YAML specifications
- Separate common base settings from machine-specific profiles

## Example prompts
- Inspect the system for drift against the declared profile using `cfgd status`
- Generate a YAML specification module for a Neovim setup
- Run `cfgd apply` to converge local machine settings with the configuration repository

## Similar
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33989
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81163
- [Oh My Posh Validator](https://affpapa.org/en/nevibecode/mcp/oh-my-posh-validator.md) — MCP server · ★ 23654
- [Keploy](https://affpapa.org/en/nevibecode/mcp/keploy.md) — MCP server · ★ 18779
- [Coder](https://affpapa.org/en/nevibecode/mcp/coder.md) — MCP server · ★ 17191
- [mcp](https://affpapa.org/en/nevibecode/mcp/kubeshark-mcp.md) — MCP server · ★ 12110

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
