Kremis
A deterministic knowledge graph MCP server. Local, single binary, no LLM in the loop.
A minimal, graph-based cognitive substrate in Rust.
Records, associates, retrieves — but never invents.
Alpha — Functional and tested. Breaking changes may still occur before v1.0.
Why Kremis
| Problem | How Kremis addresses it |
|---|---|
| Hallucination | Every result traces back to a real ingested signal. Missing data returns explicit "not found" — never fabricated |
| Opacity | Fully inspectable graph state. No hidden layers, no black box |
| Lack of grounding | Zero pre-loaded knowledge. All structure emerges from real signals, not assumptions |
| Non-determinism | Same input, same output. No randomness, no floating-point arithmetic in core |
| Data loss | ACID transactions via redb embedded database. Crash-safe by design |
Design Philosophy — why these constraints exist.
Features
- Deterministic graph engine — Pure Rust, no async in core, no floating-point. Same input always produces the same output
- CLI + HTTP API + MCP bridge — Three interfaces to the same engine: terminal, REST, and AI assistants
- BLAKE3 hashing — Cryptographic hash of the full graph state for integrity verification at any point
- Canonical export (KREX) — Deterministic binary snapshot for provenance, audit trails, and reproducibility
- Proof-carrying knowledge (KVQC) —
POST /certifyreturns a reproducible Verifiable Query Certificate: a portable proof of a fact, or proof of its absence - Zero baked-in knowledge — Kremis starts empty. Every node comes from a real signal
- ACID persistence — Default
redbbackend with crash-safe transactions






