EvoOntology vs ktx
Renmin University's self-evolving ontology layer for data agents: builds a workload-grounded ontology over tables, files and databases, serves it via MCP, and evolves it from agent trajectories. — versus — Self-improving context layer for data agents — ingests dbt/Looker/wikis, maps your warehouse, builds a semantic layer with approved metrics, and serves Claude Code/Codex via CLI and MCP.
Both are self-improving context layers for data agents served over MCP; ktx builds a governed semantic layer from dbt, Looker and wikis, EvoOntology grows an ontology from agent trajectories with evaluation-gated versions.
| EvoOntology | ktx | |
|---|---|---|
| Stars | 493 | 1.6k |
| Forks | 41 | 106 |
| Language | Python | TypeScript |
| License | MIT | Apache-2.0 |
| Last activity | today | 17 days ago |
| Topics | data, knowledge-graphs | rag, agents |
| Curated connections | 4 | 8 |
EvoOntology — the curator's take
The research answer to stale semantic layers: instead of hand-maintained definitions, EvoOntology builds an ontology from your data and real workload, lets agents fetch only the semantics a step needs through MCP, and proposes targeted updates from execution trajectories, publishing a new version only when paired evaluation beats its parent. Claude Code and Codex plugins make it easy to try. It is two-week-old research code from a university lab: treat the evolution loop as an experiment, keep versions reviewable, and give it read-only credentials. If you want definitions humans own and govern, a curated semantic layer (ktx, neocarta) is the conservative choice.
ktx — the curator's take
Reach for it when agents re-explore your warehouse on every question and invent their own metric logic: ktx samples tables, detects joinable columns (resolving chasm/fan traps), absorbs dbt/MetricFlow/LookML/Notion knowledge into one searchable surface, and flags contradictions for human review. Read-only by design; runs locally on your own LLM keys or your Claude Code / Codex login. Skip it if you have no SQL warehouse to sit on, or for one ad-hoc query. It ingests your existing semantic layers rather than replacing them. YC-backed (Kaelio); telemetry is on by default with opt-out.