dr-opoku/dataqmonitorInterface only · no calculations in the browser
github.com/dr-opoku/dataqmonitor

Check CSV data for missing values, outdated records and rule violations

Review completeness, freshness, availability and consistency against your declared rules. Prepare inputs and settings, then import the report produced by the Python program.

pip install dataqmonitor · python -m dataqmonitor

Interface preview

This mock-up shows what a browser interface for the tools could look like. It is not yet connected to the Python tools and does not run their calculations. To use the tools, download and run the code from the respective GitHub repository: github.com/dr-opoku/dataqmonitor

The code is available under a non-commercial license. Commercial use requires a separate license.

01

Inputs

Required CSV data and an optional fetch log. Maximum 5 MiB / 50,000 records per file.

csv – data file

Unique, nonempty column names; timestamps with time zones

--attempts – fetch log

Columns: attempted_at, success (true/false/1/0)

02

Configuration

JSON object; unknown and duplicate keys are rejected.

✓ Configuration is valid.

Dataset & keys

Freshness & availability

Thresholds (minimum percentages)

numeric_ranges – inclusive ranges

allowed_values – permitted categories

evidence_context – declared context

config.json preview
{
  "dataset_name": "Local dataset",
  "expected_rows": null,
  "required_columns": null,
  "key_columns": [],
  "timestamp_column": null,
  "max_age_hours": 24,
  "future_tolerance_minutes": 5,
  "availability_window_hours": 720,
  "min_availability_attempts": null,
  "evidence_context": {},
  "numeric_ranges": {},
  "allowed_values": {},
  "thresholds": {
    "completeness": 95,
    "freshness": 95,
    "availability": 95,
    "consistency": 95
  }
}
03

Command

Prepare the command for the Python program.

dataqmonitor check data.csv --config config.json --format json --output report.json
exitmeaning
0Report generated (always without --require-ok)
1--require-ok and status ≠ ok
2Invalid input (INVALID_INPUT); JSON error on stdout

serve starts the optional MCP server over stdio (tool output uses the same report schema).

04

Report

schema_version 2.0 · Checks completeness, freshness, availability, consistency

Import the report from dataqmonitor … --format json --output report.json here.