Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Track engagement metrics, measure campaign ROI, and analyze content performance across Instagram, Facebook, YouTube, and TikTok.
.claude/skills/apify-content-analytics/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | — | — |
| case-21 | ✗→✓ | ▲ Improved | — | — |
| case-01 | ✗→✓ | ▲ Improved | — | — |
| case-12 | ✗→✓ | ▲ Improved | — | — |
| case-09 | ✗→✓ | ▲ Improved | — | — |
Track and analyze content performance using Apify Actors to extract engagement metrics from multiple platforms.
(No need to check it upfront)
.env file with APIFY_TOKEN--env-file support)mcpc CLI tool: npm install -g @apify/mcpcCopy this checklist and track progress:
Task Progress:
- [ ] Step 1: Identify content analytics type (select Actor)
- [ ] Step 2: Fetch Actor schema via mcpc
- [ ] Step 3: Ask user preferences (format, filename)
- [ ] Step 4: Run the analytics script
- [ ] Step 5: Summarize findingsSelect the appropriate Actor based on analytics needs:
| User Need | Actor ID | Best For | |-----------|----------|----------| | Post engagement metrics | apify/instagram-post-scraper | Post performance | | Reel performance | apify/instagram-reel-scraper | Reel analytics | | Follower growth tracking | apify/instagram-followers-count-scraper | Growth metrics | | Comment engagement | apify/instagram-comment-scraper | Comment analysis | | Hashtag performance | apify/instagram-hashtag-scraper | Branded hashtags | | Mention tracking | apify/instagram-tagged-scraper | Tag tracking | | Comprehensive metrics | apify/instagram-scraper | Full data | | API-based analytics | apify/instagram-api-scraper | API access | | Facebook post performance | apify/facebook-posts-scraper | Post metrics | | Reaction analysis | apify/facebook-likes-scraper | Engagement types | | Facebook Reels metrics | apify/facebook-reels-scraper | Reels performance | | Ad performance tracking | apify/facebook-ads-scraper | Ad analytics | | Facebook comment analysis | apify/facebook-comments-scraper | Comment engagement | | Page performance audit | apify/facebook-pages-scraper | Page metrics | | YouTube video metrics | streamers/youtube-scraper | Video performance | | YouTube Shorts analytics | streamers/youtube-shorts-scraper | Shorts performance | | TikTok content metrics | clockworks/tiktok-scraper | TikTok analytics |
Fetch the Actor's input schema and details dynamically using mcpc:
bashexport $(grep APIFY_TOKEN .env | xargs) && mcpc --json mcp.apify.com --header "Authorization: Bearer $APIFY_TOKEN" tools-call fetch-actor-details actor:="ACTOR_ID" | jq -r ".content"
Replace ACTOR_ID with the selected Actor (e.g., apify/instagram-post-scraper).
This returns:
Before running, ask:
Quick answer (display in chat, no file):
bashnode --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \ --actor "ACTOR_ID" \ --input 'JSON_INPUT'
CSV:
bashnode --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \ --actor "ACTOR_ID" \ --input 'JSON_INPUT' \ --output YYYY-MM-DD_OUTPUT_FILE.csv \ --format csv
JSON:
bashnode --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \ --actor "ACTOR_ID" \ --input 'JSON_INPUT' \ --output YYYY-MM-DD_OUTPUT_FILE.json \ --format json
After completion, report:
APIFY_TOKEN not found - Ask user to create .env with APIFY_TOKEN=your_token mcpc not found - Ask user to install npm install -g @apify/mcpc Actor not found - Check Actor ID spelling Run FAILED - Ask user to check Apify console link in error output Timeout - Reduce input size or increase --timeout
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-23 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 20 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +61 percentage points is the difference between those two pass rates over the 20 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.