Self-Service Data Analytics with Claude-Powered Agents

anthropic · Tech · 2026 · source Agentic: yes · promotional bias: med · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: self-service business analytics

Anthropic needed Claude-powered analytics agents to answer business questions accurately without creating metric sprawl, stale definitions, or a false sense of precision from letting agents freely query the warehouse.

Constraints:

Architecture

Anthropic built an agentic analytics stack around strong data foundations, governed canonical datasets, semantic-layer-first routing, curated sources of truth, Claude skills that encode procedural analysis workflows, offline evaluations, CI and telemetry, adversarial SQL review, passive monitoring, and active correction harvesting that opens reference-doc PRs for domain owners.

Diagram confidence: explicit (topology described by the source).

flowchart LR
  A["Business user question"] --> B["Claude analytics agent"]
  B --> C["Knowledge skill"]
  B --> D["Unbook analysis skill"]
  C --> E["Semantic layer"]
  E --> F["Canonical data models"]
  C --> G["Curated reference docs"]
  B --> H["Query execution tools"]
  H --> F
  B --> I["Adversarial SQL reviewer"]
  J["Offline eval suite"] --> B
  J --> L["Data repo and CI"]
  K["Correction harvesting agent"] --> G
  K --> L
  F --> L
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Business user question Natural-language analytics request from a non-specialist or stakeholder. Claude analytics agent
Claude analytics agent Agent that interprets analytics questions, consults skills, runs queries, reviews assumptions, and returns answers. Business user question, Knowledge skill, Unbook analysis skill, Query execution tools, Adversarial SQL reviewer
Knowledge skill Router skill that narrows the domain search space to curated reference files and sources of truth. Claude analytics agent, Semantic layer, Curated reference docs
Unbook analysis skill Procedural skill that encodes the senior analyst workflow and reusable analysis patterns. Claude analytics agent, Knowledge skill, Adversarial SQL reviewer
Semantic layer Compiled metric and dimension definitions that the agent is structurally required to use first. Knowledge skill, Canonical data models
Canonical data models Governed datasets, transforms, tests, tables, and metadata in the warehouse. Semantic layer, Data repo and CI
Curated reference docs Domain docs, lineage, dashboard catalogs, reusable patterns, and business context used instead of raw search across everything. Knowledge skill, Correction harvesting agent
Query execution tools Managed connection and schema/query tooling used to compile and run SQL. Claude analytics agent, Canonical data models
Adversarial SQL reviewer Sub-agent that challenges assumptions and reviews SQL before final answers. Claude analytics agent, Unbook analysis skill
Offline eval suite Dashboard and long-tail evals with telemetry for skill/model changes. Data repo and CI, Claude analytics agent
Correction harvesting agent Scans stakeholder channels for correction language and opens reference-doc PRs. Curated reference docs, Data repo and CI
Data repo and CI Single source of truth for models, docs, dashboards, skills, and validation gates. Canonical data models, Offline eval suite, Correction harvesting agent

Data flow

A stakeholder question enters a Claude analytics skill; the skill routes first to the semantic layer, then to curated domain reference files, lineage, dashboards, and governed models; the agent clarifies the question, compiles and runs SQL through managed query tools, performs data-quality and adversarial SQL review, returns a provenance-rich answer, and feeds corrections back into markdown reference docs and offline evals through scheduled correction-harvesting agents.

3 supporting quotes
“the skills we developed are hugely value additive. Without skills, Claude’s ability to answer analytics questions accurately didn’t exceed 21% on our evals.”article, stated
“The unbook skill encodes the process a senior analyst would follow: clarify the question, find sources (via the knowledge skill), run the query”article, stated
“A scheduled agent scans stakeholder channels every few hours for similar correction language, drafts a one-line fix to the relevant reference doc”article, stated

Why this architecture

Anthropic found that accuracy depends less on giving agents more raw data and more on routing them through governed definitions, curated references, procedural skills, and fixed evals; direct access to thousands of SQL files barely moved accuracy because the hard problem was mapping questions to the right entity.

3 supporting quotes
“The central problem comes down to our **_ability to map a user’s question to specific and up-to-date entities in our data model”article, stated
“Accuracy moved by less than a point in either direction.”article, stated
“our bottleneck wasn't access to prior work, it was structure”article, stated

Models used: Claude · Claude Code

Scale

Alternatives considered (roads not taken)

Point Claude at the warehouse and let agents execute freely

Rejected because: This creates a false sense of precision if concept/entity mapping is wrong.

“pointing Claude at a warehouse and letting the agents execute can create a false sense of precision.”article, stated

Expose all prior SQL through raw retrieval

Rejected because: The information was often present, but unstructured access did not help the agent map questions correctly.

“About 80% of the time, yes. Did "answer present" predict "now gets it right"? No, the flip rate was flat.”article, stated

Auto-generate metric definitions from raw tables and query logs

Rejected because: The generated definitions encoded the ambiguities Anthropic wanted to remove and hurt eval performance.

“bootstrapping the semantic layer by having an LLM auto-generate metric definitions from raw tables and query logs.”article, stated
“It produced plausible-looking definitions that encoded the very ambiguities we were trying to eliminate”article, stated

Let humans fully own every correction manually

Rejected because: Anthropic uses scheduled agents to draft reference-doc fixes and domain owners to review PRs.

“The fix path is deliberately boring — edit a markdown file, merge, auto-sync everywhere”article, stated

Patterns

tool-use-orchestration (analytics-agent)

Claude skills route the agent through semantic-layer tools, managed query tools, SQL execution, and adversarial review rather than unconstrained warehouse access.

“3. Compile + run — build the spec → compile to SQL → execute”article, stated
“6. Adversarial SQL review (MANDATORY) — spawn the [sql-reviewer] sub-agent”article, stated

context-engineering (agent-context)

Skills and curated reference docs deliberately narrow what context the agent sees, replacing raw search with procedural and declarative context loading.

“a knowledge skill acts as a thin top-level router that allows additional domain details to load on demand.”article, stated
“it narrows the space to a few dozen curated files before a query is ever written.”article, stated

eval-driven-development (evaluation)

Every skill structure decision is made against fixed offline evals, CI telemetry, domain launch thresholds, and correction-harvested eval additions.

“Every structural decision about the skill (e.g., which sources to expose, whether a sub-agent earns its latency, whether to merge two skills into one) is made by holding our offline eval set fixed.”article, stated

human-in-the-loop-gate (governance)

Humans own metric definitions, validate generated evals, approve domain launches, and sign off leadership-bound answers.

“Therefore we recommend generating the documentation with Claude, but having a human own the definition.”article, stated
“Our mitigations are the provenance footer, explicit human sign-off on anything leadership-bound, and a standing eval for each domain's top KPIs that sanity-checks against the blessed dashboard daily, though we don’t have a robust solution yet.”article, stated

Tradeoffs

Use governed canonical models and skills.

Chose a smaller curated source space over letting Claude search every table, dashboard, and query.

Rationale: Structure solved ambiguity better than raw information access.

“The goal is that when an agent searches for a concept, it finds a single governed answer.”article, stated

Add adversarial review selectively.

Chose review sub-agents for final SQL answers over cheaper direct answers without review.

Rationale: Review improved accuracy but added substantial token and latency costs.

“* Adversarial review: we’ve found that employing a Claude skill to aggressively challenge all underlying assumptions on a potential final answer increased accuracy by 6% within our eval set, but at the cost of 32% more tokens and 72% higher latency.”article, stated

Generate docs but human-own definitions.

Chose Claude-assisted documentation with human metric ownership over LLM-generated metric definitions.

Rationale: Documentation drafting helps, but definitions need accountable governance to avoid encoding ambiguity.

“Therefore we recommend generating the documentation with Claude, but having a human own the definition.”article, stated

Gotchas (what bit them)

Raw access to more analytics artifacts did not solve accuracy.

Root cause: The agent could see the relevant information but still failed to map questions to the right governed entity.

Resolution: Curate domain reference docs and procedural skills that route the agent before SQL is written.

“The information was there, the agent saw it, and it still didn’t use it. That single experiment told us our bottleneck wasn't access to prior work, it was structure (i.e., mapping a question to the right entity).”article, stated
“That insight redirected months of roadmap.”article, stated

Auto-generated semantic definitions encoded ambiguity.

Root cause: LLM-generated definitions from raw tables/query logs mirrored the messy source landscape instead of imposing governance.

Resolution: Use Claude to draft documentation but keep metric definition ownership with humans.

“It produced plausible-looking definitions that encoded the very ambiguities we were trying to eliminate, and was net-negative on our evals versus a smaller, human-curated layer.”article, stated

Analytics answers can be silently wrong.

Root cause: A plausible answer may be used without stakeholder correction.

Resolution: Use provenance footers, human sign-off for leadership-bound work, and daily KPI sanity checks against blessed dashboards.

“The failure mode none of this fully catches is the silent one. The answer is wrong, but looks plausible and is used without objection.”article, stated
“the provenance footer, explicit human sign-off on anything leadership-bound, and a standing eval for each domain's top KPIs”article, stated

Skills and docs rot as the business changes.

Root cause: Data models, business definitions, schemas, dashboards, and references change constantly.

Resolution: Colocate artifacts in a single repo, enforce CI checks, and harvest stakeholder corrections into reference-doc PRs.

“Nearly all data code (i.e., modeling, semantic layer, reference docs, canonical dashboard definitions) lives in a single repo”article, stated
“* Active correction harvesting: the part that closes the loop. A scheduled agent scans stakeholder channels every few hours for similar correction language, drafts a one-line fix to the relevant reference doc, and opens a PR tagged to the domain owner.”article, stated

Evaluation

Anthropic uses dashboard-based evals, long-tail evals, CI-integrated suites, telemetry tables with skill/model/git metadata, domain launch gates, adversarial review, passive monitoring, correction harvesting, and standing KPI sanity checks.

Metrics: offline eval accuracy · domain launch threshold · semantic-layer resolution share · correction-language share · token count · wall-clock latency · per-assertion pass/fail

3 supporting quotes
“We deploy two kinds of offline evals at Anthropic. Dashboard-based evals are auto-generated by Claude (then human validated)”article, stated
“Every run lands in a warehouse table with the skill version, git SHA, model ID, per-assertion pass/fail, token count, and wall-clock.”article, stated
“two production signals we track continuously are the share of agent queries that resolve through the semantic layer”article, stated

Outcomes

The system supports self-service analytics across business surfaces by syncing skills to plugin marketplace, cloud blobs, and MCP-served resources.

3 supporting quotes
“the same skill must provide the same answer to questions in Slack, in the IDE, in a dashboard tool, and in standalone agent sessions.”article, stated
“On merge, the skill syncs to a plugin marketplace (for IDE users), to cloud-storage blobs (for hosted apps that read a single file), and is served directly as resources over MCP.”article, stated
“On merge, the skill syncs to a plugin marketplace (for IDE users), to cloud-storage blobs (for hosted apps that read a single file), and is served directly as resources over MCP. We also designed for portability from the start by avoiding hardcoded repo paths and surface-specific namespaces.”article, stated