Know what’s approved, and why.

Software, technology, standards and patterns. One register for everything your organisation has decided, with the conditions attached and the record behind each answer.

Illustrative records, drawn with the product’s own components.

What we can stand behind

No logos. Specifics.

Nothing here is a customer quote. These are the rules the product holds to, most of them enforced by the database, not by a promise.

0edits after signing No route, and no grant, to change a signed record.
3answers an agent can get No match never reads as allowed.
1server image, and PostgreSQL The same build, hosted or yours.
0calls home No telemetry and no licence check.

Register

Eight statuses. Everything has one.

Search by name, alias or tag, and a typo still finds it. See the versions allowed, the conditions, who owns them, and the record behind the answer.

canonis / registertenant: [your-org]
[Software name] approved
[Language] [x.y] conditional
[AI assistant name] in review
[Database name] deprecated

Decisions

Requests go in. Records come out.

Pre-review checks and routes each request, so routine changes do not bury the board. Reviewers assess, the ARB votes, and the chair signs. The person who asks never decides.

ADR-[####] [Decision title]accepted
Outcomeapproved with conditions
Votes[Member name] and others, dissent kept
Signed[Chair name], [YYYY-MM-DD]
SupersedesADR-[####], still readable

Agents

Your agents ask first.

canonis mcp gives coding assistants the same facts your people get: read-only, one tenant, with a token that expires.

found Status, conditions and the record. The agent cites it.
not_in_canon Absence is never approval. Here is the way to ask.
ambiguous The candidates, and no chosen answer.

Security

Sealed below the application.

Built by a security company. Row-level security holds each tenant in its own cell. The application’s own role cannot edit a signed record.

Append-only No grant to change records, votes or audit events.
Separated duties The database refuses a requester’s own review or vote.
Your sign-in OpenID Connect. Roles from your groups.
Every write audited Sign-ins and refusals too.

Deploy

One build. Wherever you run it.

Hosted, with your own tenant and identity provider. Or self-hosted: one server image and PostgreSQL, with no telemetry, no licence check and no need for outbound internet.

Put your canon in one place.