MCP server de configdrift
Commit 19 oct 2026Detects configuration drift across environments by comparing YAML, JSON, TOML, and .env files to prevent production incidents.
También conocido como Coding-Dev-Tools/configdrift
- Stars
- 4
- Herramientas
- —
- Descargas, 30 días
- —
- Última versión
- —
- Último commit
- 19 oct 2026
- Licencia
- MIT
¿Qué es configdrift MCP?
configdrift es un MCP server. Detects configuration drift across environments by comparing YAML, JSON, TOML, and .env files to prevent production incidents.
Resumen generado a partir del README del proyecto
Acerca del MCP server de configdrift
ConfigDrift helps developers maintain consistency across multiple environments by identifying discrepancies in configuration files. It works by comparing files in formats such as YAML, JSON, TOML, and .env. This tool is designed for engineers managing staging and production setups who need to prevent incidents caused by mismatched settings like database endpoints or authentication keys.
Users can run the tool locally via a CLI, installing it directly from GitHub using pip or through Homebrew and Scoop. The software provides different ways to interact with data, including the check command for comparing specific files and the scan command for analyzing entire directories. It supports various output modes like a colored table for human reading or JSON for machine integration.
Different tiers offer varying levels of functionality. The free version allows for comparing a single pair of environments, while paid plans provide unlimited environments, custom rules, and advanced features like Slack alerts or compliance reports. The CLI operates fully offline on the free tier without telemetry.
Qué puedes hacer con él
- 1Verify environment consistencyCompare a development YAML file against a production YAML file to ensure settings match.
- 2Audit entire environment directoriesScan multiple directories representing different stages to find configuration mismatches.
- 3Automate CI/CD deployment gatesUse a silent exit code in a pipeline to block pull requests that introduce configuration drift.
Escrito a partir del README del proyecto. Cada caso de uso se verifica con una cita del mismo.
README
Ver en GitHubConfigDrift
Keep configurations consistent across all environments, automatically. ConfigDrift compares configs, flags drift, and reports compliance violations before they cause incidents.
⭐ Star this repo if you manage multi-environment configs — it helps other devs find ConfigDrift!
Real-world scenarios:
- Multi-environment compliance: Ensure staging and prod configs are identical before every deploy
- Secrets audit: Detect env vars that exist in one environment but are missing in another
- CI/CD gating: Block PRs that introduce config drift across environments
- Incident prevention: Catch a changed database endpoint before it causes a production outage
Installation
ConfigDrift is not published to public PyPI. Install from the self-hosted index, a direct GitHub install, or via Homebrew/Scoop (below).
# Install directly from GitHub (recommended)
pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
Editable install for development:
pip install -e ".[dev]"
Then run: configdrift --help
Quick Start
Compare two config files:
configdrift check dev.yaml prod.yaml
Scan entire directories as environments:
configdrift scan ./config/dev ./config/staging ./config/prod
Use a config file to define environments:
configdrift init
configdrift scan --config .configdrift.yaml
Usage
check — Compare config files
configdrift check <file1> <file2> [--output table|json|silent] [--baseline dev] [--target prod]
Output formats:
table(default): Rich colored table outputjson: Machine-readable JSON for CI integrationsilent: Exit code only (0 = no breaking drift, 1 = breaking drift found)
scan — Compare environment directories
configdrift scan ./dev ./staging ./prod --baseline dev
Scans all config files in each directory, merges them, and compares against a baseline environment.
init — Generate a config file
configdrift init .
Creates .configdrift.yaml in the specified directory.
CI/CD Integration
Use --output silent for CI gating:
configdrift check dev.yaml prod.yaml --output silent || echo "Drift detected!"
GitHub Actions example
- name: Detect config drift
run: |
pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
configdrift check ./config/staging/app.yaml ./config/prod/app.yaml --output silent
Troubleshooting
- Exit code 1 with no output: use
--output tableto inspect drift details. - TOML parsing errors on Python < 3.11: install
tomliandtomli-wor use Python 3.11+. - Large config scans are slow: narrow the scan to changed files or a single directory.
- Unexpected breaking drift: review severity rules in the project settings;
database*andauth*keys are flagged as breaking by default.
Supported Formats
| Format | Extension | Notes |
|---|---|---|
| YAML | .yaml, .yml |
Full nested structure support |
| JSON | .json |
Nested flattening |
| TOML | .toml |
Python 3.11+ native |
| .env | .env |
KEY=VALUE format |
Severity Levels
- Info: Non-critical value changes
- Warning: Added or removed optional keys
- Breaking: Changes to critical keys (
database*,auth*,api_key*,secret*,password*,token*,endpoint*)
Development
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Run with coverage
pytest --cov=configdrift
Pricing
ConfigDrift is one of 11 tools in the Revenue Holdings suite. One license covers all CLI tools.
| Plan | Price | Best For |
|---|---|---|
| Free | $0 | Individual devs, OSS — CLI only, 1 env pair |
| ConfigDrift Individual | $15/mo ($12 billed annually) | Professional devs — unlimited environments, custom rules |
| Suite (all 11 tools) | $49/mo ($39 billed annually) | Full Revenue Holdings toolkit — 40% savings |
| Team | $79/mo ($63 billed annually) | Up to 5 devs — drift history, Slack alerts, priority support |
| Enterprise | Custom | SSO, RBAC, compliance reports, dedicated support |
🔹 No lock-in: CLI works fully offline on the free tier — no telemetry, no phone-home. 🔹 Annual billing: Save 20%.
Per-Tier Features
| Feature | Free | ConfigDrift | Suite | Team | Enterprise |
|---|---|---|---|---|---|
| CLI: check, scan | ✓ | ✓ | ✓ | ✓ | ✓ |
| Unlimited environments | — | ✓ | ✓ | ✓ | ✓ |
| Custom rules / policies | — | ✓ | ✓ | ✓ | ✓ |
| Drift history / audit trail | — | — | — | ✓ | ✓ |
| Slack / webhook alerts | — | — | — | ✓ | ✓ |
| Compliance reports | — | — | — | — | ✓ |
| RBAC | — | — | — | — | ✓ |
| SSO / SAML / OIDC | — | — | — | — | ✓ |
| Priority support | Community | 24h | 24h | 8h | Dedicated |
License
MIT
Test
npm test # runs: node --test tests/
Preguntas sobre configdrift MCP
What file formats are supported?
The tool supports YAML, JSON, TOML, and .env files.
Can I use ConfigDrift in my CI/CD pipeline?
Yes, you can use the --output silent flag to enable CI gating, which returns an exit code of 1 if breaking drift is detected.