Reports and charts
Eight read-only MCP tools to see how the community is doing and turn it into a chart or table in the conversation — sales, subscriptions and MRR, active members, engagement and the ranking, events, courses, one member's activity and the month's dashboard — with ready-made recipes.
Ask the assistant how sales are going, who takes part the most or what one person did, and it answers with numbers and, if you want, with a chart or a table right in the conversation (in Claude, as an artifact). The eight tools on this page only read: none of them changes anything in the community.
In short
| Tool | What it does | Minimum role | Type |
|---|---|---|---|
sales_report | Sales by day, week or month, by plan, product or payment method, and the total since the first sale | Admin or finance | Read-only |
subscriptions_report | MRR, new and canceled subscriptions, churn, courtesies and downsell | Admin or finance | Read-only |
members_report | New, active and inactive members, by group and by tag | Moderator | Read-only |
engagement_report | Posts, comments, reactions, the most engaged, unanswered posts and the ranking points | Moderator | Read-only |
events_report | Events and how many answered going, maybe and not going | Moderator | Read-only |
courses_report | Enrollments, completions and progress per course | Moderator | Read-only |
member_activity | What one person did: counts, ranking points and links | Admin | Read-only |
community_overview | This month against last month, in one call | Moderator or finance | Read-only |
Who sees what. Money (sales and subscriptions) belongs to the owner, the admin and finance. Community (members, engagement, events and courses) belongs to the owner, the admin and the moderator. One specific person's activity is for the owner and the admin only. In community_overview, each role sees only its own area's block: finance sees the money, the moderator sees the community.
How answers arrive
Every answer is ready to become a chart:
| Part | What it is |
|---|---|
series | One row per period (period), with that period's numbers. Periods with nothing show up as zero, so the chart never skips a month |
totals | The sum of the requested range |
currency | The currency of the amounts (one per query; by default, the one the community sells the most in) |
timezone | The time zone used to count days |
Common parameters:
| Parameter | Values | Default |
|---|---|---|
interval | day (day), week (week, starting Monday) or month (month) | month |
from, to | YYYY-MM-DD dates, inclusive. They are widened to the start and end of the period: with month, March 15 becomes March 1 | 30 days, 12 weeks or 12 months up to today |
timezone | A time zone such as America/New_York | The time zone of the community's country |
A query covers at most 366 days, 156 weeks or 120 months. For a longer period, use a larger interval.
What each number means:
- Sales come from the statement: the report's net is the statement's net for the same period. The only fee shown is the platform fee, which is independent of the payment method.
- MRR is monthly recurring revenue: each paying subscription converted to a month (a yearly one divided by 12). Courtesies and subscriptions in trial are left out.
- Active is anyone who did at least one thing in the period: posted, commented, reacted, answered an event (going or maybe), enrolled in or studied a course, or earned ranking points (which includes the daily login, when the ranking is on). Only reading does not count, because views are not recorded.
- Event attendance does not exist: Memberfy keeps each person's answer (going, maybe, not going), not who showed up. The report says so (
attendanceTracked: false).
sales_report
Read-only
Sales report. Per period: gross, platform fee, installment interest, net, number of sales, average ticket, refunds and chargebacks (separately), and the net after them. It also brings payouts requested and completed, and the total since the first sale. Minimum role: admin or finance.
Parameters: the common ones, plus group_by (product, plan, payment_method or product_type) and currency.
Returns: series, totals, allTime, payouts and, with group_by, groups: each plan, product or payment method with its own series. A sale that belongs to no plan falls in the group with no name.
Ask like this: "How much have I earned in total since I started selling?"
Next: the response suggests, in next_steps, the same report for the period right before, with the dates filled in, to compare. See Next steps.
subscriptions_report
Read-only
Subscriptions report. Per period: MRR, paying subscriptions, new, canceled, churn (the share of those active at the start of the period that canceled), in trial and courtesies. Minimum role: admin or finance.
Parameters: the common ones, plus currency.
Returns: series, totals, today's snapshot in current (MRR, ARR, by status, how many end with their period, past due, courtesies), byPlan and downsell (last-chance offers shown and accepted).
Ask like this: "How did MRR evolve this year? What was each month's churn?"
History is rebuilt from each subscription's start and end dates. A past-due spell that was resolved, or a pause, leaves no date, so it only shows in today's snapshot.
members_report
Read-only
Members report. Per period: how many joined, how many were active, the total at the end of the period and the inactive ones. Minimum role: moderator.
Parameters: the common ones.
Returns: series, totals, current (total, active and inactive over the last 30 days, by role), byGroup and byTag.
Ask like this: "How many new members did we get per week last quarter, and how many were active?"
engagement_report
Read-only
Engagement and ranking report. Per period: feed posts, content, comments, reactions, active members and ranking points. It also shows where the conversation happens, who took part the most, the posts nobody answered and the data the ranking is built from. Minimum role: moderator.
Parameters: the common ones, plus order_by (points, interactions, posts, comments or reactions; points by default when the ranking is on), page and limit (up to 100).
Returns: series, totals, bySpace, members (paginated: posts, comments, reactions, interactions, points in the period and today's level), unansweredPosts and ranking (the point rules, points per action and per period, and how many members are at each level).
Ask like this: "Who are this month's 10 most engaged members? And which actions earned the most points?"
events_report
Read-only
Events report. Per period: the events held and the answers received. Per event: how many said going, maybe and not going, with the link. Minimum role: moderator.
Parameters: the common ones, plus page and limit.
Returns: series, totals and events. Attendance is not recorded, and the assistant says so if you ask who showed up.
Ask like this: "How many people confirmed for each event this semester?"
courses_report
Read-only
Courses report. Per period: enrollments, completed courses and completed lessons. Per course: enrollments, completions, completion rate and the average progress of those enrolled. Minimum role: moderator.
Parameters: the common ones, plus page and limit.
Returns: series, totals and courses, with each course's link.
Ask like this: "Which course has the lowest completion rate?"
member_activity
Read-only
One member's activity. What a person did in the community, in the period and ever: posts, comments, reactions, event answers, enrollments, purchases, subscriptions, completed courses and certificates. It brings the ranking points per action, the level and the position, and recent items with links. Minimum role: admin.
Parameters: member (the profile id, from list_members, the e-mail or the profile link copied from the app) and the common ones. For a timeline of everything the person did, with date and time, use list_activity_logs.
Returns: counts, ranking and recent. For purchases, only the amount paid and the payment method. There is no browsing log: the report shows what the person did, not what they saw.
Ask like this: "What has maria.silva@memberfy.net done in the community over the last 3 months?"
community_overview
Read-only
Community dashboard. This month so far against all of last month and against last month up to the same day: revenue and MRR, new members, engagement and the events of the next 30 days. Minimum role: moderator or finance; each sees its own area's block.
Parameters: timezone.
Returns: money (for owner, admin and finance) and community (for owner, admin and moderator).
Ask like this: "How is this month going compared with the last one?"
Recipes
Revenue chart per month per plan
For: owner, admin or finance.
Make a stacked bar chart of net revenue month by month in 2026, one color per plan, and below it a table with each plan's total and average ticket.
| # | Tool | What it does |
|---|---|---|
| 1 | sales_report | interval: month, from: 2026-01-01, to: 2026-12-31, group_by: plan |
Result: the chart and the table in the conversation. Each plan in groups already comes with the full series, with zero in months without sales. To see refunds too, ask "and a line with the refunds".
Who the 10 most engaged are
For: owner, admin or moderator.
Who were the 10 most engaged members over the last 30 days? Show them in a table with posts, comments, reactions, points and level, and tell me which actions earned the most points.
| # | Tool | What it does |
|---|---|---|
| 1 | engagement_report | interval: day, limit: 10, order_by: points |
Result: the table with the top 10 and a summary of ranking.byAction. With the ranking off, ask for order_by: interactions. To see one person from the list in detail, follow up with member_activity.
The week's summary
For: any team role. Finance gets only the money part; the moderator, only the community part.
Write the week's summary: sales and new subscriptions, new members, who took part the most, the posts left unanswered and the upcoming events with how many confirmed. End with three suggestions of what to do.
| # | Tool | What it does |
|---|---|---|
| 1 | community_overview | The month so far, for context |
| 2 | sales_report | interval: day, the last 7 days |
| 3 | engagement_report | interval: day, the last 7 days, limit: 5 |
| 4 | events_report | From next week on |
Result: the summary in the conversation. If you want to publish it, ask "write a Feed post with this and show me first": the assistant uses create_post after your ok.