Skip to main content

data-olympus

knaisoma/data-olympus MCP server MCP Marketplace

New here? Start with WHY.md. It is the story behind the project: the problem we kept hitting with coding agents, what data-olympus does differently, how it relates to Google's Open Knowledge Format, and where our benchmarks say it is strong and where it is not. The rest of this README is the technical reference.

data-olympus is a governance-grade knowledge-base format and server for agent workforces. It is readable by Open Knowledge Format (OKF) v0.2 consumers: it inherits OKF's directory structure, frontmatter conventions, reserved filenames, and link model, then layers governance extensions on top (stable id, controlled type/status/tier fields, supersedes chains) plus a single-writer MCP server and a CLI. CI proves two concrete directions against official Google OKF v0.2 commit ad30107c31c06aec8a7d5636e0d1058118604e6f: its reference visualization consumer reads every concept in example-bundle, and data-olympus imports, lints, indexes, searches, and retrieves the pinned official Bitcoin sample. This is fixture-scoped interoperability evidence, not a blanket guarantee for every OKF bundle or future upstream revision. The result is a git-native, version-controlled document graph of engineering standards, architectural decisions, and project knowledge that agents and humans can read, search, and extend without any proprietary service.

It governs decisions, not code. When an agent is about to make a choice (a library, a pattern, a migration), data-olympus surfaces the established standard or decision that should govern that choice. It is deliberately not a code-search, reference-finding, or "where is X used" tool: LSP, grep, and Sourcegraph already do that well. The retrieval task it targets is coding-intent to governing-rule, and it helps where current model interaction during vibe-coding is weakest: keeping the model aligned to patterns the team has already established as correct.

Status: pre-1.0 beta. Stable releases are distributed through PyPI and GHCR.

Why

  • Portable, no lock-in. The entire KB is a directory of markdown files in git. No database, no proprietary schema, no vendor.
  • Git-native diffs and review. Every change is a commit. Proposed edits go through a pending queue before commit; history is plain git log.
  • Agent and human readable. Plain markdown with YAML frontmatter. No SDK required to read or author a document.
  • Governed multi-agent writes. The single-writer MCP pipeline (advisory locks, per-session worktrees, durable push queue) prevents concurrent write races without requiring distributed locking infrastructure.
  • Queryable by status, tier, and type. Filter by status: accepted, tier: T1, or type: decision without post-processing. The supersedes chain makes it possible to trace decision history across the graph.
  • Tested with official OKF tooling. CI pins an exact Google OKF revision and proves both consumption directions over committed fixtures. The pin, fixture checksum, and Apache 2.0 license provenance live in tests/okf/reference.json.

Quickstart

Requires Python 3.13+ and uv. Run the stable CLI directly from PyPI:

uvx --from data-olympus data-olympus --help

Install it persistently when you are ready to create a bundle and run the server:

uv tool install data-olympus
data-olympus init my-kb
data-olympus-mcp --help

An announced candidate remains opt in through its exact PyPI version. Replace X.Y.ZrcN with the candidate named on the releases page, if any:

uvx --from 'data-olympus==X.Y.ZrcN' data-olympus --help

See release channels for what each channel means, how to verify a candidate before adopting it, and how to roll back.

See docs/quickstart.md for bundle initialization, server startup, readiness, agent registration, and the contributor source installation.

See docs/adoption.md for the full bundle authoring guide.

Documentation

  • SPEC.md: format specification (bundle layout, frontmatter schema, serving contracts).
  • docs/quickstart.md: verified local-run procedure.
  • docs/adoption.md: bring-your-own-KB guide (author, lint, index, serve, wire an agent).
  • docs/serving.md: single-replica serving model, read-only replicas, git pull loop, health/readiness/liveness split, proxy headers, audit-log rotation.
  • docs/operations.md: production runbook — backup, upgrade, recovery playbooks (degraded/fetch-failed, history rewrite, frozen/demoted push entries, orphaned locks), the health/alerting model, and release channels (stable and candidate, verification, rollback).
  • docs/comparison.md: how data-olympus relates to OKF, enterprise catalogs, markdown KB tools, agent-context conventions, RAG, and ADR tooling.
  • docs/okf-profile.md: field-by-field OKF profile — which governance extensions are stable, which are runtime-only serving fields, and which are experimental candidates.
  • docs/glama.md: Glama registry claim, release, and score-maintenance notes.
  • docs/mcp-registry.md: official MCP Registry notes, what server.json declares, and the checklist for publishing.
  • docs/enforcement.md: turning the KB into a mandatory consultation gate (hooks, kb enforce).
  • benchmarks/README.md: retrieval benchmark methodology and how to reproduce the numbers in docs/comparison.md.
  • SECURITY.md: supported versions and how to report a vulnerability.

License

Apache 2.0. See LICENSE and NOTICE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

data_olympus-0.8.1.tar.gz (427.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

data_olympus-0.8.1-py3-none-any.whl (390.3 kB view details)

Uploaded Python 3

File details

Details for the file data_olympus-0.8.1.tar.gz.

File metadata

  • Download URL: data_olympus-0.8.1.tar.gz
  • Upload date:
  • Size: 427.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for data_olympus-0.8.1.tar.gz
Algorithm Hash digest
SHA256 dd66bfb2ebc404f22ad3441b1a58f023c750230b76170a65611eb8d4547f36bd
MD5 40c31e5960aca95252559ddea2dfe9f6
BLAKE2b-256 08c2273ab50b8132ab130a6e9a78bd34716401624ca9e5f95d426670d860a124

See more details on using hashes here.

Provenance

The following attestation bundles were made for data_olympus-0.8.1.tar.gz:

Publisher: tag-release.yml on knaisoma/data-olympus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file data_olympus-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: data_olympus-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 390.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for data_olympus-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a14781b5227b62dfe309c3499718beb6c82cec58fbb5a512e89047e300d6cbd5
MD5 9a10938ded2cc6987334213e6c31a8e3
BLAKE2b-256 cfea7ae48a3fa1cad1b02d81f5bd83d85d14e95815cc6e6cd96dac0c8488295f

See more details on using hashes here.

Provenance

The following attestation bundles were made for data_olympus-0.8.1-py3-none-any.whl:

Publisher: tag-release.yml on knaisoma/data-olympus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.8.1 This release

2 files

0.8.0

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.5

2 files

0.3.4

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page