Awesome-omni-skill apify-market-research
Analyze market conditions, geographic opportunities, pricing, consumer behavior, and product validation across Google Maps, Facebook, Instagram, Booking.com, and TripAdvisor.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/backend/apify-market-research" ~/.claude/skills/diegosouzapw-awesome-omni-skill-apify-market-research && rm -rf "$T"
manifest:
skills/backend/apify-market-research/SKILL.mdsafety · automated scan (medium risk)
This is a pattern-based risk scan, not a security review. Our crawler flagged:
- global npm install
- dumps environment variables
- references .env files
Always read a skill's source content before installing. Patterns alone don't mean the skill is malicious — but they warrant attention.
source content
Market Research
Conduct market research using Apify Actors to extract data from multiple platforms.
Prerequisites
(No need to check it upfront)
file with.envAPIFY_TOKEN- Node.js 20.6+ (for native
support)--env-file
CLI tool:mcpcnpm install -g @apify/mcpc
Workflow
Copy this checklist and track progress:
Task Progress: - [ ] Step 1: Identify market research 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 Market Research Type
Select the appropriate Actor based on research needs:
| User Need | Actor ID | Best For |
|---|---|---|
| Market density | | Location analysis |
| Geospatial analysis | | Business mapping |
| Regional interest | | Trend data |
| Pricing and demand | | Market pricing |
| Event market | | Event analysis |
| Consumer needs | | Group research |
| Market landscape | | Business pages |
| Business density | | Contact data |
| Cultural insights | | Visual research |
| Niche targeting | | Hashtag research |
| Hashtag stats | | Market sizing |
| Market activity | | Activity analysis |
| Market intelligence | | Full data |
| Product launch research | | API access |
| Hospitality market | | Hotel data |
| Tourism insights | | Review analysis |
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 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
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