원클릭으로
community-pulse
Weekly read on Discord community health — joins, active channels, top contributors, themes, and unanswered questions
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Weekly read on Discord community health — joins, active channels, top contributors, themes, and unanswered questions
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Submit an AI agent to the agentlaunch directory and upvote agents via a public no-auth REST API
Comprehensive Google Ads account audit — campaign structure, budget pacing, conversion tracking, wasted spend — across every campaign type, ranked by estimated $ impact
Google Ads Demand Gen audit — audience strategy, creative format diversity, creative freshness, placements, CPA vs goal
Google Analytics 4 configuration and data-quality audit — key events, data streams, custom dimensions, attribution, retention, PII, Ads link, BigQuery export
Build a GA4 measurement plan from a site URL — event taxonomy, parameters, custom dimensions, and key events to mark as conversions
Weekly GA4 check — sessions, users, key-event conversions, revenue, channel mix — with week-over-week deltas and tracking-break alerts
| name | community-pulse |
| description | Weekly read on Discord community health — joins, active channels, top contributors, themes, and unanswered questions |
| version | 1.0.0 |
| author | Cogny AI |
| platforms | ["discord"] |
| user-invocable | true |
| argument-hint | |
| allowed-tools | ["mcp__cogny__discord__get_current_user","mcp__cogny__discord__list_guilds","mcp__cogny__discord__get_guild","mcp__cogny__discord__list_guild_channels","mcp__cogny__discord__get_channel","mcp__cogny__discord__list_guild_members","mcp__cogny__discord__get_channel_messages","mcp__cogny__create_finding","WebFetch","Read","Write"] |
Surface the signal in a busy Discord server. Who joined, which channels are hot, who's contributing, what's getting asked, and what's left hanging — in one digest you can act on in 15 minutes.
/community-pulse — weekly digest of the connected Discord server.
Pass a guild ID if the bot is in more than one server:
/community-pulse 123456789012345678
The Discord MCP needs two privileged intents enabled in the Discord Developer Portal → Bot tab → Privileged Gateway Intents:
list_guild_members returns only
the bot itself.get_channel_messages returns
authors and timestamps but every content field comes back empty.If the report comes back with a 1-element member list or empty message content, this is almost always why. The skill flags the gap loudly at the top of the output rather than silently producing misleading numbers.
The bot also needs View Channel + Read Message History in each channel you want analysed — these are channel-level permissions, not intents.
Call mcp__cogny__discord__get_current_user to confirm the bot identity.
If this fails with an authentication error, the bot token in the cogny
warehouse is bad — reconnect at app.cogny.com/warehouse/<id>/settings/api.
Call list_guilds. If exactly one guild, use it. If multiple, prefer the
guild ID passed as an argument. If none was passed and there's more than
one, list them and ask the user to specify.
Once chosen, call get_guild(guild_id, with_counts=True) for the baseline:
approximate_member_count (this is the "members" stat)approximate_presence_count (online right now)Call list_guild_channels(guild_id). Bucket channels into:
intro, welcome, feedback,
support, showcase, hiring, general (these usually hold the signal
for community health)Cap the analysis at 30 channels to bound runtime.
Call list_guild_members(guild_id, limit=1000), paginating with
after=<last user id> until exhausted or 5000 members fetched.
For each member, parse joined_at and bucket into:
Compute:
For each text channel from Step 3 (cap 30, prioritize high-signal):
get_channel_messages(channel_id, limit=100) — most recent batch.timestamp in the last 7 daysbefore=<earliest message id>. Stop after 200 messages
per channel.| Class | Criteria |
|---|---|
| Hot | ≥20 messages this week, ≥5 unique authors |
| Steady | 5–19 messages, ≥3 unique authors |
| Quiet | 1–4 messages |
| Dead | 0 this week, last activity >14 days ago |
Aggregate the message samples from Step 5 by author across all channels:
reactions[].count per message)Then surface:
If content is non-empty (Message Content Intent is on):
If content is empty everywhere, skip this step and write a one-line note:
"Topic analysis unavailable — enable Message Content Intent on the bot in
the Discord Developer Portal."
Each action must:
Useful action shapes:
Print the report in this shape:
Community Pulse — <guild-name>
Week of <YYYY-MM-DD> – <YYYY-MM-DD>
⚠️ Intent gap: Message Content Intent off — topic analysis disabled.
(Skip this line if intents are configured.)
Pulse
- Members: 1,247 (+18 WoW · +1.4%)
- Active authors: 34 (+6 WoW)
- Total messages sampled: 412 (+71 WoW)
- Online ratio: 11% (last week 9%)
Channel Activity
| Channel | Msgs | Authors | Status |
|----------------|------|---------|--------|
| #introductions | 28 | 19 | Hot |
| #general | 142 | 22 | Hot |
| #showcase | 8 | 5 | Steady |
| #help | 3 | 2 | Quiet |
| #off-topic | 0 | 0 | Dead |
Top Contributors
1. @member (24 messages, 31 reactions, 4 channels)
…
Newly Active (lurker → contributor this week)
- @member joined 2026-02-14, 5 messages this week, top channel #showcase
…
At-Risk Regulars (going quiet)
- @member was 18/wk last week → 1/wk this week, top channel #general
…
Top Themes (Message Content Intent required)
1. …
Unanswered Questions
- #help "How do I …" — @member, 2 days ago
Recommended Actions
1. Welcome @member1, @member2, @member3 in #general
Why: 3 lurkers became active this week
Owner: community manager · Done when: posted by EOW
2. …
If mcp__cogny__create_finding is available, file each recommended action
as a finding so they show up in the warehouse's action queue:
{
"title": "Welcome 3 newly-active members in #general",
"body": "Lurkers @x, @y, @z each posted ≥3 messages this week after >30 days quiet. Acknowledge to lock them in.",
"action_type": "community_engagement",
"expected_outcome": "Each replies or reacts within 48h",
"estimated_impact_usd": 0,
"priority": "medium"
}
Action types for Discord:
community_engagement — welcomes, mentions, reaching out to at-risk regularscontent_response — answering unanswered questions, posting summarieschannel_management — archiving dead channels, reorganising, permission fixesintent_configuration — re-enabling Server Members or Message Content Intentbot_permission — re-installing the bot with a wider permission setlist_guild_members returns 1 row or all
content fields are empty, flag it loudly at the top before any other
numbers — the rest of the report will be misleading.timestamp against the 7-day window.send_message (it's not in the
allowed-tools list). The digest is for the user to act on, not for the
bot to broadcast.