APIs and MCP

The interfaces differ. The semantics do not.

Agents connect over MCP and applications call the SQL and GraphQL APIs. Every request compiles with your access rules built in.

MCP, because analysis has state

Assistants and coding agents connect over the Model Context Protocol. It carries a stateful session, so a later step can name an earlier result and that reference goes back through the compiler.

Where a request needs no state from what came before, the SQL and GraphQL APIs give you the same answer.

A session transcript: a question, its result, then a later question tied by a dotted line back to one row of the earlier result

APIs for the software you build

Embedded dashboards and in-house front-ends call the SQL API or GraphQL. BI tools connect over JDBC and ODBC, and Excel over the XMLA endpoint it already speaks.

All of them resolve metrics, joins and filters from one set of definitions, so a number in the product you built matches the number in the dashboard next to it.

Three differently shaped client windows, each wired down to the same shared bar of definitions

Every agent gets its own identity

An unattended agent cannot sit through a sign-in prompt, so each one gets a scoped key: a per-agent identity whose permissions and lifetime you set.

How far it reaches is set by a domain - the slice of the semantic layer that agent is allowed to see, with its filters already attached.

Three agents, each holding its own key above its own lock in a single boundary wall, with the warehouse behind it

Put the session record in your test suite

Every session is recorded centrally, and the record is programmatic: what the question was taken to mean, what context came back, the plan, the SQL that ran, and any feedback.

Evaluation APIs run a set of known questions on each publish, so a regression surfaces in your pipeline instead of in a meeting.

A conversation recorded as a sequence: each question above its result card, every card holding one more row than the last, all standing on a single session rail

Connect your AI assistant

Add Honeydew as an MCP server in Claude, Cursor, or Codex, point it at a governed domain, and ask it a question about your own data.