Analyze competitors using Apify Actors to extract data from multiple platforms.
Prerequisites
(No need to check it upfront)
-
.envfile withAPIFY_TOKEN -
Node.js 20.6+ (for native
--env-filesupport) -
mcpcCLI tool (for fetching Actor schemas)
Workflow
Copy this checklist and track progress:
Task Progress:
- [ ] Step 1: Identify competitor analysis type (select Actor)
- [ ] Step 2: Fetch Actor schema via mcpc
- [ ] Step 3: Ask user preferences (format, filename)
- [ ] Step 4: Run the analysis script
- [ ] Step 5: Summarize findings
Step 1: Identify Competitor Analysis Type
Select the appropriate Actor based on analysis needs:
| Competitor business data
| compass/crawler-google-places
| Location analysis
| Competitor contact discovery
| poidata/google-maps-email-extractor
| Email extraction
| Feature benchmarking
| compass/google-maps-extractor
| Detailed business data
| Competitor review analysis
| compass/Google-Maps-Reviews-Scraper
| Review comparison
| Hotel competitor data
| voyager/booking-scraper
| Hotel benchmarking
| Hotel review comparison
| voyager/booking-reviews-scraper
| Review analysis
| Competitor ad strategies
| apify/facebook-ads-scraper
| Ad creative analysis
| Competitor page metrics
| apify/facebook-pages-scraper
| Page performance
| Competitor content analysis
| apify/facebook-posts-scraper
| Post strategies
| Competitor reels performance
| apify/facebook-reels-scraper
| Reels analysis
| Competitor audience analysis
| apify/facebook-comments-scraper
| Comment sentiment
| Competitor event monitoring
| apify/facebook-events-scraper
| Event tracking
| Competitor audience overlap
| apify/facebook-followers-following-scraper
| Follower analysis
| Competitor review benchmarking
| apify/facebook-reviews-scraper
| Review comparison
| Competitor ad monitoring
| apify/facebook-search-scraper
| Ad discovery
| Competitor profile metrics
| apify/instagram-profile-scraper
| Profile analysis
| Competitor content monitoring
| apify/instagram-post-scraper
| Post tracking
| Competitor engagement analysis
| apify/instagram-comment-scraper
| Comment analysis
| Competitor reel performance
| apify/instagram-reel-scraper
| Reel metrics
| Competitor growth tracking
| apify/instagram-followers-count-scraper
| Follower tracking
| Comprehensive competitor data
| apify/instagram-scraper
| Full analysis
| API-based competitor analysis
| apify/instagram-api-scraper
| API access
| Competitor video analysis
| streamers/youtube-scraper
| Video metrics
| Competitor sentiment analysis
| streamers/youtube-comments-scraper
| Comment sentiment
| Competitor channel metrics
| streamers/youtube-channel-scraper
| Channel analysis
| TikTok competitor analysis
| clockworks/tiktok-scraper
| TikTok data
| Competitor video strategies
| clockworks/tiktok-video-scraper
| Video analysis
| Competitor TikTok profiles
| clockworks/tiktok-profile-scraper
| Profile data
Step 2: Fetch Actor Schema
Fetch the Actor's input schema and details dynamically using mcpc:
export $(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., compass/crawler-google-places).
This returns:
-
Actor description and README
-
Required and optional input parameters
-
Output fields (if available)
Step 3: Ask User Preferences
Before running, ask:
- 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
-
Number of results: Based on character of use case
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 competitors analyzed
-
File location and name
-
Key competitive insights
-
Suggested next steps (deeper analysis, benchmarking)
Error Handling
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