Skip to main content
The brief is your account’s editorial policy — the include/exclude document that drives matching. One brief per account. update_brief replaces it wholesale; get_brief returns it under brief. All fields are optional — an empty group means “no restriction”.
The brief is an MCP-only concept. It drives matching_events, matching_orgs, evaluate_*, and the seed_* tools.

A representative shape

  • summary / eventKinds.include — the semantic query text: matching embeds these and ranks events by similarity.
  • standards.* — closed-vocabulary facet filters (the enabled values allowed through). A facet is only restrictive when non-empty; events missing a facet are never dropped (fail-open). deliveryHorizonDays sets the freshness window.
  • geography — a hard geo gate (zip + radius).
  • excludePhrases / standards.sourceDeny — deterministic exclude rules (title phrase / source domain).
You can author this by hand (update_brief), or let seed_brief infer it from an aggregator.

Facet vocabularies (closed)

The standards.* facets are closed vocabularies — matching only recognizes the exact ids below. Values outside these lists are silently ignored (the facet gate is fail-open, so a typo doesn’t error — it just never filters). Author briefs using only these ids.
Facet classification and vector embedding run asynchronously after an index_org crawl completes. A just-indexed org’s events are searchable immediately via search/search_business_events, but matching/seeding (which rely on facets + embeddings) may see nothing for that org until enrichment finishes. Retry after a short delay.