Surface a rival's recurring failures from their angriest reviews and complaint threads across Google, Facebook, and Reddit
https://apidirect.io/mcp?token=YOUR_API_KEY
Use the review-weakness-miner skill: Find {competitor}'s biggest recurring complaints in {city} from their worst reviews
review-weakness-miner) makes your agent run this exact playbook instead of improvising its own searches.
In clients that support MCP prompts (Claude Desktop, Claude Code, Cursor) it also appears as a prompt named
review-weakness-miner, and any agent can call
get_skill(skill_id="review-weakness-miner") directly.
A competitor's worst reviews are a free, honest product-gap audit. Sorting to the lowest-ranked reviews and corroborating across review sites plus unprompted Reddit complaint threads isolates the failures that repeat, not the one-off rants. Use the platforms input to choose which sources beyond Google to run, and depth to control how much evidence to pull.
Who it's for: Product teams, local marketers, and competitive positioning leads
| Input | Required | Description | Example |
|---|---|---|---|
competitor |
Yes | The rival business/brand name to locate on Google Maps, Facebook, and Reddit | Equinox |
city |
Yes | The city or market to scope the place search to | Austin |
platforms |
No | Comma-separated list of platforms to run — options: places, facebook, reddit. Omit to run all of them; name specific platforms to limit the run. | facebook, reddit |
depth |
No | How many pages of reviews/threads to pull per source (maps to the pages param on the review tools and the page param on search_reddit). Higher means more evidence and more cost; 1-2 is usually enough. | 2 |
search_places(query="{competitor} {city}")
Always runs (Google is the anchor source). Grab the place_id of the rival's location(s) with the most reviews.
place_reviews(place_id=<place_id>, sort_by=lowest_ranking, get_sentiment=true, pages=2)
Always runs. Keep 1-2 star reviews and cluster recurring failure themes (wait times, billing, staff). pages={depth} is optional; omit to pull the default depth.
search_facebook_pages(query={competitor})
Only run if {platforms} includes facebook: find the rival's official Facebook page url for a second review source.
facebook_page_details(url=<page_url>)
Only run if {platforms} includes facebook: resolve the page_id required for the reviews endpoint.
facebook_page_reviews(page_id=<page_id>, get_sentiment=true, pages=2)
Only run if {platforms} includes facebook: keep recommend=false reviews and confirm which weaknesses repeat across Google and Facebook. pages={depth} is optional.
search_reddit(query="{competitor} complaints", get_sentiment=true, sort_by=top, page=2)
Only run if {platforms} includes reddit: pull the most-upvoted complaint threads to corroborate which failures users repeat unprompted, beyond formal reviews. page={depth} is optional (note search_reddit uses the singular page param).
search_places
place_reviews
search_facebook_pages
facebook_page_details
facebook_page_reviews
search_reddit
This is exactly what the MCP returns to your agent (via the review-weakness-miner prompt or get_skill tool), with your inputs filled in.
SKILL: Review Weakness Miner
A competitor's worst reviews are a free, honest product-gap audit. Sorting to the lowest-ranked reviews and corroborating across review sites plus unprompted Reddit complaint threads isolates the failures that repeat, not the one-off rants. Use the platforms input to choose which sources beyond Google to run, and depth to control how much evidence to pull.
You are running this skill on API Direct via its MCP tools. Execute the steps below yourself by calling the named tools in order — values in <angle brackets> come from a previous step. Then deliver the result described at the end.
INPUTS:
- competitor (required): <competitor — ASK THE USER>
The rival business/brand name to locate on Google Maps, Facebook, and Reddit
- city (required): <city — ASK THE USER>
The city or market to scope the place search to
- platforms (optional): (optional — e.g. facebook, reddit)
Comma-separated list of platforms to run — options: places, facebook, reddit. Omit to run all of them; name specific platforms to limit the run.
- depth (optional): 2 (default — override if you like)
How many pages of reviews/threads to pull per source (maps to the pages param on the review tools and the page param on search_reddit). Higher means more evidence and more cost; 1-2 is usually enough.
PLATFORM SELECTION: some steps are gated with "Only run if {platforms} includes X". If the user supplied a `platforms` value, run only the steps whose platform is listed. If the user did NOT supply `platforms`, run ALL steps — every platform the skill supports.
STEPS:
1. Tool `search_places` — search_places(query="{competitor} {city}")
Always runs (Google is the anchor source). Grab the place_id of the rival's location(s) with the most reviews.
2. Tool `place_reviews` — place_reviews(place_id=<place_id>, sort_by=lowest_ranking, get_sentiment=true, pages=2)
Always runs. Keep 1-2 star reviews and cluster recurring failure themes (wait times, billing, staff). pages=2 is optional; omit to pull the default depth.
3. Tool `search_facebook_pages` — search_facebook_pages(query={competitor})
Only run if {platforms} includes facebook: find the rival's official Facebook page url for a second review source.
4. Tool `facebook_page_details` — facebook_page_details(url=<page_url>)
Only run if {platforms} includes facebook: resolve the page_id required for the reviews endpoint.
5. Tool `facebook_page_reviews` — facebook_page_reviews(page_id=<page_id>, get_sentiment=true, pages=2)
Only run if {platforms} includes facebook: keep recommend=false reviews and confirm which weaknesses repeat across Google and Facebook. pages=2 is optional.
6. Tool `search_reddit` — search_reddit(query="{competitor} complaints", get_sentiment=true, sort_by=top, page=2)
Only run if {platforms} includes reddit: pull the most-upvoted complaint threads to corroborate which failures users repeat unprompted, beyond formal reviews. page=2 is optional (note search_reddit uses the singular page param).
DELIVER: A ranked weakness map of the rival's top recurring complaints, evidenced by quoted 1-star reviews from Google and Facebook and, when enabled, the most-upvoted Reddit complaint threads.
Note: each underlying tool call is billed at its normal endpoint price; get_sentiment adds a small per-page surcharge. Page through results as needed but stop once you have enough to deliver the outcome.
Crawl one seed's similar-companies graph on LinkedIn, then cross-fill the gaps with AI competitor lists and funding news into a full, sized market map.
Detect competitor instability from a surge of 'open to work' employees, cross-checked against X, Reddit, layoff forums and the news wire.
Reverse-engineer a rival's unannounced roadmap from the roles they just opened — then cross-check it against the news and open web