mcpField
A
apify-market-research

apify-market-research

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

About apify-market-research

A skill for market research that collects data from multiple platforms through Apify Actors. It helps select an Actor for a research goal, run the collection, and summarize or export results as CSV or JSON.

Key features

  1. 01Select Apify Actors by research goal
  2. 02Fetch Actor input schemas
  3. 03Set result limits and output formats
  4. 04Run collection and summarize findings

Use cases

  1. 01Analyze regional business density and locations
  2. 02Research market prices, demand, and trends
  3. 03Study social groups and audience interests

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/apify/awesome-skills --skill apify-market-research

After installing, type/apify-market-researchin Claude Code to confirm it loaded.

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

Details

From the project README

Market Research

Conduct market research 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 market research 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 Market Research Type

Select the appropriate Actor based on research needs:

User NeedActor IDBest For
Market densitycompass/crawler-google-placesLocation analysis
Geospatial analysiscompass/google-maps-extractorBusiness mapping
Regional interestapify/google-trends-scraperTrend data
Pricing and demandapify/facebook-marketplace-scraperMarket pricing
Event marketapify/facebook-events-scraperEvent analysis
Consumer needsapify/facebook-groups-scraperGroup research
Market landscapeapify/facebook-pages-scraperBusiness pages
Business densityapify/facebook-page-contact-informationContact data
Cultural insightsapify/facebook-photos-scraperVisual research
Niche targetingapify/instagram-hashtag-scraperHashtag research
Hashtag statsapify/instagram-hashtag-statsMarket sizing
Market activityapify/instagram-reel-scraperActivity analysis
Market intelligenceapify/instagram-scraperFull data
Product launch researchapify/instagram-api-scraperAPI access
Hospitality marketvoyager/booking-scraperHotel data
Tourism insightsmaxcopell/tripadvisor-reviewsReview analysis
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 results found
  • File location and name
  • Key market insights
  • Suggested next steps (deeper analysis, validation)

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