Why moriti
Access control answers who and can. moriti answers should, for this purpose.
How it compares
Every access-control layer answers who and can. This one answers should, for this purpose. Here is where that lands.
| Capability | moriti | Closed AI-privacy platforms | Open-source gateways and guardrails | IAM · DLP · agent security |
|---|---|---|---|---|
| Decides on the assigned purpose, not just who is asking | Partial | |||
| Consent and lawful basis evaluated per request | Partial | |||
| Withholds per field, so the value is absent from the agent's context | Partial | Partial | ||
| Reason and guard recorded for every field | Partial | Partial | ||
| Runs in your own VPC, in-country | Partial | Partial | ||
| Open source, inspectable, forkable | Partial | |||
| Runs behind the gateway you already use (MCP proxy, ContextForge) | Own gateway only | Mostly their own | ||
| Cost to start | $0 | Six figures | $0 | Varies |
Categories, not vendors, on purpose. Based on a primary-source review of fifteen products in September 2026 and a survey of open-source gateways and guardrails in October 2026. Individual projects vary.
Built for the question the other tools can't ask
Purpose-limited
Decisions key on why the data is being used, not just who is asking. The same field, a different purpose, a different answer.
Consent-aware
Legal basis and the consent on file are inputs to every decision. An access check can pass and moriti can still say no.
Withheld, not masked
Fields an agent shouldn't have never enter its context. They are absent, and the reason is recorded.
Open and self-hosted
Apache-2.0. Runs in your VPC, in-country. No account, no cloud, nothing phones home.
Who needs this?
HR assistants
A directory lookup needs contact details, not salary. moriti releases what the purpose requires and withholds the rest, under POPIA's minimality condition.
Payroll and finance agents
The same record, a different purpose. Remuneration data flows to the payroll run, with obligations attached: not retained in memory, deleted after the task.
Support and marketing agents
Consent covers marketing, not fraud investigation. When an agent reaches for a customer's number for the wrong purpose, the access check passes and moriti still says no.
Access is not permission
Every tool your organisation already runs answers a version of the same question. Identity asks who you are. Authorisation asks whether you can reach the resource. Agent security asks whether the agent may act. None of them asks whether this person's data should be used this way, for this purpose.
That question is the whole of privacy law: purpose limitation, minimality, consent. Until now it lived in policy documents, not in the path of the data.
moriti was built here because here it isn't abstract:
- •POPIA's eight conditions and the NDPA make purpose limitation the law, not a preference
- •Residency rules are hardening across the continent, and only something you run in-country answers them
- •Tools priced for Fortune 500 budgets don't fit a Sandton fintech. Open source does
If it works in Sandton, it works anywhere.
Read the full philosophy →