For engineering leadership

The differences that compound.

Seven architectural choices set KAOS apart from proprietary legal-AI platforms and from generic open-source agentic frameworks. Each one is a property of how the system is built, not a feature anyone could ship next quarter.

If you are not on the engineering side of the house, the lawyer-readable version of this argument is on /for-legal-teams.

Where KAOS sits

Open source ∩ MCP-native ∩ legal-domain.

Each circle has plenty of inhabitants. The triple overlap (open-source, MCP-native, and built around real legal documents and citations) is where KAOS lives largely alone.

Open source Apache-2.0 MCP-native Tool · Resource · Prompt Legal-domain recipes + fixtures OSS agentic frameworks OSS legal libraries MCP legal tools KAOS

Seven differences that compound.

01

MCP-native, not retrofitted.

KAOS types are MCP pydantic models with to_mcp_dict(). The platform was designed for agents from the first commit, not adapted to them. Every tool ships with ToolAnnotations by default; every resource is a typed KaosResource; every prompt registers through PromptRegistry. Sibling alternatives wrap an existing API and bolt MCP on top — the wire surface stays second-class.

02

One AST, every source.

kaos-content's ContentDocument is the contract every extractor produces and every consumer reads. PDF, DOCX, HTML, EDGAR, XLSX — all produce the same typed Block/Inline tree, with provenance on every node. Pandoc-style grammar (Block / Inline / Attr triple); Docling-style provenance (page, bbox, char_span, confidence, extractor); Pydantic v2 throughout. JSON-roundtrips losslessly; serializes cleanly to Markdown, HTML, text.

03

Every claim auditable. Every refusal explicit.

The day a deal blows up, your insurer asks one question: show me where the AI got that. KAOS answers it. Every sentence an agent produces traces to a specific page in a specific source. When the AI doesn't have the evidence, it returns insufficient evidence — not a confident fabrication. The audit log is hash-chained and tamper-evident. For engineers: provenance flows extraction → retrieval (block_ref + score) → LLM output (Cited[T] / GroundedAnswer[T]) → citation verification (substring + NLI). VLAIR Capability 17 — read the architecture →

04

License-clean by construction. No AGPL.

Every dependency was chosen to keep redistribution unblocked. pypdfium2 instead of PyMuPDF — same PDF capabilities, no AGPL surface. The embedding registry refuses to load model families with non-commercial or ambiguous licenses. A law firm or vendor can ship a KAOS-built product to clients without an AGPL audit blowing up the deal. All 18 packages are published under Apache-2.0, and the dependency tree carries zero GPL/AGPL — verified continuously by the compliance dashboard.

05

Three first-class consumers.

Same package, three surfaces: a Python API for developers, an MCP server for agents, and a CLI for operators and (sometimes) lawyers. Every module page on this site calls them out by name. kaos doctor, kaos status, kaos setup claude are the canonical CLI handles; agentic clients (Claude Code, Codex CLI, Gemini CLI, VS Code, Cursor) get wired in one command.

06

Composable, not monolithic.

KAOS is 18 Python packages with a strict dependency order: kaos-corekaos-content ← the extraction modules. Siblings do not import siblings. Install kaos-pdf alone for a single workflow, or run kaos serve and get every installed module as one process exposing 14 MCP servers. The v1 Kelvin Legal Data OS was a single product you took whole; the second-generation Kelvin is parts you assemble.

07

Built and tested against real legal documents.

The built-in workflows are the work lawyers actually do — extracting deal points from a merger agreement, classifying privilege on a discovery set, pulling a chronology from a court opinion, researching SEC filings, walking the eCFR for a regulatory question. The platform is tested against public legal documents — SEC filings, federal court dockets, the Federal Register, the eCFR — not synthetic prompts written by engineers. When something breaks on a corner of US case law or a 200-page filing, the test suite catches it before a release ships.

VLAIR taxonomy

Eight tasks. Verified coverage.

VLAIR (the Vals Legal AI Report, 2024) is a published, lawyer-evaluated benchmark of eight core legal-AI tasks. The coverage below reflects the KAOS building blocks and agent recipes that ship today — not a score against that benchmark.

Document extraction VLAIR #1 Document Q&A VLAIR #2 Summarization VLAIR #3 Redlining VLAIR #4 Transcript analysis VLAIR #5 Chronology generation VLAIR #6 EDGAR research VLAIR #7 Legal research VLAIR #8

FULL = building blocks and orchestration ship today. HIGH = building blocks ship; orchestration is a kaos-agents recipe away. MEDIUM = building blocks partial; net-new code required. See the named-competitor comparison on /compare.

The lesson the market just taught

Traceability is the answer to the thin-wrapper question.

Robin AI's collapse in late 2025 (managed services sold to Scissero in December, engineering team acquired by Microsoft in January 2026) is the most-cited durability data point in the legal-AI market. Well-funded, name-brand, and contract-review-focused; the model APIs caught up and there was nothing left underneath. The lesson the field drew: durable value comes from workflow depth, from answers traceable to evidence, and from the work of integrating with real systems. Not from model access.

KAOS is built around that lesson. Provenance carries through the document AST, through retrieval, through the LLM call, and into citation verification. The depth lives where wrappers do not have any. KAOS holds up through a provider price war or a quality regression in any one model because the shape of what it does (typed document trees, typed citations, typed agent memory) does not depend on which weights answered the question.

See /compare for the named-competitor table.

Verify it yourself

Every claim above is a property of the code — which is public, Apache-2.0, and a pip install away.

pip install kaos-pdf kaos-content kaos-agents