Test your Neo4j graph like you test your code.
GraphCheck is semantic observability for Neo4j property graphs. Declare what should be true about your graph in YAML. GraphCheck runs it read-only and returns pass/fail verdicts with evidence — in your terminal and in CI.
Your graph looks healthy. Is it right?
Modern knowledge graphs are increasingly machine-built — extracted by LLMs, merged from pipelines, feeding GraphRAG systems and AI agents. Counts look reasonable and dashboards stay green while the answers underneath quietly go wrong. Code has tests. Warehouses have dbt tests. GraphCheck gives your graph the same discipline: executable checks, honest coverage, and evidence you can hand to a reviewer.
From install to verdict in minutes
1 · SCAFFOLD
Scaffold a project and point the connection profile at your Neo4j.
2 · VERIFY THE CONNECTION
Every error message contains its fix — wrong password, missing APOC, unreachable host.
3 · RUN THE CHECKS
A score, a coverage table, and an HTML report with evidence for every failure.
What you get
Three kinds of checks
Conformance rules (no orphans, completeness, cardinality), competency questions as executable queries, and drift watches against a pinned baseline.
Built-in core & PII packs
A built-in library of conformance checks plus a PII scan pack with clearly labeled, confidence-scored findings. Checks are data, not code.
Score and coverage
Every run produces a severity-weighted score and an honest coverage table: what passed, failed, errored, or was skipped — with reasons.
CI-native by contract
A frozen exit-code contract (0 all passed · 1 failure or execution error · 2 warnings or incomplete · 3 run not completed), machine-readable results.json, and per-suite summaries built for pipelines.
Reports that travel
A self-contained HTML report that opens offline — air-gapped environments included — plus results.json for tooling.
An agent surface
An optional MCP server lets AI agents list checks, run a suite, and read results. AI-assisted check drafting stays inert until a human approves it.
The promises we don't break
A tool pointed at production data earns trust through guarantees, not marketing.
Read-only, always
GraphCheck never writes to your database. On Neo4j Enterprise and Developer editions it expects a server-enforced read-only credential (the built-in reader role); on Community, where roles are limited, a server-side EXPLAIN preflight rejects write-capable queries before they run.
Evidence on every failure
Findings carry evidence at the right scope — pointers to the offending nodes and relationships, or the aggregate measurements behind a drift result — with the compiled query. Auditable, not anecdotal.
Deterministic verdicts
Same graph + same suite = same result. No LLM ever decides pass or fail.
Nothing leaves your environment
It is a CLI. Results are written locally. Telemetry is off by default and anonymous when opted in.
Graph Quality Audit
Want experts to run it for you first?
We offer a fixed-scope, read-only audit of your production graph. We profile it, surface real quality risks with evidence, and hand you a runnable GraphCheck suite tailored to your data — plus a CI configuration so the checks keep running after we leave. You keep everything: the checks, the findings, and the report.
- ▪ A profile of your graph — size, schema, and capability summary.
- ▪ Ranked quality findings, each with pointer evidence.
- ▪ A tailored, executable check suite that your team owns.
- ▪ A CI setup so the checks run on every change.
Read-only by design. For regulated environments, everything runs inside your own boundary.