Skip to main content
Every company has its own dictionary. “Active customer” might mean logged in this quarter in one team and paid an invoice this month in another. Off-the-shelf AI doesn’t know your dictionary — Unified Context does. It’s the layer between your data and your agents that makes generated SQL and tool calls correct instead of plausible.

What’s in it

Schema annotations

Pin business meaning to columns and tables: flag_2_new = cancellation flag, 1 = Active, 0 = Cancelled. Stored encrypted per tenant.

Business glossary

Tenant-wide terms — “MRR”, “VIP customer”, “active subscription” — each mapped to a definition and (optionally) the SQL pattern that computes it.

Query Memory

Validated question→SQL pairs the agent has gotten right before, retrieved as few-shot examples on the next similar question. The more it runs, the sharper the SQL — isolated per tenant.

Live retrieval

Slack threads, Microsoft 365 emails, and content from connected SaaS apps are embedded per tenant and retrieved at query time, with citations.

Schema relationships

Foreign-key hints and virtual relationships you declare in the panel — so the agent writes correct joins even when the database has no FK constraints.
None of this contains raw row data. Annotations describe meaning; retrieval returns chunks from ingested documents; Query Memory stores query shapes — not your transactional rows.

How an agent uses it

Every agent request — in chat, in a flow, or via the API — builds a per-tenant context bundle:
  1. Active annotations and glossary terms for the scoped sources are injected into the agent’s tool descriptions and system prompt.
  2. If the prompt mentions a concept (MRR, VIP customer), the glossary entry is surfaced before SQL generation.
  3. Similar past queries from Query Memory are added as examples.
  4. Relevant document chunks from Slack / M365 retrieval are added with citations.
  5. The agent picks the right tool, writes the right SQL, and answers grounded in your data.
The model gets your business context as part of every call — it doesn’t guess what flag_2_new means or invent a definition of MRR.

What you control

In the panel under Semantic Layer:
  • Annotations — one entry per column or table: business term, value map (1 = Active, 0 = Cancelled), example values, PII flag. The schema tree supports filtering and pagination for databases with hundreds of tables.
  • Glossary — define tenant-wide terms once; every agent call sees them.
  • Virtual relationships — declare implicit joins your database doesn’t enforce.
  • Audit — see when each entry was added and by whom.
You curate; the agent uses what you’ve curated.
The more you annotate, the more accurate the generated SQL becomes. Annotations and glossary terms are the highest-leverage ten minutes you can spend after connecting a new source.

Per-tenant isolation

Unified Context is strictly tenant-scoped — independent annotation sets, glossaries, memories, and retrieval per organization. No cross-tenant reads, no shared training data. Isolation is enforced at the database with Row-Level Security, not just in the application. See Governance.

Plan availability

Unified Context is included in every plan — Free, Growth, Team, and Enterprise. Tier differences are volume (data sources) and enterprise controls (RBAC, audit, air-gap), not the context layer itself.

Roadmap

  • Self-healing verification — automatically detect when an annotation has gone stale against live data (new enum values, dropped columns) and flag it for review.
  • Suggested annotations — propose entries from column-name patterns and reused query shapes.
Until those ship, the annotations and glossary you add are what the agent sees.