Recommendations are easy. Implementation is the hard part.
SEO software is good at producing recommendations. The implementation still has to survive handoff, development, redesigns, content changes, and time. Today the pieces live apart:




nobody can easily prove why a page exists, or what it is supposed to do.
One chain, from measured demand to traced findings.
Each stage has a clear actor. What a machine proposes, a human approves. What a contract requires, a verifier compares against the observed site.
Measure demand
Persisted research becomes measured demand. A measured zero and missing provider evidence stay different things.
Build a deterministic proposal
The same inputs produce the same proposal. Each suggestion is BUILD, SUPPORT, or CONCEDE, with a stated reason.
A human reviews the strategy
A person decides what stands. A machine proposal is a suggestion until it is adjudicated.
Materialize page contracts
Approved strategy becomes RoleContracts and PageContracts with stable digests.
Observe the real site
The live site is crawled and inventoried. Observation never rewrites approved strategy.
Verify the implementation
Deterministic rules compare the observed site against current contract authority.
Trace findings to authority
Every finding points at the contract, the strategy, and the evidence behind it.
The interior, running live below.
This is the actual product prototype, not a screenshot. The site’s full chain of truth sits in one view: research at the bottom, verification on top, and every finding carries its authority source.
The interior is a desktop layout, so it is not embedded at this width. It runs on the same fixture data, one tap away.
Open the interiorEvery conclusion has a trail.
A failing check is more useful when the system can show what authority made it a failure. Querywright keeps each link of the chain inspectable, so a finding is never just a number to argue about.
No mystery SEO score.
Verification results are three words, and each one means exactly what it says.
PASS
A deterministic expectation matched. The check is repeatable with the same inputs.
FAIL
It did not. The finding records the expected value, the observed value, and the authority source.
ERROR
Querywright could not establish the state. It does not guess, and it does not average it away.
What is in the system today.
Only accepted capabilities are listed. Nothing here is a roadmap item wearing a shipped costume.
Research & demand
- Persisted keyword research with observation IDs
- MEASURED_POSITIVE, MEASURED_ZERO, and no-provider evidence kept distinct
- Geography-aware demand
- Provider provenance on every observation
Strategy
- Deterministic proposal generation
- BUILD / SUPPORT / CONCEDE with stated reasons
- Human adjudication, persisted separately
- Modified-and-approved state with immutable history
Contracts
- RoleContracts and PageContracts
- Approved hierarchy and relationships
- Current and historical materializations
- Provenance-bound digests
Verification
- Deterministic rules
- Crawl observations
- Current-authority verification
- Fail-closed corruption handling
- Findings and reconciliation
Evidence
- FIELD, RECORDS, LAB, DERIVED classes
- Active and retracted states
- Derivation lineage
We’re targeting “hvac tuning” in the Bay Area.
AC Meridian is Querywright’s own working site, used as a dogfood. This is what one thread of it looks like, end to end.
AC Meridian is dogfood, not customer proof. Every value above is fixture data from this prototype.
The machine proposes. You approve.
A proposal and an approved strategy are different objects. The first is a suggestion with a digest. The second is a human decision, persisted separately and inspectable at any time.


pr_3d1e9c… ≠ st_77ab30… · observed site state can never silently rewrite either one.
Built to be inspected, not just viewed.
The same strategy, contracts, evidence, and findings are reachable from the app, the CLI, or a read-only MCP interface.
- PageContracts are machine-readable. Current and historical authority have stable digests.
- CLI can inspect V2 authority and run verify. Output is deterministic and CI-compatible.
- MCP exposes V2 authority read-only. Mutation policy: READ_ONLY.
- Historical contract state stays queryable. Current and historical remain separate.
Who this is for. And what it is not.
For
- SEO practitioners who need implementation accountability
- Developers who need explicit SEO requirements
- Agencies managing complex site architecture
- Teams tired of strategy living in disconnected spreadsheets and docs
Not
- Not a generic AI writer
- Not a keyword dashboard
- Not an SEO score
- Not just a crawler
- Not just a recommendation feed
It connects inputs and outputs around one thing: approved strategy and enforceable implementation authority.
What is accepted. What is not yet.
This page is a prototype of a real system. The split below is the honest one.
In the system today
- Persisted research + measured demandshipped
- Deterministic proposals + human adjudicationshipped
- Contracts with digests, current + historicalshipped
- Crawl observations, LITERAL_ONLY hostnamesshipped
- Deterministic verification + provenanceshipped
- CLI inspect + verify · MCP read-onlyshipped
Still in the shop
- DNS pinningnot yet accepted
- Hardened egressnot yet accepted
- G2 product shell (this page is a prototype of it)not final
- Copy Studiofuture
- Multi-user authnot complete
- External production deploymentnot verified
See the chain, not just the score.
Querywright connects measured demand, approved strategy, and page contracts, so every finding has a trail.






