mcpField
F
finding-digital-agencies-via-google-search

finding-digital-agencies-via-google-search

github.com/apidojo-ioMarketing & growth1768 installsUpdated 24w ago
Repository

About finding-digital-agencies-via-google-search

A skill for finding and ranking digital agencies through Google search results. It helps marketers build an initial agency list by scoring search snippets, domains, and result positions; the results may need manual follow-up for contact details.

Key features

  1. 01Search Google by agency terms and location
  2. 02Score results using snippets, domains, and position
  3. 03Classify leads into priority tiers
  4. 04Deduplicate agencies by domain
  5. 05Export results as CSV or JSON

Use cases

  1. 01Find digital agencies in a target city
  2. 02Create an initial list for agency outreach
  3. 03Prioritize search results for manual review

MCP support

Can use the Apify MCP call_actor tool to run apidojo~google-search-scraper. The skill also describes running it through a command-line script or REST API.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/apidojo-io/apidojo-skills --skill finding-digital-agencies-via-google-search

After installing, type/finding-digital-agencies-via-google-searchin Claude Code to confirm it loaded.

Details

From the project README

Finding Digital Agencies Via Google Search


Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]Google search URLs
searchTermsarrayOptional[]Keywords to search on Google
countryCodestringOptionalUSCountry for Google search (e.g. US, GB, TR)
languageCodestringOptional—Language for results (e.g. en)
maxItemsnumberOptionalUnlimitedMaximum results to return across all queries
maxPagesPerQueryintegerOptional1Maximum result pages per query
mobileResultsbooleanOptionalfalseFetch mobile SERP layout
customMapFunctionstringOptional—JavaScript function to transform each output object

How to Run

Using run_actor.js (recommended)
# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}'

# Save as CSV
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}' --output results.csv --format csv

# Save as JSON
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}' --output results.json --format json
REST API fallback
curl -X POST "https://api.apify.com/v2/acts/apidojo~google-search-scraper/runs" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}'

If Apify MCP is available: Use the Apify MCP call_actor tool with actor apidojo~google-search-scraper and the input above.


Scoring & Ranking

Score each result by:

  • snippet_has_agency_signals (contains: agency, studio, services, clients, marketing, SEO) → weight 0.50
  • is_agency_domain (not .gov, .edu, .wikipedia, .youtube) → weight 0.30
  • position → score = 1 - (position / total_results), weight 0.20
score = 0.50 * int(agency_signals) + 0.30 * int(valid_domain) + 0.20 * (1 - position/total)

Classification

ScoreTierLabel
≥ 0.70APRIME_PROSPECT
0.40–0.69BWARM_LEAD
< 0.40CLOW_PRIORITY

Edge Cases

  • Directory sites in results: Clutch, Yelp, Upwork listings are not agencies. Filter by checking if domain matches snippet.
  • Wikipedia/news results: Skip results with domains like wikipedia.org, bbc.com.
  • Limited contact data: SERP only returns title, URL, snippet — no phone/email. Use results as a starting list for manual outreach.
  • Duplicate agencies: Same agency may appear for multiple search terms — deduplicate by domain.
  • Local vs global: Use city-specific search terms for local results.

Comments

Markdown supported