Skip to content

Tool discovery

Tool discovery turns the audit log into a feedback loop for catalog completeness.

When an agent calls a tool or MCP server that isn't yet catalogued, the call still flows through the Pipeline and lands in the Audit trail — discovery surfaces it for the operator to review, classify, and add to the Tool catalog.

Without discovery, the operator has to imagine every tool the agent might call. With discovery, the audit trail tells them.

Readsthe Audit trail — specifically tool / MCP call events
Surfacescalls whose tool/server isn't in the Tool catalog
Actionreview → approve / deny / classify; once approved, the call type joins the catalog
Where it runsoffline aggregation job + UI surface
Statusnext
agent makes a call ──▶ Pipeline runs ──▶ Audit row written
discovery aggregator
(groups by signature)
Operator review queue
┌───────────────┼────────────────┐
▼ ▼ ▼
approve deny classify
(add to catalog) (block in (assign tags,
policy) compliance scope)

A "call signature" groups identical tool/server invocations across many sessions: mcp_server: github.com, tool: search_repos, schema_hash: abc123. The operator reviews each unique signature once, not every call.

SurfaceExample
Unknown toolagent X called tool Y, not in catalog
Unknown MCP serveragent X connected to mcp://internal-jira/, not registered
Drifted schematool slack.sendarguments now includeattachments[] field, schema differs from catalog version
New compliance scopetool touches PII fields not previously seen

Catalog completeness can't be authored upfront. Customers' agents will reach for tools the platform team didn't anticipate — internal MCP servers, vendor APIs adopted mid-quarter, new SaaS subscriptions. Without discovery, every gap forces a manual audit-log query.

Discovery also catches drift: when a previously-catalogued tool's schema changes, discovery flags the divergence so the catalog stays accurate.

PersonaSurfaceWhat they do
OperatorAdmin UI → Catalog → Discovery queueReview unknown signatures, approve/deny/classify
Operatortappass discovery listCLI equivalent of the queue
Auto-policy author(future) Discovery → suggested rulesDiscovery output drives suggested policy/check additions
  • readsAudit trail — the source of truth for what was called
  • feedsTool catalog — approved signatures land here
  • may trigger → policy authoring loop (deny / scope)
  • part of ↑ Catalog operator-help

Per memory: a 7-PR plan exists for splitting catalog membership from per-call govern, with a discover → review → approve loop. This concept card describes that loop's user-facing model.