mcpField
A
apify-content-analytics

apify-content-analytics

github.com/apifyMarketing & growth28599 installsUpdated 6w ago
Repository

About apify-content-analytics

A skill for using Apify Actors to collect and analyze content performance across social platforms. It helps marketing workflows select an Actor, run bounded queries, and review results in chat or exported files.

Key features

  1. 01Select Apify Actors by analytics goal
  2. 02Fetch Actor input schemas
  3. 03Show results or export CSV and JSON
  4. 04Limit result counts and summarize findings

Use cases

  1. 01Compare Instagram post or Reel performance
  2. 02Track Facebook ad and page metrics
  3. 03Analyze YouTube or TikTok content data

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/apify/awesome-skills --skill apify-content-analytics

After installing, type/apify-content-analyticsin Claude Code to confirm it loaded.

Bundled filesreference/scripts/run_actor.jsreference/scripts/fetch_actor_details.js

Details

From the project README

Content Analytics

Track and analyze content performance using Apify Actors to extract engagement metrics from multiple platforms.

Prerequisites

(No need to check it upfront)

  • .env file with APIFY_TOKEN
  • Node.js 20.6+ (for native --env-file support)

Workflow

Copy this checklist and track progress:

Task Progress:
- [ ] Step 1: Identify content analytics type (select Actor)
- [ ] Step 2: Fetch Actor schema
- [ ] Step 3: Ask user preferences (format, filename)
- [ ] Step 4: Run the analytics script
- [ ] Step 5: Summarize findings
Step 1: Identify Content Analytics Type

Select the appropriate Actor based on analytics needs:

User NeedActor IDBest For
Post engagement metricsapify/instagram-post-scraperPost performance
Reel performanceapify/instagram-reel-scraperReel analytics
Follower growth trackingapify/instagram-followers-count-scraperGrowth metrics
Comment engagementapify/instagram-comment-scraperComment analysis
Hashtag performanceapify/instagram-hashtag-scraperBranded hashtags
Mention trackingapify/instagram-tagged-scraperTag tracking
Comprehensive metricsapify/instagram-scraperFull data
API-based analyticsapify/instagram-api-scraperAPI access
Facebook post performanceapify/facebook-posts-scraperPost metrics
Reaction analysisapify/facebook-likes-scraperEngagement types
Facebook Reels metricsapify/facebook-reels-scraperReels performance
Ad performance trackingapify/facebook-ads-scraperAd analytics
Facebook comment analysisapify/facebook-comments-scraperComment engagement
Page performance auditapify/facebook-pages-scraperPage metrics
YouTube video metricsstreamers/youtube-scraperVideo performance
YouTube Shorts analyticsstreamers/youtube-shorts-scraperShorts performance
TikTok content metricsclockworks/tiktok-scraperTikTok analytics
Step 2: Fetch Actor Schema

Fetch the Actor's input schema and details:

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/fetch_actor_details.js --actor "ACTOR_ID"

Replace ACTOR_ID with the selected Actor (e.g., apify/instagram-post-scraper).

This returns:

  • Actor info (title, description, URL, categories, stats, rating)
  • README summary
  • Input schema (required and optional parameters)
Step 3: Ask User Preferences

Skip this step for simple lookups (e.g., "what's Nike's follower count?", "find me 5 coffee shops in Prague") — just use quick answer mode and move to Step 4.

For larger scraping tasks, ask:

  1. Output format:
    • Quick answer - Display top few results in chat (no file saved)
    • CSV - Full export with all fields
    • JSON - Full export in JSON format
  2. Number of results: Based on character of use case

Cost safety: Always set a sensible result limit in the Actor input (e.g., maxResults, resultsLimit, maxCrawledPages, or equivalent field from the input schema). Default to 100 results unless the user explicitly asks for more. Warn the user before running large scrapes (1000+ results) as they consume more Apify credits.

Step 4: Run the Script

Quick answer (display in chat, no file):

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \
  --actor "ACTOR_ID" \
  --input 'JSON_INPUT'

CSV:

node --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:

node --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
Step 5: Summarize Findings

After completion, report:

  • Number of content pieces analyzed
  • File location and name
  • Key performance insights
  • Suggested next steps (deeper analysis, content optimization)

Error Handling

APIFY_TOKEN not found - Ask user to create .env with APIFY_TOKEN=your_token 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

Comments

Markdown supported