Claude: Claude Desktop today, any MCP client in your account. It reads answers through the MCP server only.
Clean
Clean: typed, de-duplicated tables with one identity per organisation and person, built from the raw tables by SQL.
Entity store
The entity store: one record per thing (75 organisations, 290 people, 784 calls, 1169 email threads, 449 tickets, 477 documents and more), full text, every link held as ids. Every consumer reads it.
Facts
Facts: the money and usage views (ARR by month, reconciliation, debtors, usage by month). One source for every number the site and the chat quote.
Coverage gate
Coverage gate: every object with text has a read, every organisation has its assessment, next steps and narrative, and the tree is current before the site is built.
Load checks
Load checks: row counts, keys and types as the exports are loaded and cleaned.
Provenance gate
Provenance gate: every AI record is checked against its evidence pack (dates, figures and names must be in the evidence; excerpts must be verbatim). Refused records are rewritten inside the loop.
QA gate
QA gate: every written artefact is checked against the simulation's facts (dates, figures, names, banned terms) before it lands. Refused text is rewritten.
Site gate
Site gate: every link resolves, no block is blank, every page carries the same as-of date and every block's lineage reaches a raw row.
Grounding brief
The grounding brief: who B-Brain is, what it sells and the rules of the world. It is prepended to every AI prompt and its hash is stamped on every AI record.
Land
Land: every export loaded untouched into raw tables, one per source file. Today this is DuckDB on this laptop; in your account it is the Snowflake RAW schema.
MCP server
The MCP server: five tools over the same data, so Claude answers from the brain. Today it runs on this laptop; in your account it is the managed MCP server.
Search
Search: a local keyword index over every entity, AI record and System page. In your account this becomes Cortex Search.
Site
The site: static pages drawn from the tree, readable from disk or any host.
Accounting
Accounting: customers, invoices with their lines, payments, credit notes and the ledger.
Call recorder
The call recorder: one row per call with its date, host, attendees and whether it was recorded. Transcripts arrive as text alongside the row.
Contracts
Signed order forms and their lines: the commercial paper that says what each customer actually bought.
CRM
The CRM: companies, contacts, deals with their line items, stage history and close-date changes, products and prices. Read as a nightly export, never written back.
Document store
The document store: proposals, contracts, order forms, QBR decks and company papers, with folder, version and status.
Events
The event platform: webinars, roundtables, customer days and conferences, with registrations and attendance.
Helpdesk
The helpdesk: tickets with category, priority, first response and status, plus the full trail of events on each ticket.
HR
HR: employees, joiners and leavers, manager changes and time off.
Email and calendar
Email and calendar: threads and the messages in them, with senders, recipients and times. Message bodies arrive as text.
News
A news feed of public items about our customers and prospects.
Product analytics
Product analytics: tenants, platform users and daily usage per tenant (active users, questions asked, connectors, data volume).
Assessment
Assessment: per organisation, a status word with the facts and the opinion behind it, risks and opportunities.
Call prep
Call prep: for each booked call in the next 14 days, what to know in one minute, the agenda and the questions to ask.
Doc rollup
Document roll-ups: per organisation, what the executed paper says and where drafts and the CRM disagree with it.
Narrative
Narrative: per organisation, four paragraphs from commercial position to the closing action.
Next steps
Next steps: per organisation, one action with an owner, a customer contact and a date.
Object read
Object reads: one AI read per call, email thread, ticket, document and news item, with theme, importance, risks and next steps.
Person insight
Person insights: who each customer contact is, how much influence they have and what they care about.
Portfolio
Portfolio: the Summary blocks across all customers (renewals, risks, actions, reconciliation, incidents).
Signals
Signals: deterministic figures computed in code (renewal dates, price changes, usage trends, who knows the account). The AI is handed these as givens and never computes them.
Staff insight
Staff insights: how each B-Brain employee works across their accounts, including who has left.
Tree
The site tree: every page and block, built without a model from the records above, each block carrying what it was made from.
facts
facts: named measures (ARR, renewals due, reconciliation, debtors, usage, headroom) from the same facts and signals the site shows.
get_document
get_document: returns any entity or AI record by id, in parts for long text.
query
query: one read-only SQL statement over the chat views, with a row limit.
search
search: finds entities, AI records and System pages by keyword, with filters by organisation, type and date.
viz
viz: draws a chart from a query in the site's palette.
In your account the same build runs inside Snowflake, and no data leaves it except the answers Claude reads through MCP.
Databases and schemas: one database with RAW (the exports as landed), CLEAN (typed and de-duplicated), FACTS (the money and usage views), BRAIN (the entity store and the AI records) and CHAT (the read-only views the chat may query).
Search: a Cortex Search service over the entity store, the AI records and the System pages, replacing the local keyword index.
The AI stages: the same stages in the same order, calling Snowflake's AI functions; every record is stamped with its model, inputs and the grounding hash, as here.
The managed MCP server: the five tools (search, get_document, query, facts, viz), each granted to a role that can read only CHAT, FACTS and the search service.
Compute: one extra-small warehouse with auto-suspend after 60 seconds for the build, and a separate one for the chat, so a busy build never slows an answer.
Cost controls: a resource monitor on each warehouse, and the hash skip, so a nightly run only re-reads what changed.
B-Brain is a fictional company; every organisation and person here is invented. Built by site/build_site.py from the site tree, data as of Fri 9 Oct 2026. Help & Support