Master Data Quality Agent
A continuous perception layer over your live master data. It watches every record and every change as they happen, raises duplicates, anomalies, completeness gaps, and drift with evidence and confidence scores, and hands the findings to the agent or human best suited to act on them. It never changes records on its own.
Most quality programs run dark between audits
The classical pattern is the quarterly data-quality report. A consultant runs a profile. A 40-page deck lands. Three rules get added to a queue. The queue grows. The next quarter, the same exercise repeats — on data that has moved months past the report.
The work the business actually wants is the opposite: tell me what's wrong, right now, as it's happening, in a form I can act on. Continuous, scoped, scored, routed to the right responder. That's the work the Quality Agent does.
What continuous perception looks like
- Every new record gets a duplicate check before commit.
- Every field change gets a plausibility check against the established distribution.
- Every nightly sync gets a profile-and-flag pass for drift.
- Every assessment-time question (from the Expert Agent) gets a scored answer with cited evidence.
- Every validation request (from the Steward Agent during intake) gets answered in milliseconds against authoritative sources.
None of that is novel work in concept. The novel part is doing it continuously, autonomously, and on enough operational signal that the rest of the team can build on it.
What the Quality Agent watches for
Eight categories of finding, each scored, each evidenced, each routed to the agent or human best placed to act on it.
Duplicates
Suspect-record clusters scored against a configurable threshold. Embedding-based similarity + deterministic rule overlay. Auto-merge above the high band, queue between, ignore below — per domain.
Completeness gaps
Required-but-empty attributes, sparse hierarchies, stale freshness windows, mandatory-when violations that the static schema cannot catch.
Value anomalies
Distribution-aware: a price 4× the category median is flagged even when it passes schema validation. The same field changed by bulk import vs. UI edit gets different scrutiny.
Hierarchy inconsistency
Orphans, cycles, parent-child mismatches, classification rules where 9 of 14 records agree and 5 are outliers — the kind of question the Steward Agent asks during a classification review.
Drift & trend
Patterns that change over time without anyone changing a rule — lead-time staleness creeping up, completeness dropping after a source-system migration, valuesets accumulating one-off entries.
Cross-attribute rules
"If HazmatClass is set then HazmatPermitNumber is required." "If Country = EU then TaxID validates against VIES." Configurable per domain, learned from data when stewards approve them.
Validation requests
Synchronous answers to "is this tax ID valid?", "is this DUNS number registered?", "does this address resolve?" — used heavily by the Steward Agent during intake.
Enrichment opportunities
Fields that could be filled from a trusted source — D&B for corporate hierarchy, tax-authority lookups for VAT, classification services for material codes. Raised as proposals; never applied without approval.
The substrate: MDQ Workbench and MDQ Dashboard
Unlike the Design and Architect agents, the Quality Agent is not a new product line. The substrate is already shipping. The agent is the orchestration layer on top of two existing ZFlow tools.
MDQ Workbench
Eighteen AI-backed tools for matching, profiling, enrichment, and rule generation. Stewards use it interactively today; the Quality Agent calls the same tools programmatically.
MDQ Dashboard
The scope-aware quality KPI watchtower. Live counts of suspect clusters, completeness percentages, anomaly volumes, and rule-violation rates per domain, per category, per source system.
What the agentic layer adds on top
- Always-on operation. The Workbench tools run continuously over change events, not just on a steward-initiated session.
- Inter-agent dispatch. Findings route to the right consumer — Steward Agent's queue for resolution, Expert Agent's assessment rollup for scoring, Architect Agent for workflow gating when a systemic gap appears.
- Chat-driven configuration. Match thresholds, plausibility ranges, and rule learning happen through the same conversational surface as the rest of the agent family.
The eighteen tools
Every Quality-Agent action is one of these tools. Stewards see them as named operations in the MDQ Workbench; the agent calls them through the same registry. Grouped by category.
Embedding-based similarity match across a candidate set, with optional deterministic-rule overlay.
Group probabilistic-match outputs into clusters above a per-domain confidence threshold.
Compute survivorship for a duplicate cluster and produce a merge proposal for steward approval.
Reverse a merge using object-level lineage. Field-level unmerge is on the roadmap.
Distribution profile for an attribute: cardinality, top values, length stats, null rate, format distribution.
Score a value against the field's distribution; flag values beyond a configurable SD threshold.
Population-level profile producing the inputs the Expert Agent rolls up into completeness and freshness scores.
Required-when rule evaluation across a population. Produces per-record completeness percentages.
Tax-ID validation against the appropriate authority (IRS EIN, EU VIES, country-specific).
DUNS validation against Dun & Bradstreet. Returns entity status, last review date, sanctions match.
Postal address validation and normalization. Multi-region.
OFAC + global sanctions screening against the validated entity.
D&B corporate-hierarchy enrichment. Returns parent / ultimate-parent / subsidiary structure.
UNSPSC / GS1 / GPC classification suggestions from product attributes.
Address enrichment: geocoding, time zone, delivery-zone metadata.
Mine observed data for candidate quality rules — "if X then Y" patterns at > 95% support. Surfaces them for steward approval before they're enforced.
Inline gate function used by the Architect Agent in workflows. Returns score; workflow uses score against threshold to pause for human review.
Produce a stewardable explanation of any flagged finding, including the data evidence and the rule that fired.
Each tool emits a structured, citable result. The agent never produces a verdict that you can't trace back to specific values, specific rules, and the version of the model or service that produced it.
Embedding-based similarity, with the math in the open
The match tools use OpenAI's text-embedding-3-small (1,536-dimensional vectors), stored as BLOBs in your master-data store, with brute-force cosine similarity in the current implementation. That sounds primitive and it is — deliberately. It works comfortably up to about 50,000 vectors per scope, which is far past the working-set size of most domain populations.
Brute-force cosine over BLOB-stored 1,536-d vectors. Comfortable up to ~50K vectors per scope. No new infrastructure required.
Swap to pgvector or OpenSearch when scale demands it. The Quality Agent's matching contract doesn't change when the index does. Configuration change, not agent rewrite.
Deterministic rules layer on top: exact tax-ID match jumps the score to a near-certain band; address-Levenshtein distance under 0.05 lifts the score; name-token Jaccard under a threshold subtracts. The composite score is what the steward sees, with the constituent signals all visible in the explanation.
The posture: raise, don't change
It produces findings — scored, evidenced, recommended. Action is the Steward Agent's job (or a human steward's, when policy or confidence require it).
The discipline matters: it keeps the agent auditable, keeps the steward decision-loop in the workflow engine, and makes it safe to run the agent continuously without supervision. If the Quality Agent is wrong, no master data has moved.
Where the Steward Agent has marked an activity as agent-completable above a confidence threshold, the Steward Agent does the writing, citing the Quality Agent finding as its evidence. The two agents collaborate; they do not blur.
Cross-agent conversations
The Quality Agent earns its keep by feeding three other agents. Below are three real conversations, taken from the seed work-item data the Steward Agent UI ships with.
SKU-PAINAWAY-XS-50CT.RegionalPrice.EU. Value EUR 41.99 is 4.2 SD above the analgesics-category EU distribution. Field changed 5h ago by bulk import.
BulkPriceImport workflow have an inline Quality Agent plausibility gate before commit? 12 of 1,847 are now anomalous.
PreFunction2 hook on the Apply activity that calls Quality Agent's plausibility_check. Would block commits where any row scores > 3 SD. Routing the workflow change to data-governance for approval.
Configuration is a conversation
Match thresholds, plausibility ranges, completeness rules, and learned proposals all happen through the same chat surface as the rest of the agent team. You don't open a settings page. You say it.
- "Loosen the duplicate threshold for the analgesics category to 75% — the brand-extension SKUs are noisy."
- "Why did you flag SUP-04891 and SUP-00432 as duplicates?"
- "Propose a rule based on the last 30 days of supplier intakes — what consistently shows up that I'm not asking for yet?"
- "For EU customers, validate the tax ID synchronously at intake time — not after the workflow completes."
Each change emits a structured configuration proposal, the steward (or the responsible administrator) reviews and approves, and the agent's behavior shifts. The change is in the audit trail, reversible by another conversation.
30 days, end to end
Point the Quality Agent at your live finished-goods data. Here's what the first month looks like.
propose_rule over a year of intake history. Twelve candidate rules surface: "If Country = EU then TaxID must validate against VIES" was already in your spec but never enforced. Three others are patterns you didn't realize were patterns. You approve nine of the twelve.
What the Quality Agent doesn't do (yet)
Honest scope. One is a short config change, three are short roadmap items.
- Sub-100ms synchronous match at full scale The brute-force cosine implementation is fast up to ~50K vectors. Sub-100ms responses past that need the pgvector / OpenSearch swap that's on the roadmap.
- Field-level lineage and unmerge Object-level merge / unmerge is in place. Field-level unmerge (revert one attribute while keeping the rest of the merge) is on the roadmap, gated on the lineage store extension.
- Streaming detection on Kafka events The agent runs over change events on the workflow engine today. A native Kafka-source detection pipeline (for organizations that put master-data change events on Kafka outside of the ZFlow workflow engine) is on the roadmap.
- Automatic threshold tuning Thresholds are configured by conversation. The agent doesn't yet propose threshold changes based on observed false-positive / false-negative rates — that's a planned learning loop.
If any of these are critical, tell us before the engagement starts.
How it fits with the rest of ZMDM
The Quality Agent is the third of five — and the only one that speaks to every other agent in the team.
Design
Canonical model + lifecycle workflows
Architect
Workflow templates + integration wiring
Quality
Continuous perception + scored findings
Steward
Activity execution alongside human stewards
Expert
Grounded answers from live entities + lineage
- It reads the canonical model from the Design Agent — knows which attributes are unique-key candidates, which valuesets exist, which fields are mandatory-when conditioned on other fields.
- It is called by the Architect Agent's workflows at the right activity — duplicate-check at DataPreparation, plausibility gate before commit, completeness check before Approval.
- It feeds the Steward Agent's queue — findings become work items. Confidence threshold determines whether the agent completes or a human reviews.
- It feeds the Expert Agent's rollup — record-level signals (completeness, freshness, validation pass-rate, duplicate confidence) are the inputs the Expert Agent rolls up into consumer-domain dimension scores.
Start Your Success Story
Join the growing list of manufacturers who have transformed their master data management with ZMDM.