Skip to content

Databao Context Engine is an open-source engine that automatically generates a governed semantic context from your databases, BI tools, documents, and spreadsheets. It runs locally in your environment and integrates with any LLM to deliver accurate, context-aware answers

License

Notifications You must be signed in to change notification settings

JetBrains/databao-context-engine

Repository files navigation

official project License

Databao Context Engine

Semantic context for your LLMs — generated automatically.
No more copying schemas. No manual documentation. Just accurate answers.

Website


What is Databao Context Engine?

Databao Context Engine automatically generates governed semantic context from your databases, BI tools, documents, and spreadsheets.

Integrate it with any LLM to deliver accurate, context-aware answers — without copying schemas or writing documentation by hand.

Your data sources → Context Engine → Unified semantic graph → Any LLM

Why choose Databao Context Engine?

Feature What it means for you
Auto-generated context Extracts schemas, relationships, and semantics automatically
Runs locally Your data never leaves your environment
MCP integration Works with Claude Desktop, Cursor, and any MCP-compatible tool
Multiple sources Databases, dbt projects, spreadsheets, documents
Built-in benchmarks Measure and improve context quality over time
LLM agnostic OpenAI, Anthropic, Ollama, Gemini — use any model
Governed & versioned Track, version, and share context across your team
Dynamic or static Serve context via MCP server or export as artifact

Prerequisites

This README assumes you will use uv as your package manager.

You can install it following the instructions here

If you are going to push to the repository, please make sure to install git pre-commit hooks by running

  uv run pre-commit install

How to run?

You can run it with:

  uv run dce info

Not providing the info subcommand or using the --help flag will show the help screen for the command.

Using the dce command directly

To be able to use the dce command directly (without using uv run or python) there are two options.

Installing dce locally

For that one needs to:

  1. Build the project by running
  uv build
  1. Installing the project on our machine by running:
  uv tool install -e .

This second step will install the dce script on your machine and add it into your path.

Create dce alias using nix

This method will simply create a new shell environment with dce alias. For that one needs to install nix package manager (https://nixos.org/download/). After that one could simply run in the project root

$ nix-shell

which is a short version of $ nix-shell shell.nix.

Alternatively, one could specify the path to the project repository

$ nix-shell {path_to_dce_repository}

After that, you can then directly use:

  dce --help

Note: when we actually release our built Python package, users that don't use uv will still be able to install the CLI by using pipx install instead.

Running Mypy

mypy has been added to the project for type checking.

You can run it with the following:

  uv run mypy src --exclude "test_*" --exclude dist

NB: the above runs type checking on all files within the src directory, excluding all test files.

Running tests

You can run the tests with:

  uv run pytest

(there is currently one test succeeding and one test failing in the project)

Generating JSON Schemas for our plugin's config files

To be able to build a datasource, each plugin requires a yaml config file that describes how to connect to the datasource, as well as other information needed to customise the plugin.

To document what each config file should look like, we can generate a JSON schema describing the fields allowed in that file.

You can generate all JSON schemas for all plugins by running:

  uv run generate_configs_schemas

Some options can be provided to the command to choose which plugins to include or exclude from the generation. To see the options available, you can refer to the help:

  uv run generate_configs_schemas --help

About

Databao Context Engine is an open-source engine that automatically generates a governed semantic context from your databases, BI tools, documents, and spreadsheets. It runs locally in your environment and integrates with any LLM to deliver accurate, context-aware answers

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6

Languages