Connect an agent to a brand knowledge base.
Ophelia builds a structured knowledge base for a brand: positioning, voice, audience profiles, messaging and competitor intelligence. Every one of them also ships in the formats machines read, so an agent can query the brand instead of being told about it.
This page is the honest inventory. Everything listed here is live today, and nothing here is reachable without a token the subscriber creates and can revoke.
How access works
A subscriber turns on a share link from inside the product and gets a revocable token. That token is the credential, and it is the whole of the auth model today. Every surface on this page hangs off it:
https://www.viableedge.com/brand/<share-token>/...- No public API key. There is no key to request and no developer plan to buy. The surfaces are included with the subscription that builds the knowledge base.
- No anonymous access. Without a valid token these paths do not resolve, and a token whose subscription has lapsed stops resolving with it.
- Revocation is one action. Revoke the link and every surface above stops answering at once, including any MCP client already connected.
- Scoped OAuth is coming. Per-client authorization with narrower scopes is being built, and we are not promising a date for it. Until it ships, the token is the credential and a token handed to someone is access handed to someone.
The per-brand MCP server
Each brand gets its own Model Context Protocol server, served over Streamable HTTP at one URL. It is read-only: an MCP client can list, read, search and walk the brand graph, and can change nothing.
https://www.viableedge.com/brand/<share-token>/mcpAccept: application/json, text/event-streamPOST for calls, GET for the event stream, DELETE to end a session. The server runs stateless, so a request does not depend on an earlier handshake. A request without that Accept header gets a 406, as the specification requires.
Tools an MCP client can call
This list is generated from the server registration itself, so it is the live set rather than a description of it.
list_docsList brand documentsread_docRead a brand documentget_manifestGet brand overviewvault_searchSearch the brand by meaninglist_competitorsList tracked competitorsget_market_landscapeGet the market watch ledgerget_neighborsFind directly connected docsget_related_docsFind related docs (multi-hop)trace_pathTrace how two docs connectgraph_queryQuery relationships across the brandRegistered but hidden from the model
These carry a visibility flag that keeps them out of the tool list a model sees. They exist so a host that renders MCP apps can draw the knowledge base as an interactive view without that payload passing through the conversation.
get_graph_snapshotBrand graph snapshotget_brand_panelsBrand panel dataget_doc_contentDocument content for the panelEverything else the brand exports
MCP is the live connection. These are the same knowledge base in formats a build step, a crawler or a plain HTTP client can read.
/brand/<share-token>/manifest.jsonThe priority-ordered document list, the strategic framework and a coherence scorecard in one call. graph.json sits alongside it with the node and edge set, and every document is addressable on its own at /brand/<share-token>/<doc-slug>.md.
/brand/<share-token>/bundle.mdThe whole knowledge base as one file a model can read in a single pass, plus /brand/<share-token>/CLAUDE.md, a snippet to append to a coding agent instruction file.
/brand/<share-token>/skillsThe brand as skills in the open SKILL.md format, returned as { files: [{ path, content }] } and ready to write into an agent skills directory. Re-fetching returns the live brand, so an installed voice cannot quietly drift.
/brand/<share-token>/schema.jsonAn Organization graph as JSON-LD for answer engines to cite. Opt-in per share link and off by default, so nothing is published until the subscriber turns it on.
/brand/<share-token>/okfAn OKF v0.1 bundle of markdown concepts with YAML frontmatter, served as a gzipped tarball or inline with ?format=json. Portable to any tool that reads the format, so nothing here is locked in.
/brand/<share-token>/design.mdThe brand design language as prose an agent loads before it builds anything: how the brand frames a reader task, the observable type, color and copy decisions, and the anti-patterns to avoid. Sections the knowledge base has not written yet say so, so nothing gets invented.
/brand/<share-token>/llms.txtThe llms.txt convention scoped to one brand: a short ordered index of everything above, for an agent that lands on the share link first.
What we do not ship yet
Worth saying plainly, because the absence is easy to mistake for something hidden behind a sales conversation:
- There is no public REST API and no OpenAPI document. Reads happen through MCP or the export URLs above.
- There is no write path. Nothing an agent does through these surfaces can change a knowledge base; edits happen in the product, where the subscriber approves them.
- There is no sandbox brand and no anonymous demo endpoint. The closest thing is the product demo, which is a walkthrough rather than a token.
Start with a knowledge base
The surfaces exist because the knowledge base does. Build one from a website or your own materials, turn on a share link, and point an agent at it.