datasentry
Enables adding DataSentry data-quality gates to dbt pipelines, with integration examples provided.
Provides a reusable GitHub Actions workflow to run DataSentry scans as CI quality gates, failing on configured severity levels and uploading HTML reports.
Allows scanning MySQL databases for data-quality issues, including evidence-backed issue detection, quality scoring, and safe repair workflows.
Provides optional AI-assisted repair proposals using local Ollama LLMs, with human approval required for state-changing repairs.
Provides optional AI-assisted repair proposals using OpenAI models, with human approval required for state-changing repairs.
Allows scanning PostgreSQL databases for data-quality issues, including evidence-backed issue detection, quality scoring, and safe repair workflows.
Allows scanning SQLite databases for data-quality issues, including evidence-backed issue detection, quality scoring, and safe repair workflows.
中文导读:DataSentry 会先自动发现数据质量问题,再给出样本、比例、置信度等证据。修复采用
propose → preview → apply to a copy → verify → rollback的保守流程。检测与评分不依赖 LLM,AI 只作为可选辅助,数据可以完全留在本机。
Try it in 30 seconds
Install the current PyPI release and run the zero-config product tour:
pip install --upgrade datasentry-ai
datasentry demodatasentry-demo is also available as a direct console alias.
The demo generates synthetic dirty data, runs the built-in detectors, exports JSON + HTML reports, applies one safe repair to a copy, re-scans the repaired copy, and prints a rollback command. It needs no dataset, cloud service, API key, or LLM.
synthetic dirty CSV
↓
39 deterministic detectors
↓
evidence-backed issues + quality score
↓
preview → repaired copy
↓
re-scan → verify new/persistent issuesPrefer scanning your own data immediately?
curl -L https://raw.githubusercontent.com/Jackxiaozhiren/datasentry/main/demo-data/orders.csv -o orders.csv
datasentry scan orders.csv
datasentry issues list --severity highOr launch the interactive interfaces:
datasentry # terminal UI
datasentry-server # Web UI + REST API at http://localhost:8000/ui/Related MCP server: aegis-dq
Start with your problem
If you need to... | Start here |
Find suspicious data before you know every rule |
|
See the full discovery → repair → verify loop |
|
Block severe data issues in CI | |
Add quality gates to dbt / Airflow | |
Inspect and repair issues without overwriting the source | |
Give AI agents deterministic data-quality tools |
The default path is intentionally low-commitment: scan first, inspect evidence, then decide whether a finding deserves a permanent rule or a repair.
Why DataSentry exists
Most data-quality tools are excellent once you already know the expectations, checks, or contracts you want to enforce. Real incidents often start one step earlier: you do not yet know what is wrong.
DataSentry is built around the complete remediation loop:
Find → Explain → Fix safely → VerifyFind — discover common quality problems without writing every rule first.
Explain — attach samples, affected counts/ratios, detector evidence, and confidence.
Fix safely — preview changes and apply repairs to a copy instead of mutating the source.
Verify — re-scan the repaired copy and surface persistent or newly introduced issues.
DataSentry fits best when you are looking at data you do not fully trust yet, want evidence before codifying checks, or need a conservative remediation path. It complements expectation- and contract-driven tools rather than requiring you to replace them.
What it catches automatically
DataSentry ships with 39 deterministic detectors covering common failure modes such as:
missing and placeholder values;
invalid emails, URLs, dates, and encodings;
duplicate identifiers and uniqueness violations;
inconsistent categories and cross-field contradictions;
foreign-key and referential-integrity problems;
numeric and statistical outliers;
schema, row-count, score, and issue-distribution drift.
Every scan produces an evidence-backed issue list and a six-dimension quality score across completeness, validity, uniqueness, consistency, integrity, and timeliness.
Safe repair, not blind mutation
# inspect the highest-severity findings
datasentry issues list --severity high
# propose a repair without changing data
datasentry repair propose <issue_id> --file orders.csv
# preview the exact effect
datasentry repair preview <issue_id> --file orders.csv
# apply to a repaired copy; the original is not overwritten
datasentry repair apply <issue_id> --file orders.csv
# re-scan the repaired copy and detect regressions
datasentry repair verify <run_id>
# inspect or undo the repair
datasentry repair diff <run_id>
datasentry repair rollback <run_id>Repairs are fingerprinted, auditable, and reversible. AI-generated repair proposals remain human-approved state changes.
Quality gates for CI
datasentry scan orders.csv --fail-on highFor GitHub repositories, reuse DataSentry's maintained workflow_call gate instead of duplicating installation and exit-code handling:
jobs:
datasentry:
uses: Jackxiaozhiren/datasentry/.github/workflows/datasentry-quality-gate.yml@main
with:
path: data/orders.csv
fail_on: highSee docs/GITHUB_ACTIONS.md for inputs, artifacts, security boundaries, and version-pinning guidance.
Reports can be exported as JSON, Markdown, HTML, JUnit, and SARIF. The GitHub Actions example fails the workflow on severe findings while still uploading an HTML report for review.
Give AI agents deterministic data-quality tools
DataSentry includes an MCP stdio server:
datasentry mcp --project /path/to/projectMCP-capable clients can scan files, inspect evidence-backed issues, read quality scores and trends, compare drift, validate contracts, manage scheduled jobs, and call DataSentry tools without bypassing the same underlying safety rules used by the CLI and REST API.
Copy-paste setup recipes for VS Code and Claude Desktop are in docs/MCP.md.
Boundary: AI may propose; humans approve state-changing repairs.
Where it fits next to popular data-quality projects
This is a positioning guide, not a winner/loser feature scorecard. These projects solve overlapping but different jobs; check their upstream documentation for current capabilities.
Project | Core mental model | A strong fit when you want... |
DataSentry | discover → explain → repair → verify | automatic issue discovery plus a controlled, reversible remediation loop |
Expectations / expressive data tests | explicit validation rules, validation results, and generated data-quality documentation | |
data contracts and quality checks | YAML contracts and verification across a broad data stack | |
“unit tests for data” on Spark | large-scale data verification in Spark-centric environments | |
one-line profiling / EDA | fast exploratory profiling and shareable analysis reports |
DataSentry is intentionally not trying to replace a metadata catalog, lineage platform, or every validator. Its focus is narrower: find bad data, show why it was flagged, and close the repair loop without gambling on the source.
Local-first by design
deterministic detection and scoring run locally;
DuckDB powers core local execution;
OpenAI/Ollama assistance is optional;
PII redaction, encrypted mappings, and LLM audit records are available when AI is enabled;
the original source file is not overwritten by repair workflows.
Data sources
CSV, Parquet, JSONL, XLSX
DuckDB and SQLite
PostgreSQL and MySQL
s3://,gs://, andaz://objectssingle files, batches, and globs
History and drift
Persist scans and compare data over time:
datasentry drift latest orders
datasentry scoreTracked signals include schema changes, row-count movement, quality-score changes, and issue-distribution drift.
Architecture
flowchart LR
Sources[Files / DBs / cloud objects] --> DuckDB[Local execution]
DuckDB --> Detect[39 detectors]
Detect --> Evidence[Evidence fusion]
Evidence --> Score[6-dimension score]
Score --> Reports[Reports / history / gates]
Reports --> CLI[CLI / TUI]
Reports --> Web[Web / REST]
Reports --> MCP[MCP]
Evidence --> Proposal[Repair proposal]
Proposal --> Preview[Preview]
Preview --> Apply[Apply to copy]
Apply --> Verify[Verify by re-scan]
Verify --> Rollback[Rollback artifact]
LLM[Optional OpenAI / Ollama] -. proposes .-> ProposalReproducible benchmark
uv sync
uv run python benchmarks/bench_scan.py 1000000 42The benchmark generates synthetic dirty data and measures profiling, detection/fusion/scoring, numeric-outlier detection, JSONL reading, sampling, score drift, and memory high-water marks. See docs/BENCHMARKS.md.
Development
uv sync
make check # lint + mypy --strict + tests/coverage
make demo # exercise the public datasentry demo path
make bench # benchmark
make build # distributionsContributing
Useful contributions include new detectors, connectors, integration examples, reproducible benchmark cases, documentation/translations, minimal bug reproductions, and CLI/TUI/Web usability improvements.
Want a small first contribution? Start with good first issue #14 or good first issue #15.
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, and ROADMAP.md. Small contributions are tracked with good first issue and help wanted labels.
Documentation
docs/FAQ.md— evaluation, safety boundaries, and how DataSentry fits alongside other data-quality toolsexamples/— scenario-first runnable examplesdocs/MCP.md— VS Code and Claude Desktop MCP setupdocs/GITHUB_ACTIONS.md— reusable GitHub quality gateexamples/integrations/github-actions/— copy-paste CI gatedocs/BENCHMARKS.md— benchmark policydocs/DEVELOPMENT.md— engineering notes
License
Apache-2.0 — see LICENSE.
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server with 32 tools for ETL ingestion, AI-generated data quality rules, AI transformations, vector search, and natural-language SQL. Works across Postgres, MongoDB, Kafka, S3/MinIO, HashiCorp Vault, and five vector stores (Qdrant, Weaviate, Milvus, Chroma, pgvector).12AGPL 3.0
- AlicenseBqualityDmaintenanceAgentic data quality MCP server — runs structured validation rules against warehouses (DuckDB, BigQuery, Athena, Databricks, Postgres), diagnoses failures with LLM root cause analysis, and proposes SQL remediations. Full audit trail of every AI decision.64Apache 2.0
- AlicenseNot gradedqualityCmaintenanceAI-driven MCP server that audits, profiles, detects schema drift, and auto-generates documentation for dbt projects, enabling natural language interaction with your dbt project's health.133MIT
- AlicenseBqualityAmaintenanceLocal-first production-readiness MCP server for AI-built apps. It runs read-only checks, produces an evidence-based readiness score, and guides fixes before launch.95Apache 2.0
Related MCP Connectors
Monitor MCP servers, API contracts and AI outputs for schema drift. Alerts on breaking changes.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Free OpenAI-compatible inference with signed provenance receipts and 3 focused MCP tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jackxiaozhiren/datasentry'
If you have feedback or need assistance with the MCP directory API, please join our Discord server