data_quality_report
Analyze data quality across schemas and tables to identify nulls, empty tables, outliers, soft deletes, and type inconsistencies.
Instructions
Comprehensive data quality analysis - nulls, types, empty tables, outliers, soft deletes.
LEVEL: Database ↔ Schema ↔ Table ↔ Column (multi-level tool)
schema='all': Database level - quality analysis for ALL schemas
schema='': Schema level - all tables in that schema (supports ANY schema name: 'sales', 'billing', 'auth', 'analytics', etc.)
table='users': Table level - specific table analysis
outlier_column='age': Column level - outlier detection for specific column
REQUIRED: Specify schema explicitly - use 'all' for all schemas or a specific schema name.
USE FOR: data quality, data profiling, finding nulls, empty tables, outliers, soft deletes, cardinality analysis, "which columns have too many nulls?", data validation. DO NOT USE FOR: finding duplicates (use duplicate_detection), security/PII scan (use sensitive_data_scan), schema structure (use get_schema).
INCLUDE OPTIONS:
'all': Everything (default)
'nulls': Null analysis - columns with high NULL percentages
'cardinality': Cardinality analysis - unique value counts
'empty': Empty tables - tables with zero rows
'outliers': Outlier detection (requires table and outlier_column params)
'soft_delete': Soft delete patterns - finds deleted_at, is_deleted columns
'types': Data type consistency recommendations
Examples: data_quality_report() - All tables in public schema (default) data_quality_report(schema='all') - Database-wide analysis data_quality_report(schema='billing') - All tables in billing schema data_quality_report(include='nulls') - Only null analysis data_quality_report(include='empty') - Only empty tables data_quality_report(include='soft_delete') - Find soft delete patterns data_quality_report(table='users', include='outliers', outlier_column='age') - Outlier detection
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| schema | No | Schema to analyze. Omit for all schemas, or specify one. Use get_schema() to list available. | |
| table | No | Optional table name | |
| include | No | What to include: 'all', 'nulls', 'cardinality', 'empty', 'outliers', 'soft_delete', 'types' | all |
| outlier_column | No | For outlier detection: column name | |
| format | No | Output format: 'json' or 'markdown' | json |
| url | No | Database URL for auto-connection | |
| summary_only | No | Return only summary counts and issues, not detailed lists |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |