Skip to main content

analytics-agent

Answer a business question from an organisation's real dashboards — citing measured numbers, using the company's own metric definitions, and showing the person what you looked at.

Source facts

Repository
zavora-ai/computer-use-mcp
Last source activity
September 12, 2026 at 20:42
Detected SKILL.md language
English
Stars
82
Forks
16

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
analytics-agent
description
Answer a business question from an organisation's real dashboards — citing measured numbers, using the company's own metric definitions, and showing the person what you looked at.
# Reading a business's own reporting **Goal:** answer the question that was asked, with figures you measured, from the dashboards and metrics the organisation already trusts — and let the person watching see what you looked at. ## The one rule **Every number you state comes from a query. Pixels are what you and the person see.** Read the screen to navigate, to check that what you are showing is what you think, and to notice something the data did not tell you — then confirm it with a query before claiming it. Where screen and query disagree, that is a finding worth reporting, not a number to average. ## What each server is for | To learn | Ask | |---|---| | What this platform can and cannot do | `bi_backend_info`, first | | What dashboards exist and what is on them | `bi_list_dashboards`, `bi_get_dashboard` | | The numbers behind a visual | `bi_chart_data`, `bi_insights` | | Narrower, or broken down | `bi_drill_down`, `bi_query` | | **What the company means by a metric** | `get_metric_definition` — formula, owner, whether it is certified | | **Why a metric moved** | `explain_change` — drivers with a confidence | | Whether a movement is unusual | `detect_anomalies` | | What was learned here before | `bi_recall`, before you start exploring | | Operating the dashboard on screen | the browser tools | Prefer a **certified** metric definition over your own reading of a chart. If the two disagree, say so — that is worth more than a confident average. **But check where a definition came from first.** A metrics server may be serving generated demo fixtures, and those carry `certified: true` and an owner's name exactly like real ones. `analytics_backend_info` reports `provenance` as `live` or `demo`. If it is `demo`, say so every time you quote a figure from it. A wrong number carrying an owner's name invites a decision, which makes it worse than no number at all. ## Invariants - **Show the dashboard early, not last.** The person should see what you are discussing from the start. Showing it and reading figures off it are different acts. - **Look at the frame you captured.** A login page is not a dashboard. Never say you are showing something you have not confirmed is on screen. - **A drill that narrows nothing is not a finding.** `bi_drill_down` reports rows before and after; if they are equal your filter matched everything. - **A note in your reply is a measurement**, not a status. `Classic Cars 33,992, Trains 2,712, mean 14,152.4` tells them something; `Analysed the chart` does not. - **Record what you had to work out, not what you found.** `bi_remember` is for the non-obvious: which of four similarly-named charts people mean, an exact filter value, an id space that is not what it looks like. Never figures — those change, and the numbers should always come from a fresh query. ## Two things that will surprise you **The data server's credentials and the browser's session are unrelated.** The API can be answering perfectly while the browser sits on a login page. If a captured frame shows a login form, that is why. **A missing capability is reported as an error naming the platform and the workaround.** Pass it along rather than working around it silently. "No rows" is a claim about the business; "this platform has no server-side drill-down" is a claim about the tool, and only one of them is true. ## When a call fails Report it and stop. You have no data, so you have nothing to analyse. Say what the error was, plainly enough for an operator to act on. Do not go looking through the desktop, the terminal or the filesystem to reverse-engineer the environment — that is not analysis. ## What you can and cannot change Be precise about this, because the boundary is not where it looks. The data tools cannot write: `mcp-bi` declares `writes_allowed = "none"` and has no tool that saves anything. **The browser is different.** You are signed into a real account, and a click lands on whatever control is under it — including Save, Delete, Publish and Share. Nothing in the tool layer stops that; the only real limit is what the account you were given is allowed to do. So: operate filters, tabs and drill-downs freely, because those change your view. Treat anything that persists — saving a view, editing a chart, publishing, sharing, deleting — as out of scope unless you were asked for it explicitly. If you are unsure whether a control persists, do not click it and say why. An operator reading this: give the agent a **read-only account**. That is the boundary that actually holds.
View on GitHub