mcpField
A
apify-competitor-intelligence

apify-competitor-intelligence

github.com/apifyMarketing & growth28583 installsUpdated 5w ago
Repository

About apify-competitor-intelligence

This skill uses Apify Actors to gather competitor data from maps, social networks, and video platforms. It is for users conducting competitive research, with Actor selection guided by the analysis goal and options to export and summarize results.

Key features

  1. 01Select Apify Actors by analysis goal
  2. 02Fetch Actor input schemas
  3. 03Run analyses and export CSV or JSON
  4. 04Summarize competitor findings

Use cases

  1. 01Compare competitors’ social content and engagement
  2. 02Analyze business listings, reviews, or ads
  3. 03Research hotel and short-video competitors

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/apify/awesome-skills --skill apify-competitor-intelligence

After installing, type/apify-competitor-intelligencein Claude Code to confirm it loaded.

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

Details

From the project README

Competitor Intelligence

Analyze competitors using Apify Actors to extract data 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 competitor analysis type (select Actor)
- [ ] Step 2: Fetch Actor schema
- [ ] 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:

User NeedActor IDBest For
Competitor business datacompass/crawler-google-placesLocation analysis
Competitor contact discoverypoidata/google-maps-email-extractorEmail extraction
Feature benchmarkingcompass/google-maps-extractorDetailed business data
Competitor review analysiscompass/Google-Maps-Reviews-ScraperReview comparison
Hotel competitor datavoyager/booking-scraperHotel benchmarking
Hotel review comparisonvoyager/booking-reviews-scraperReview analysis
Competitor ad strategiesapify/facebook-ads-scraperAd creative analysis
Competitor page metricsapify/facebook-pages-scraperPage performance
Competitor content analysisapify/facebook-posts-scraperPost strategies
Competitor reels performanceapify/facebook-reels-scraperReels analysis
Competitor audience analysisapify/facebook-comments-scraperComment sentiment
Competitor event monitoringapify/facebook-events-scraperEvent tracking
Competitor audience overlapapify/facebook-followers-following-scraperFollower analysis
Competitor review benchmarkingapify/facebook-reviews-scraperReview comparison
Competitor ad monitoringapify/facebook-search-scraperAd discovery
Competitor profile metricsapify/instagram-profile-scraperProfile analysis
Competitor content monitoringapify/instagram-post-scraperPost tracking
Competitor engagement analysisapify/instagram-comment-scraperComment analysis
Competitor reel performanceapify/instagram-reel-scraperReel metrics
Competitor growth trackingapify/instagram-followers-count-scraperFollower tracking
Comprehensive competitor dataapify/instagram-scraperFull analysis
API-based competitor analysisapify/instagram-api-scraperAPI access
Competitor video analysisstreamers/youtube-scraperVideo metrics
Competitor sentiment analysisstreamers/youtube-comments-scraperComment sentiment
Competitor channel metricsstreamers/youtube-channel-scraperChannel analysis
TikTok competitor analysisclockworks/tiktok-scraperTikTok data
Competitor video strategiesclockworks/tiktok-video-scraperVideo analysis
Competitor TikTok profilesclockworks/tiktok-profile-scraperProfile data
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., compass/crawler-google-places).

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