Usage insights
Skill beau-education/beau-plugin/beaubot/skills/usage-insights
Generate business-intelligence reports on how students and teachers use the Beau platform — engagement, content authoring, and commerce — from the org-scoped analytics event log via MCP. For org admins. Produces periodic, evidence-based usage summaries.From its SKILL.md
npx -y skills add beau-education/beau-plugin --skill usage-insightsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.8 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Usage Insights Skill
This skill helps an organization admin understand how their org uses Beau, by reporting over the platform's append-only analytics event log. It produces periodic, evidence-based summaries: student engagement, content authoring (including human-vs-AI), and commerce (enrollments + revenue), plus answers to ad-hoc questions.
It is read-only and org-scoped: every tool only ever sees the caller's own
organization. All tools require the read:analytics permission (admin-only) —
teachers and students cannot use them.
Instructions for Claude
0. Preflight check
Confirm access by calling get_engagement_report with no arguments (defaults to
the last 30 days).
- If it returns a tool error mentioning authentication, tell the user: "The Beau MCP server is not connected — please check your MCP connection and authenticate."
- If it returns a 403 / permission error, tell the user: "Your account
doesn't have the
read:analyticspermission. An org admin must grant it (it's admin-only)." Then stop.
1. Determine scope
Ask the user (unless they already said):
- Report type — Engagement, Content, Commerce, an Overview (all three), or a specific ad-hoc question.
- Time window — e.g. last 7/30/90 days, a specific month, or a custom range.
Convert to ISO dates (
from/to). Default is the trailing 30 days.
2. Pull the data
Use the curated report tools for standard reports (one call each, pass
from/to):
| Tool | Returns |
|---|---|
get_engagement_report | lessons started/completed, completion rate, active students, avg score, daily completions (test runs excluded) |
get_content_report | resources created (human vs AI), AI-authored, quizzes, visuals vs media, courses |
get_commerce_report | enrollments, payments, revenue (cents), platform fees, refunds |
For ad-hoc questions, use aggregate_events:
groupBy∈event | actorType | subjectType | day | week | monthmetric∈count | sum | avg(sum/avg need afield∈amountCents | platformFeeCents | score | durationSec)- optional
events(names to filter),from,to - Examples: lessons completed per week →
{events:['lesson.completed'], groupBy:'week', metric:'count'}; revenue per month →{events:['payment.completed'], groupBy:'month', metric:'sum', field:'amountCents'}.
For drill-down (inspect individual rows after an aggregate looks surprising),
use query_events (filter by events, from/to, actorId, subjectType,
subjectId; paginate with limit/offset).
3. Interpret correctly
- Money is in cents — divide by 100 and show the currency.
- Completion rate = completed ÷ started; call out low rates.
- Test runs are already excluded from engagement (teacher previews don't count as student activity).
- Human vs AI authoring —
resourcesByAgent/aiAuthoredare content made via the AI assistant or MCP;resourcesByHumanare dashboard edits. - Empty windows are normal for new orgs — say so rather than implying a problem.
4. Produce the report
Write a concise markdown report:
- A short headline summary (2–3 sentences).
- One section per requested area with the key numbers and a trend note (use the daily/weekly series).
- 2–4 concrete observations or recommendations grounded in the numbers (e.g. "37% of started lessons go uncompleted — consider shorter lessons or a nudge").
- Note the window and that figures are for this organization only.
Do not invent numbers or fill gaps — if a tool returned zero or null, report it as such.
Event reference (for aggregate_events / query_events)
The log records these event families (org-scoped). Names are stable:
- Learning:
lesson.started,lesson.completed,feedback.submitted,contact_teacher.triggered - Authoring (CRUD):
resource.created/updated/deleted,bot.*,course.*,image.*,quiz.created,course.resource_added,resource.snapshot_saved,resource.exported,ai_assistant.resource_authored - Enrollment/commerce:
enrollment.created/paused/resumed/completed,payment.initiated/completed/refunded - Identity/org:
user.invited/invitation_accepted/login,consent.submitted/verified,org.settings_changed/stripe_onboarded - Sharing:
share_link.created/consumed/revoked - Comms:
notification.sent(every outbound email)
Useful properties for sum/avg: amountCents, platformFeeCents (payments),
score, durationSec (lesson.completed).
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.