skillZs
LIVE SKILL TAGS
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
REAL INSTALL DATA
← back to all skills
apify/agent-skills2.8k installs

apify-lead-generation

Generates B2B/B2C leads by scraping Google Maps, websites, Instagram, TikTok, Facebook, LinkedIn, YouTube, and Google Search. Use when user asks to find leads, prospects, businesses, build lead lists, enrich contacts, or scrape profiles for sales outreach.

How do I install this agent skill?

npx skills add https://github.com/apify/agent-skills --skill apify-lead-generation
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubwarn

    The skill facilitates lead generation via web scraping but introduces several security risks. It constructs shell commands dynamically from user-provided input, which could allow for command injection. It also reads sensitive credentials from a local .env file and passes them through shell pipes, and it depends on an external NPM package from a non-pre-approved source. Furthermore, it lacks sanitization for data scraped from social media platforms, creating a surface for indirect prompt injection.

  • Socketpass

    No alerts

  • Snykwarn

    Risk: MEDIUM · No issues

  • Runlayerfail

    1/2 files flagged

What does this agent skill do?

Lead Generation

Scrape leads from multiple platforms using Apify Actors.

Prerequisites

(No need to check it upfront)

  • .env file with APIFY_TOKEN
  • Node.js 20.6+ (for native --env-file support)
  • mcpc CLI tool: npm install -g @apify/mcpc

Workflow

Copy this checklist and track progress:

Task Progress:
- [ ] Step 1: Determine lead source (select Actor)
- [ ] Step 2: Fetch Actor schema via mcpc
- [ ] Step 3: Ask user preferences (format, filename)
- [ ] Step 4: Run the lead finder script
- [ ] Step 5: Summarize results

Step 1: Determine Lead Source

Select the appropriate Actor based on user needs:

User NeedActor IDBest For
Local businessescompass/crawler-google-placesRestaurants, gyms, shops
Contact enrichmentvdrmota/contact-info-scraperEmails, phones from URLs
Instagram profilesapify/instagram-profile-scraperInfluencer discovery
Instagram posts/commentsapify/instagram-scraperPosts, comments, hashtags, places
Instagram searchapify/instagram-search-scraperPlaces, users, hashtags discovery
TikTok videos/hashtagsclockworks/tiktok-scraperComprehensive TikTok data extraction
TikTok hashtags/profilesclockworks/free-tiktok-scraperFree TikTok data extractor
TikTok user searchclockworks/tiktok-user-search-scraperFind users by keywords
TikTok profilesclockworks/tiktok-profile-scraperCreator outreach
TikTok followers/followingclockworks/tiktok-followers-scraperAudience analysis, segmentation
Facebook pagesapify/facebook-pages-scraperBusiness contacts
Facebook page contactsapify/facebook-page-contact-informationExtract emails, phones, addresses
Facebook groupsapify/facebook-groups-scraperBuying intent signals
Facebook eventsapify/facebook-events-scraperEvent networking, partnerships
Google Searchapify/google-search-scraperBroad lead discovery
YouTube channelsstreamers/youtube-scraperCreator partnerships
Google Maps emailspoidata/google-maps-email-extractorDirect email extraction

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:

  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

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 Results

After completion, report:

  • Number of leads found
  • File location and name
  • Key fields available
  • Suggested next steps (filtering, enrichment)

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

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/apify/agent-skills/apify-lead-generation">View apify-lead-generation on skillZs</a>