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
SQL + context
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.
“How many active customers do we have?”
CUSTOMER_UNIQUE_ID.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.