All posts
Insight20 Jun 2026 · 2 min read

The query is the telemetry

Why being the runtime discovery endpoint collapses the hardest problem in the space.

By ContextPie

Most analytics products have to work for their data. They wrap your code, inject a proxy, or ask you to fire events by hand — and then hope the instrumentation stays in sync with reality. Discovery analytics for AI agents looks impossible under that model: how do you know what an agent looked for but never found?

You don't have to instrument anything if you're the thing being queried.

Being the endpoint changes everything

ContextPie is the MCP server your agents read at runtime. When an agent wants a capability, it asks us — find_skills("extract tables from a pdf") — and we answer. That request is the event. We don't need a wrapper to observe it; observing it is how we serve it.

agent → find_skills("extract tables from a pdf")
      ↳ best score 0.31  (nothing matched well)
      = logged as a discovery gap, automatically

The search, the score, the load that follows (or doesn't), the file that gets fetched (or never does) — all of it lands in our logs as a byproduct of doing the job. No SDK, no sampling, no drift.

The data nobody else has

Because the query flows through us, we can answer questions other tools structurally cannot:

  • What did agents search for and find nothing good? The single most valuable list you can have — it's your backlog, written by usage.
  • What got surfaced but never loaded? A description or scoping problem, not a missing skill.
  • What's dead? Skills and bundled files that never get touched.

These aren't derived from a model of usage. They are usage.

Why it compounds

Every agent you connect makes the picture sharper, at zero marginal instrumentation cost. The registry that serves your skills is the same surface that measures them — so the loop between Build, Use, and Measure closes on its own.

The query is the telemetry. Everything else is plumbing you no longer have to maintain.