checking-member-access
Explains what a member or a role can do in a PostHog project, using the access control MCP tools. Use when the user asks what someone can see or edit, who can…
Manage PostHog subscriptions — scheduled email, Slack, or webhook deliveries of insight or dashboard snapshots, optionally with an AI-written summary attached to each delivery. Use when the user wants to subscribe to an insight or dashboard, get an AI summary attached to those
$ npx -y skills add posthog/posthog --skill managing-subscriptions --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/managing-subscriptionsContext preview
The summary Claude sees to decide when to auto-load this skill.
Manage PostHog subscriptions — scheduled email, Slack, or webhook deliveries of insight or dashboard snapshots, optionally with an AI-written summary attached to each delivery. Use when the user wants to subscribe to an insight or dashboard, get an AI summary attached to those
name: managing-subscriptions description: 'Manage PostHog subscriptions — scheduled email, Slack, or webhook deliveries of insight or dashboard snapshots, optionally with an AI-written summary attached to each delivery. Use when the user wants to subscribe to an insight or dashboard, get an AI summary attached to those deliveries, check existing subscriptions, change delivery frequency, add or remove recipients, or stop receiving updates.'
This skill guides you through managing PostHog subscriptions. Subscriptions deliver scheduled snapshots of insights or dashboards via email, Slack, or webhook.
Use this skill when the user:
Subscriptions and alerts serve different purposes:
If the user says "notify me when this drops below 100", use alerts. If the user says "send me this every morning", use subscriptions.
When someone wants the **key numbers from an existing dashboard or insight** posted to a channel on a schedule — "post the top-line from this dashboard in #launch once a day", "send the team these metrics every morning", or even "set up a scout/bot to post this daily" — the right tool is a **dashboard (or insight) subscription**, and an AI summary is its natural companion:
Usually a better fit than a **prompt subscription** (`creating-ai-subscription`) or a **Signals scout**. A prompt subscription composes its own HogQL and can drift from the dashboard's numbers; a scout is for open-ended watching that decides what's worth surfacing, not scheduled delivery of a fixed, user-specified metric set. Don't override a user who's certain they want one of those — but when the ask is ambiguous (e.g. "set up a scout to post this daily"), suggest the subscription and confirm before building: _"A dashboard subscription is a better fit for a recurring message. Want me to set that up?"_ Reach for a prompt subscription when the user specifically asks for a free-text AI report, or when no existing insight/dashboard covers the ask.
Before creating a new subscription, check if one already exists.
Use `subscriptions-list` with optional filters:
**Always ask the user whether they want email or Slack delivery** before creating a subscription. Do not assume a channel — ask explicitly:
> Would you like to receive this via **email** or **Slack**?
If the user says Slack, you must verify the integration is available (see step 2). If the user doesn't have a preference, suggest email as the simplest option.
**Email** requires no setup — it works out of the box. You just need the user's email address. Get it from the user context or from `org-members-list`.
**Slack** requires a connected Slack integration. Before creating a Slack subscription:
1. Call `integrations-list` and look for an integration where `kind` is `"slack"` 2. If a Slack integration exists, note its `id` — you'll need it as `integration_id` 3. If **no Slack integration exists**, tell the user: > Slack isn't connected to this project yet. You can set it up in > [Project settings > Integrations](/settings/integrations). > In the meantime, would you like to receive this via email instead?
Slack setup requires an OAuth flow in the browser — it cannot be done via MCP.
**Webhook** requires the user to provide a URL. Verify it looks like a valid URL before submitting.
Get the insight ID or dashboard ID. If the user provides a URL like `/project/2/insights/pKxzopBG`, fetch the insight first with `insight-get` to get the numeric ID.
| User says | Parameters | | --------------------------------------
:hedgehog: PostHog is the leading platform for building self-driving products. Our developer tools – AI observability, analytics, session replay, flags, experiments, error tracking, logs, and more – capture all the context agents need to diagnose problems, uncover opportunities, and ship fixes. Steer it all from Slack, web, desktop, or the MCP.
Repo: posthog/posthog
Explains what a member or a role can do in a PostHog project, using the access control MCP tools. Use when the user asks what someone can see or edit, who can…
Analyze the most expensive users in AI observability and explain why they cost so much. Use when the user asks about top spenders, expensive users, per-user…
Author continuously-running online evaluations in PostHog AI observability, grounded in real failure modes you've identified. Use when the user wants…
Find where an AI/LLM application is failing in production and surface the failure patterns, working from real traces. Use when someone wants to understand…
Investigate AI observability clusters — understand usage patterns in AI/LLM traffic, compare cluster behavior, compute cost/latency metrics, and drill into…
Investigate LLM spend in PostHog — total cost over time, cost by model, provider, user, trace, or custom dimension, token and cache-hit economics, and cost…