skills/exploring-mcp-intent-clusters/SKILL.md
Explore PostHog MCP intent clusters — agent goals grouped by semantic similarity, with each cluster's tool distribution and error rates. Use when the user asks "what are agents trying to do with the MCP?", "group the intents", "which goals fail most?", "what does each cluster route to?", wants to recompute the clustering, or pastes an MCP analytics intent-clustering URL.
npx skillsauth add posthog/ai-plugin exploring-mcp-intent-clustersInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Intent clustering takes the free-text $mcp_intent values agents attach to
their tool calls, embeds them, and groups semantically similar goals into
clusters. Each cluster carries its tool distribution, call counts, and error
rates — answering "what are people trying to do, and does it work?" rather
than "which tool was called".
Unlike tool quality and sessions (which ultimately aggregate $mcp_tool_call),
clustering needs embeddings and is not expressible in SQL. It is served by
two typed tools backed by a stored snapshot.
| Tool | Purpose |
| ------------------------------------------------- | ------------------------------------------------- |
| posthog:mcp-analytics-intent-clusters-retrieve | Fetch the latest cluster snapshot for the project |
| posthog:mcp-analytics-intent-clusters-recompute | Trigger an async recompute of the snapshot |
posthog:mcp-analytics-intent-clusters-retrieve
{}
Returns a snapshot with status, last_computed_at, computed_with (the
embedding model and clustering parameters), and a clusters array. Each cluster
has a label, intent_count, call_count, error_count, error_rate_pct,
routing_entropy, a tool_distribution (which tools that goal routes to, with
per-tool error rates), and sample_intents.
Read clusters by call_count for "what are agents mostly doing", or by
error_rate_pct for "which goals are failing" — a high error rate on a cluster
points at a class of agent goals the tools serve badly.
routing_entropy is how spread-out a cluster's tool usage is: low entropy means
one goal reliably maps to one tool; high entropy means agents are casting around
for the right tool for that goal (often a missing-capability signal).
status: idle, clusters: []): no run has
happened yet. Trigger one (below) and tell the user it computes in the
background.last_computed_at: offer to recompute.posthog:mcp-analytics-intent-clusters-recompute
{}
Returns immediately with status: computing (HTTP 202); the work runs in the
background. Poll posthog:mcp-analytics-intent-clusters-retrieve until status
returns to idle (done) or error. Don't block waiting — tell the user to
re-ask in a minute.
https://app.posthog.com/project/<project_id>/mcp-analytics/intent-clustering$mcp_intent coverage — if few calls carry
an intent, clusters will be sparse; cross-check intent coverage with a quick
countIf(toString(properties.$mcp_intent) != '') over $mcp_tool_callerror_rate_pct plus high routing_entropy is the
strongest "the tools don't serve this goal well" signal — worth a closer look
at its sample_intents and tool_distributionexploring-mcp-tool-quality —
per-tool error rates and latencyexploring-mcp-sessions — the individual
runs behind the intentsdata-ai
Signals scout for PostHog Tasks, the agent work items a project runs. Two lenses: delivery health (runs failing, clustered by repository and error class, and retry storms) every run, and on a slower rotation demand (recurring asks across human-authored tasks that point at a product gap). Skips the scout fleet's own run rows.
devops
Signals scout for the PostHog Conversations (support inbox) product. Watches the `$conversation_*` ticket-lifecycle events for support-delivery regressions — SLA breach-rate steps, first-response latency blowouts, backlog inflow-vs-resolution imbalance, and channel / assignment concentration — and files each dated regression as a report. Complements the per-ticket product-feedback signals the emission pipeline already fires; does not re-surface individual ticket content.
development
Populates and maintains a project's data catalog (semantic layer): canonical metrics, trust marks (certifications) on warehouse tables/views, and reviewed table relationships. Use when asked to set up / seed / bootstrap the data catalog or semantic layer, to catalog a project's metrics, to certify or deprecate data sources, to propose or review table joins, or to work through the proposal review queue. To *use* an existing catalog to answer a business-number question, see querying-posthog-data instead. Trigger terms: data catalog, semantic layer, canonical metric, certify table, deprecate source, relationship proposal, metric drift, review queue.
tools
Investigate logs in a PostHog project: verify a service or deployment is healthy, explain an error spike, triage an incident, or understand what a log stream is saying. Use when the user asks to "check the logs", asks whether a service, deploy, release, or change is working or broke anything, asks why errors are up or what changed, or wants the root cause of failures visible in logs. Routes the logs MCP tools (services overview, pattern mining, before/after pattern diffing, bucketed counts, facets, raw rows) so investigations start from summaries instead of raw rows or hand-written SQL over the logs table.