Skip to content
Raw Markdown

Introduction to Cassis

Cassis helps your team build and maintain the business context analytics agents use to answer data questions.

A schema tells an agent that an order has a status, a price and several dates. Your business decides which orders count as revenue, whether shipping is included and which date to use. Cassis connects those definitions to the data, uses them to answer questions, and helps your team improve them when those questions reveal gaps.

What context contains

Consider an online marketplace where revenue means the value of delivered order items, excluding shipping. Its context connects four kinds of information:

Domains
Written business knowledge, organized by area. A “Measuring sales” domain explains what revenue means and when to use the raw sales tables or their rollups.
Metrics
Named calculations with their filters, units and synonyms. “Business volume” adds item prices over delivered orders, in EUR. In this example, revenue and GMV are synonyms.
Tables and columns
What each record represents and what its fields mean. Order items carry the amounts; orders carry status, purchase date and delivery date.
Joins
How records connect, including their cardinality and limitations. Many order items belong to one order, connected through the order ID.

Together, these definitions form the context, also called an ontology. They are stored as Markdown and YAML, so they can be read, reviewed and maintained in Git. The web app provides another way to inspect them.

Explore the marketplace context to see these objects in Cassis and read their source files.

Where Cassis sits

Your team Build, review and test Schema, dbt and business knowledge
Context filesGit + CLI, or the web app
Publish Proposed fixes
CassisHosted service
Published context Domains · metrics · tables · joins
Answer questionsGenerate SQL from the definitions. With a warehouse connection, run it and return results.
Improve contextUse questions and feedback to propose changes for review.
People and agents Ask a data question Web app · Slack · MCP client
Question Results when connected
SQL + context
With a warehouse connectionCassis runs the query and returns the results, SQL and context used.
With only a schema fileCassis returns SQL and context. Your tools run the query on your warehouse.

Build and publish your context

Start from your schema, dbt models, documentation and business knowledge. With a coding agent and the Cassis CLI, your team can turn those sources into context files, validate them and review changes in Git. For an app-managed project, you can build and edit the context in the web app, including with its modeling assistant.

Cassis’s Explorer lets you inspect the resulting domains, metrics, tables and joins. Your team reviews the definitions and publishes a version for querying agents to use. The files remain editable as the business changes.

Ask questions using that context

Ask in the Cassis web app, in Slack, or from an AI assistant connected through MCP. Cassis follows the context hierarchy to find the business rules, metrics, tables and joins relevant to the question, then generates SQL. The response includes the SQL and the context used, so you can inspect how the question was interpreted.

For the marketplace above, a question about revenue uses the defined item prices and delivered-order filter. The agent does not have to infer those rules from column names. If the question needs more information, Cassis can ask for clarification.

With a connected warehouse, Cassis executes the SQL and returns results. With a DDL schema file, it returns SQL without executing it; your own tools run the query.

Improve context from real questions

Suppose someone asks how many customers are active, but the context does not define “active.” A clarification can settle the question in that conversation. Making the definition available to everyone requires a context change.

A question reveals a gap
“How many active customers do we have?”
“Active customer” is not defined.
The asker suggests: “At least one delivered order in the last 90 days.”
Cassis uses the question and clarification to propose a fix
Active customersProposed definition
Customers with at least one delivered order in the last 90 days.
Count each person once, using CUSTOMER_UNIQUE_ID.
For this historical dataset, measure the window from its latest order date.
Your team decides what becomes shared context
Confirm the ruleTest affected questionsPublish
New conversations use the reviewed definition.

Cassis uses the questions sent to it, its answers and the feedback it receives to identify issues for review. Your team can inspect the evidence, decide the rule, review a proposed fix, test it and publish the updated context. This work happens in a checkout with the CLI, or in the web app for an app-managed project. MCP supports asking questions and inspecting issues; it does not edit context.

A new conversation uses the updated version. Existing conversations keep the version they started with. The curation workflow shows how to take an identified gap through to a reviewed, published change.

Start using Cassis