KPI Tree

For agents

Canopy is the business context layer for AI agents.

Every other context layer helps AI answer. Canopy is the only one that closes the loop: each metric carries what drives it, who owns it, whether the last action actually worked and the strategic bet riding on it. Every action your team takes tests that graph, a real experiment the model keeps score of. So your agents move the business instead of just describing it.

What agents get on Canopy. None of it lives in your warehouse or semantic layer.

Correlation, causality, then proof. Noticed, interrogated, proven

Daily correlations across all your metrics, our own proprietary ML models and an array of statistical tests to separate cause from coincidence, then proof from real experiments: the actions and initiatives your team completes. Most tools stop at the first rung.

Actions that respect your org chart. Live RACI on every metric and objective

Canopy knows who is Responsible, Accountable, Consulted and Informed, and who reports to whom, so an agent notifies, assigns and escalates to the right person, not a mailing list.

Tell it what the data cannot show. Plain-language context, curated

A launch, an absence, a blocker or a decision, added in plain language or ingested from Slack and Notion. Every item records who said it, its weight follows your org chart, and anything unreliable is held for review rather than served.

What one agent works out, every agent keeps. Cross-session memory

A chat session's reasoning dies when it closes. Canopy consolidates what outcomes prove into the graph itself, with who and what formed it, so every agent starts from everything already proven rather than from zero.

Ten queries become one, and the bill stays flat. Our compute, not yours

Comparison periods, rolling totals and outlier checks are precomputed around every metric, and every aggregation runs in KPI Tree's proprietary encrypted in-memory engine, not your warehouse. An order of magnitude fewer tokens, and question volume never reaches your bill.

Plans and reforecasts in context. Not just actuals

Budgets, forecasts, targets and ramp profiles flow through the same pipeline as your actuals, so whether you are ahead of plan is a question an agent can actually answer.

The strategic plan is context too. Objectives down to tasks

Canopy carries the long-term plan alongside the day to day: objectives, key results, the funded initiatives targeting each metric and the tasks beneath them, so an agent weighing today's action knows which strategic bet it serves.

Agents know when to trust a number. Outliers and staleness tracked

Every metric is continuously checked for outliers, gaps and stale syncs, and that status travels with every answer, so an agent qualifies its answer instead of confidently quoting a broken number.

Curated context in, noise kept out

Tell it what the numbers cannot show: a launch shipped on Tuesday, a key person off this week, a metric blocked on a supplier. Anyone can add context in plain language, or connect a Slack channel or Notion page, and agents factor it in wherever the metric appears. Every item records who said it, its weight follows your org chart, and sensitive items stay visible to owners only. And context is curated on the way in: anything unreliable or contradictory is held for review rather than served, because an agent grounded in bad context is worse than an agent with none.

Ecosystem diagram loading

The evidence

Anthropic measured it. Context decides accuracy. Not the model.

Anthropic automates 95% of its business analytics queries with Claude. The accuracy comes from a hand-built layer of canonical definitions, curated references and daily evals between the model and the data, not from the model. Canopy is that layer as a product, for any agent you connect.

Anthropic engineering blog

Without skills, Claude’s ability to answer analytics questions accurately didn’t exceed 21% on our evals.

21%

The ceiling on Anthropic’s internal evals without curated context.

~95%

The same model on a curated context layer, in production today.

How Anthropic enables self-service data analytics with Claude

Five kinds of context. One governed layer.

A warehouse carries the numbers, and none of the organisational knowledge an agent needs to act on them. Canopy holds all five kinds: how the business is structured, how it operates, what its people actually did and what worked, what was true at any point in time, and where it is strategically heading. Miss one and agents hallucinate rules, contradict each other across teams, or drift as the business changes. Everything below is one of these five, in the product.

Active Customers

2,847

causal · q < 0.05

NPS

54

Paid Clicks

18,402

Structural context

The causal tree and the org chart. An agent knows what drives a metric, and who sits where.

Revenue

Finance · daily

R
A
C
+4
I
escalates to managerapprovals required

Operational context

RACI, workflows and approvals. Who owns each metric, who acts when it moves, and where a human signs off.

Fix checkout flow

Verified · +£32k

Linked to Revenue · measured by the actuals pipeline

Pause underperforming ad sets

Measuring…

Behavioural context

The decision traces. What your team actually did, and what verifiably worked, measured on outcomes.

Revenue

19 Mar 2025
Month on month4.2%
Year on year1.8%
vs Budget3.1%

Temporal context

What was true when. Plan against actual and every comparison frame, at any date in your history.

Strategic · the quarter

Reduce labour cost to below 28%83%
Labour cost %: 29.4 of ≤ 28key result
Rota optimisation rollout£30k bet

Strategic context

The objectives, key results and funded initiatives the business is pursuing, and the metric each bet targets.

Launches, absences, blockers and decisions, on the metric they explain

Context comes in every shape the business does: a launch or price change lands as an event on the metric's timeline, an absence explains a quiet week, a blocker records why nothing is moving, and a decision keeps its rationale attached. Initiative check-ins flow in automatically as the work progresses. All of it surfaces on the metric's Context tab and in every agent's answer, and the Knowledge area is the one place to browse, curate and retire it as things change.

Active Customers

Context

New pricing went live on Tuesday

eventon the timeline

Head of Sales out this week

absenceowners only

CRM migration blocked on security review

blocker

Chose annual billing push over discounting

decisionrationale kept

On the metric’s Context tab, in every agent answer.

What one agent works out, every agent keeps

A chat session is working memory: whatever an agent reasons out disappears when it closes, and no other agent benefits. Canopy is the long-term memory underneath. The causal tree, the ownership, the outcome history and the context people added persist for every agent and every person, compounding as the business runs. And every piece of memory records who or what formed it, down to the model that extracted it, so trust is inspectable. A typical company brain stops at indexing what was written; this one holds a tested model of what moves the business.

Agent · chat session

“NPS looks like the real driver of Active Customers.”

Session closed. Nothing kept.

consolidated once proven
Verified driver

Canopy remembers

Active Customers

driver: NPS

MO

“Key account manager off this week”

said by the metric owner · visible to owners

Kept for every agent, with who and what formed it

It learns over time

Most context layers are built once and decay from that day on. Canopy's causal model moves in the opposite direction, because every driver relationship climbs a ladder of evidence: noticed as a correlation, interrogated by our proprietary ML models and an array of statistical tests, then proven by the work your team was doing anyway. Edges climb as evidence accumulates, fall back when reality disagrees, and carry their rung with them, so an agent always knows whether it is quoting a hunch or a proven lever.

Metric

NPS

54

moves together · r 0.78

Metric

Active Customers

2,847

Email CTR ↔ Trial Signups · r 0.41

Paid Clicks ↔ Pricing Views · r 0.37

…22,791 pairs tested tonight

01Noticed, nightly

Every pair of metrics is swept for correlation after each sync, seasonality stripped, in and beyond your trees. A candidate at this stage is noticed, not believed.

Lagged correlationlag 4d
Partial correlationr 0.71
Granger causalityp 0.003
BH-FDR correctionq < 0.05

NPS → Active Customers survives. Most candidates do not.

02Interrogated

Proprietary ML models and a battery of statistical tests, corrected across thousands of pairs, separate cause from coincidence. What survives is strong evidence, still fitted to observation.

Follow-up sprint on detractors

Measuring…

MOMarta Okafor · owner

Declared before the result:

Active Customers ↑

03The team acts

An owner’s action declares the metric it intends to move, and the direction, before the result is in. Completed work doubles as a real-world experiment.

Follow-up sprint on detractors

Verified

Active Customers 2,847 → 2,921 · measured by the actuals pipeline

NPS drives Active Customers · verified

“New pricing went live” · kept with the metric, for every agent

04Proven and remembered

The outcome, measured by the same pipeline as your actuals, verifies the edge for every agent. Conclusions that stop holding are discounted and rolled back.

Your org chart, in context

Canopy knows who reports to who and keeps an always-current RACI on every metric and objective, so an agent's answer can become an action routed to the right named person rather than a paragraph describing a problem. When someone leaves or moves team, the accountability moves with them. There is no ownership primitive in a warehouse or a semantic view; this is context only the layer above can carry.

James Harrington

CEO

14

Sarah Chen

VP Revenue

A · Revenue

David Mitchell

VP Product

Sofia Martinez

VP Marketing

2

Emma T.

Growth

Laura F.

Sales

Reporting lines and RACI, current on every answer.

It reads the long-term plan, not just today's numbers

A context layer that only knows the day to day produces tactically sensible, strategically blind answers. Canopy holds the strategic tier alongside the tactical one: every objective, its key results, the funded initiatives targeting each metric and the tasks in flight beneath them, all wired to the same tree. Ask an agent whether a dip is worth acting on and it knows the quarter's bet on that driver, the budget behind it, who owns it and what is already being done. Day-to-day recommendations stay aligned to the long-term plan because both live in one model, either side of the same strategic and tactical line.

Strategic · reviewed quarterly

At risk

Reduce labour cost percentage to below 28%

83%

outcome · Department objective · 1/3 tasks done

Key result: below 28% by quarter end

29.4

reads itself from the pipeline · nobody types a status

Labour cost %, live

Active

Rota optimisation rollout

40%

execution · £12k of £30k spent · 3 tasks

Strategic/Tactical

Tactical · runs daily

Detect

Up 4.2% this weekLabour cost %

Outlier-checked against seasonality, so it is signal, not noise.

Route

ASarah is told, with the driver attached

RACI from your directory decides who, the tree decides why.

Act

Task: pilot the new rota at Canary Wharf

Filed inside the rota rollout, so the work counts towards the bet.

Verify

Impact measured on the metric

What worked is remembered; next quarter plans against proof.

Canopy, the business context layer, holds both tiers

People and agents read the same model, over the app or MCP.

Causal driversRACI ownershipObjectives and initiativesBudgets and plansVerified impactData quality

Roughly ten queries become one, and the warehouse bill stays flat

An agent investigating a metric straight on the warehouse runs roughly ten queries: the current value, each comparison period, rolling totals, outlier checks, every one a live warehouse hit and a context-window round trip. Canopy precomputes that metadata so a single query returns it, and every aggregation, comparison and correlation runs in KPI Tree's proprietary encrypted in-memory engine, not your warehouse. There are no pre-aggregations to define and no cache warm-ups to schedule; the precompute is automatic for every metric and refreshes as new data lands. Agents burn an order of magnitude fewer tokens, answer at in-memory speed, and your warehouse bill stays flat while question volume grows.

Compute engine loading

Any date, any grain, every comparison. No query.

Every metric re-aggregates automatically to any granularity, daily, weekly, monthly, quarterly or yearly, while respecting each metric's additivity: sums sum, rates average, balances carry their last value. And for every date in your history, more than twenty comparison frames are already computed: rolling 7 and 30 days, week on week through year on year, every to-date frame against last period and last year, same day last year, retail 4-5-4 calendars, even Black Friday alignment. An agent can time-travel to any date and read all of it in one in-memory call, at answer speed. Budgets and reforecasts aggregate through the same pipeline, side by side with actuals.

Time travel timeline loading

Confidence built in

An agent on raw tables cannot tell a stale number from a fresh one, or an outlier from a trend, so it answers confidently either way. Canopy tracks outliers, gaps and staleness automatically and surfaces them as context, so the agent knows when to trust a number and says so when it should not. Budgets, reforecasts and ramp profiles are part of the context too, flowing through the same pipeline as actuals, so an agent knows what the plan actually was, not just what happened.

Data quality checks loading

Same agents. Same MCP. Different context.

Connecting an agent to your warehouse or catalogue is real and good: governed definitions kill hallucinated SQL and permissions are inherited. Pick what your agent sits on today; the comparison is about everything after the number.

ClaudeChatGPTGeminiCopilot
MCP
KPI Tree Canopy
Metric Context
Cross-platformOne warehouse only. Metrics living in other warehouses, databases or tools are invisible to the agent.One context layer across Snowflake, BigQuery, Databricks, Redshift, Azure SQL, Postgres and Google Sheets, plus anything with an MCP server. Metrics from different platforms live in the same tree, with the same causality, ownership and actions.
Metric definitionsRaw tables and SQL. The agent re-derives every metric per question, so ask twice and you can get two answers.Governed definitions synced from your semantic layer, identical on every surface, with the causal model on top.
Data lineageObject dependencies and access history exist, but the agent reconstructs lineage query by query.Full dbt lineage travels over the same MCP: which models and columns feed every metric, with the causal model above it. Where the number came from and what moves it, in one context.
Queries per questionRoughly ten warehouse round trips per metric: the value, each comparison period, rolling totals, outlier checks.Comparison periods, rolling totals and outlier checks are precomputed, so one call returns the full picture. Roughly ten queries become one.
Warehouse billEvery agent question is warehouse compute, and agents ask a lot of questions.Aggregations, comparisons and correlations run in KPI Tree's proprietary encrypted in-memory engine. The bill stays flat as question volume grows.
Data confidenceNone. The agent confidently quotes whatever the table returns, including broken numbers.Outliers, gaps and stale syncs are tracked continuously per metric, and that status travels with every answer.
Business Context
CausalityNone. The LLM narrates whatever pattern it spots in the moment, and correlation gets presented as causation.Driver edges statistically proven daily by our own proprietary ML models and an array of statistical tests, and pruned by the people who know the business.
OwnershipNone. Ownership lives in people's heads.RACI on every metric and objective plus the live org chart, so an agent knows who is Accountable, who to notify and how to escalate.
Financial plan contextPlans usually live in planning tools or spreadsheets outside the warehouse, with no shared aggregation logic.Budgets, reforecasts, targets and ramp profiles flow through the same pipeline as actuals, so an agent knows what the plan was.
Strategy contextNone. The strategy lives in decks and OKR tools the agent cannot see.Objectives, key results and funded initiatives are wired to the same tree, so an agent knows which strategic bet a metric serves and what work is targeting it.
Action Context
Acting on a changeNone. The answer ends in the chat window.A metric move pushes to the named owner with the driver attached, and workflows escalate up the reporting chain when nobody acts.
Agent write-backAn agent can run SQL, but there is nowhere to record an action, an owner or an outcome.The context is writable through the same MCP: agents file tasks against metrics, update ownership and propose tree edits, with every change traced.
Learning over timeStateless. Every session starts from zero and the org never learns from itself.Every action declares its expected effect up front, so completed work doubles as a real-world experiment on a driver edge. What passes re-weights the model, every change is evidenced and reversible, and it is all remembered between sessions for every agent.

Run your own workflows on this context

Because Canopy holds the org chart, the RACI and the metric triggers, you can automate business processes on top of it. Someone is out of office? The action escalates to their manager automatically. A metric goes silent, a key result drifts or a period closes off-target? A workflow fires, with approvals as the human gate. This is context that does things, not context that gets quoted.

Workflow builder loading

Prefer us to run the agents? Meet Canopy Agents

Everything on this page is what external agents consume over MCP. When you would rather not bring your own, Canopy Agents are the agents KPI Tree runs for you: the Personalised Action Plan, RACI assignment, canvas and Slack agents, plus custom agents you deploy, all on this same context with your permissions, model choice, spend caps and full run history.

Weekly revenue review

scheduled · Mondays
ModelClaudeOpus 4.8
Spend this month£4.20 of £25 cap
Actions require approvalon

Ask questions that were previously impossible

What is driving churn, who owns the fix, did last month's action actually work, and which objectives are at risk? No warehouse query answers those. Canopy's MCP carries the driver edges, RACI, verified impact, budgets and reforecasts, objectives and initiatives, and full dbt lineage behind every metric, and it is writable: agents file tasks, update ownership, propose tree edits and register driver hypotheses for outcomes to test, all traced. Every answer is scoped to the asking user's permissions. And because the context is defined once, connecting another agent costs nothing: one-click setup for Claude, ChatGPT, Gemini, Copilot and the other MCP clients, with no separate integration per agent.

AI query examples loading

Common questions

What is a business context layer?
The layer between your data and your AI systems that carries the organisational knowledge raw tables cannot: structural context (the causal tree and the org chart), operational context (RACI, workflows and approvals), behavioural context (the decision traces of what people actually did and what verifiably worked), temporal context (what was true when, plan against actual) and strategic context (the objectives, key results and funded initiatives the business is pursuing). Without it agents hallucinate rules, fragment into inconsistent answers across teams, and drift as the business changes. Canopy delivers all five, governed, at runtime.
Is this just correlation analysis with better packaging?
No, and the difference is the point. Our own proprietary ML models and a battery of daily statistical tests nominate candidate drivers with proper rigour, but nothing is marked proven by maths alone. Every task and initiative in KPI Tree declares the metric it intends to move and the expected direction before the result exists, so completed work doubles as a real-world experiment on a driver edge. Outcomes are measured by the same pipeline that calculates your actuals, and only edges that pass are marked verified. That is interventional evidence accumulated from work your team was doing anyway, and no tool that only observes your data can produce it.
Isn't this just a company brain?
A company brain aggregates what your tools already hold, Notion pages, Slack threads and documents, indexed so an AI can search them. That is useful, and Canopy ingests those sources too. The difference is what happens next. A company brain can only repeat what someone wrote; it has no idea what drives your revenue, who owns the fix, or whether last quarter's plan actually worked. Canopy attaches every piece of context to the metric it explains, weighs it by who said it, keeps sensitive items with the right people, and feeds it into a causal model tested by your team's real experiments. Aggregation is where it starts, not where it ends.
Can we tell Canopy things the data cannot show?
Yes. Anyone can add context in plain language: a launch date, an absence, a blocker, a decision and its rationale. Agents factor it in wherever the related metrics appear. Slack channels and Notion pages can be ingested on demand or kept in sync. Every item records who said it, its weight follows your org chart, sensitive items can be restricted to a metric's owners and admins, and everything ingested is reviewed on the way in, so unreliable or contradictory claims are held back rather than served to agents.
Does Canopy replace our semantic layer?
No. It sits above it. Keep dbt, Looker or Snowflake semantic views as the source of calculation truth; Canopy adds the causal, ownership and outcome context they do not model.
Why not connect our agent straight to the warehouse?
For one-off numbers, do. But a direct connection re-derives the business on every question, cannot know what drives what with statistical confidence, who is accountable, whether the last action worked, or which objective and funded initiative a metric serves, and it burns roughly ten warehouse queries where Canopy serves one precomputed answer.
Which agents can connect?
Anything that speaks MCP: Claude, ChatGPT, Gemini, Copilot, Cursor, VS Code, Windsurf, Gemini CLI and more.
Is our data stored?
By design KPI Tree does not store your raw data; cached data is encrypted at rest in an HSM-backed engine.

See it on your own metrics.