MCP tools reference (simple)
This is the plain-English version of the MCP tools list.
- MCP URL:
https://app.winninghunter.com/mcp - Full setup guide: Connect MCP
- All tools are read-only
- Successful
araçlar/çağrıuses 1 API credit
Quick list (all 30 tools)
search_tiktok_products
search_tiktok_shops
search_tiktok_creators
search_tiktok_videos
count_tiktok_entities
browse_tiktok_categories
list_tiktok_category_top
autocomplete_tiktok
get_tiktok_product
get_tiktok_shop
get_tiktok_creator
get_tiktok_video
get_tiktok_trending_products
search_facebook_ads
find_winning_products
creative_inspiration_pack
brief_competitor
scan_ad
daily_radar
analyze_tracked_brand
list_tracked_brands
list_shopify_store_filter_options
search_shopify_stores
search_shops
find_similar_shops
find_similar_stores_by_image
search_exploding_topics
get_exploding_topic_detail
autocomplete_exploding_topics
check_credits
How to think about the tools
1) Find things
Use these first:
tiktok_ürünlerini_aratiktok_shops_aramatiktok_yaratıcılarını_araTikTok videolarını arasearch_facebook_adsfind_winning_productscreative_inspiration_packbrief_competitorscan_adsearch_shopify_storessearch_shopsfind_similar_shopsfind_similar_stores_by_imagesearch_exploding_topics
2) Open details
Use an ID from search results:
get_tiktok_productget_tiktok_shopget_tiktok_creatorget_tiktok_videoget_exploding_topic_detail
3) Helpers
tiktok_varlıklarının_sayısı(counts by entity)TikTok kategorilerini göz at(category tree and views)tiktok_kategori_en_popüler(top items in one category)otomatik tamamlama_tiktok(typeahead suggestions)autocomplete_exploding_topics(topic suggestions)get_tiktok_trending_products(TikTok Shop trending)daily_radar(tracked-brand changes)analyze_tracked_brand(single-brand deep dive)list_shopify_store_filter_options(valid Store Explorer filter values, including dynamic themes/apps/taxonomy)kredileri kontrol et(remaining API credits)
Most common arguments
Most search tools use these:
anahtar kelimeülkesayfaboyutsort_bysort_order
For Meta ad tools, sayfa is 1-based in MCP (1 = first page), even though the dashboard backend uses 0-based indexing internally.
sort_order is asc ya da açıklama (varsayılan) açıklama) on every tool that accepts it.
Most detail tools use:
idslice(which part you want)
İzin verilir sort_by per tool
Pass any string from the table below. Common aliases are normalized automatically (case-insensitive). Anything else falls back to the default sort and the response includes a mcp_sorting block describing what was applied.
Meta ad library
| Tool | Varsayılan | İzin verilir sort_by |
|---|---|---|
search_facebook_ads |
relevance |
relevance, datefound, lastseen, adspend, longestrunning, reach, adsetamount, consistency, monthlyvisits, pageactiveads, toprank (sort by ad_rank ascending: rank #1 önce #5; use for “top ad from [brand]”; MCP forces sort_order asc) |
find_winning_products |
relevance |
same as search_facebook_ads |
Takma adlar: created / created_at / date / recent / newest / latest → datefound; last_ad_started → lastseen; first_ad_started / oldest / earliest → datefound (ascending); active_ads → pageactiveads; monthly_visits → monthlyvisits. For within-brand ad_rank (“top ad from [brand]”), use toprank or aliases rank, ranking, ad_rank, top_ad, best_ranked, best_ad, adrank, topad, …; spaced phrases like top rank / top ad normalize to toprank. sort_order is ignored for toprank (always ascending rank).
searchkeyword (field scope for anahtar kelime on Meta tools): Tümü (default), landingurl, pagename, adtext, productname. This is değil a niche/category field; aliases like landing_url, page_name, ad_text, product are normalized too. If an agent mistakenly sends a niche/category term as searchkeyword with no anahtar kelime / niche (for example searchkeyword: "Fashion"), the MCP tool recovers it as the matching niche (CG) instead of failing schema validation.
For Meta vertical/category searches, use niche ya da niches instead of keyword-only filtering. Treat user wording like “category”, “niche”, “vertical”, “market”, or “product category” as a request for this Meta niche filter. The MCP input schema exposes the dashboard niche codes as an enum, so a fashion query should be sent as niche=CG (Moda & Giyim). Useful fashion-ad refinements are WC = Women's Clothing, MC = Erkek Giyim, FW = Ayakkabı, BG = Çantalar, JY = Mücevherat, WT = Saatlerve SG = Sunglasses. The runtime also accepts dashboard names like Moda & Giyim; invalid values return allowed_niches instead of being passed through.
rank_growth_filter is also validated against the dashboard options: comma-separated rising, stable, declining.
Other Meta dashboard filters are exposed as MCP args and validated before calling /api/fb-ads: countries / exclude_countries, technology / technologies, language / languages / exclude_languages, apps / exclude_apps, theme / themes, scaling, media_type, page_type, ad_score, low_impressions, range filters (min_* / max_* for duplicates, active ads, ad spend, reach, monthly visits, products on store, price, copy length, video length, days running), and date ranges (ad_created_*, last_seen_*, product_created_*, page_created_*). Theme names must be exact dashboard Themes values; apps accept dashboard app ids or app names. Date ranges require both *_from ve *_to içinde YYYY-MM-DD.
TikTok Shop
All TikTok Shop search tools default to sort_by=revenue. Allowed values match the dashboard's sortable columns.
| Tool | İzin verilir sort_by |
|---|---|
tiktok_ürünlerini_ara |
gelir, ad, revenue_30_days, sold_count, avg_unit_price, commission_rate, creator_count, ilk kez görüldü, creator_conversion_ratio, revenue_growth_rate, sales_growth_rate, product_score, product_rating, product_review_cnt |
tiktok_shops_arama |
gelir, shop_name, revenue_30_days, sold_count, product_count, shop_rating, revenue_growth_rate, sales_growth_rate, video_count, avg_unit_price |
tiktok_yaratıcılarını_ara |
gelir, ad, revenue_30_days, followers, followers_lifetime, followers_growth_rate, video_count, revenue_growth_rate, views_growth_rate, product_count |
TikTok videolarını ara |
gelir, ad, revenue_30_days, views_30_days, likes_30_days, gpm, ad_spend, ad2_cost, ad2_roas, estimated_roas, yayın tarihi, revenue_growth_rate, views_growth_rate, likes_growth_rate, shares_growth_rate, video_duration, comments, saves |
İçin tiktok_kategori_en_popüler, get_tiktok_product (yaratıcılar / videolar slices), get_tiktok_shop (ürünler / videolar / yaratıcılar slices), get_tiktok_creator (mağazalar / ürünler / videolar slices), and get_tiktok_video (similar slice), the sort_field arg uses the matching entity's allow-list above.
Aliases auto-normalized across TikTok Shop tools: units_sold / units / sales / sold → sold_count; gmv → gelir; gmv_30d / revenue_30d → revenue_30_days; growth / revenue_growth / gmv_growth_rate → revenue_growth_rate; sales_growth → sales_growth_rate; price / avg_price → avg_unit_price; rating → shop_rating; yorumlar → product_review_cnt; followers_count → followers; views → views_30_days; likes → likes_30_days; roas → estimated_roas; duration → video_duration; date / published → yayın tarihi.
Shopify Explore Shops
| Tool | Varsayılan | İzin verilir sort_by |
|---|---|---|
search_shopify_stores, search_shops |
monthly_visits |
monthly_visits, 30d_rev_estimated_max, 1d_rev_estimated_max, revenue_1y, aov, visits_growth_pct_m1, visits_growth_pct_m3 |
find_similar_stores_by_image |
monthly_visits |
same as search_shopify_stores |
Takma adlar: gelir / monthly_revenue / revenue_30d / 30d_revenue → 30d_rev_estimated_max; annual_revenue / yearly_revenue → revenue_1y; daily_revenue / revenue_1d → 1d_rev_estimated_max; traffic / visits / visitors / monthly_traffic → monthly_visits; avg_order_value / average_order_value / order_value → aov; traffic_growth_1m → visits_growth_pct_m1; traffic_growth_3m → visits_growth_pct_m3; revenue_change / revenue_momentum / store_revenue_change_30d → visits_growth_pct_m1 (same mapping as the live Explore Shops table when legacy revenue-delta sort was retired).
search_shopify_stores / search_shops filters (all optional unless noted). Names mirror MCP argument names:
Kullanım list_shopify_store_filter_options before filtering by dynamic values (shopify_themes, store_apps, product_taxonomy_l1/l2/l3). Its section argument accepts all, static, themes, apps, product_taxonomy_l1, product_taxonomy_l2, product_taxonomy_l3; pass query to search dynamic option lists.
Intent playbook: “Stores in a niche” → kategori ya da niche = one of the Explore Shops verticals. For fashion/clothing/apparel, use Giyim. Avoid anahtar kelime-only niche queries. “Top / biggest by revenue” → sort_by=revenue_1y, sort_order=desc. “New in last N months” → store_created_from / store_created_to inclusive YYYY-MM-DD (both required).
Parity with POST https://app.winninghunter.com/api/shops/explore: MCP uses the same server-side POST keys (arama, kategori, sortingKey, sortingDirection, sayfa, pageSize, includeWlads, …). Argument mapping: anahtar kelime→arama, sort_by→sortingKey, boyut→pageSize. Default include_wlads=false → includeWlads=0 (matches the dashboard table request that skips wlads previews).
| Argument(s) | Meaning |
|---|---|
anahtar kelime |
Full-text search (name, domain, category, descriptions, products/bestsellers). |
ülke |
Merchant/store registered country, not visitor traffic. Allowed: ABD, GB, CA, AU, DE, FR, NL, IN, BR, IT, ES, SE, CN, JP, HK, CH, BE, AE, AT, NZ, SG, IE, DK, NO, PT, PL, MX, KR, IL, ZA, SA, MY, TH, PH, ID, NG, PK, MA, CO, AR, FI, CZ, RO, GR, HU. |
currency |
Store currency. Allowed: ABD DOLARI, EUR, GBP, CAD, SEK, DKK, DENE, NOK, CHF, AUD, NZD, HKD, MXN, BRL, INR. |
kategori, niche |
Same Explore Shops vertical (niche is an alias if you omit kategori). Only these values match the vertical filter: Giyim, Sanat ve El Sanatları, Aksesuarlar, Güzellik, Sağlık, Oyuncaklar ve Oyunlar, Elektronik, Evcil Hayvan Malzemeleri, Diğer (server matches case-insensitively). Prefer over anahtar kelime alone for “stores in [vertical]”. |
product_taxonomy_l1, product_taxonomy_l2, product_taxonomy_l3 |
Optional finer product taxonomy refinements. These are not the main vertical filter; use kategori / niche for verticals. Discover valid values with list_shopify_store_filter_options. |
visitor_country_main, visitor_country_among, visitor_country_exclude |
Visitor/traffic mix from SimilarWeb-style top countries: comma/semicolon ISO2 lists; main = tied top share; among = has meaningful share; exclude = must not appear (same code in multiple lists → exclude wins). Invalid country-code strings return invalid_argument. |
minimum gelir, maksimum gelir, min_annual_revenue, max_annual_revenue |
Estimated revenue band (monthly USD or annual converted to monthly bounds server-side). |
aov_min, aov_max |
Average product price / AOV range (non-negative). |
monthly_visits_min, monthly_visits_max |
Monthly visits band (integers ≥ 0). Dashboard presets: 0-5000, 5000-10000, 10000-50000, 10000-150000, 10000-100000000, 50000-100000, 0-150000, 100000-1000000, 1000000-100000000, 3000000-100000000. |
product_count_min, product_count_max |
Published product count band (integers ≥ 0). Dashboard presets: 1-10, 10-50, 50-200, 200-1000, 1000-100000. |
language |
Exact match on store language. Allowed: en, fr, de, es, it, pt, nl, sv, da, no, pl, ja, ko, zh, ar, tr, ru, he, th. |
store_apps |
Substring match against installed Shopify app names (≤128 chars). Discover valid names with list_shopify_store_filter_options(section=apps). |
revenue_change_pct_min, revenue_change_pct_max |
30d revenue momentum filter (store_revenue_change_30d); both bounds must be ≥ 0 (dash-range encoding limitation). |
trustpilot_rating_min, trustpilot_rating_max |
Trustpilot stars (0–5). Dashboard presets: 1-2, 2.5-3.5, 4-5. |
trustpilot_reviews_min, trustpilot_reviews_max |
Trustpilot review count band (integers ≥ 0). Dashboard presets: 1-1000, 1000-10000, 10000-100000, 100000-100000000. |
traffic_growth_rules_json |
JSON array of rules AND‑ed together: { "months": 1 | 3, "direction": "growth" | "loss", "percentage": number, "maxPercentage": number | null } (matches Explore Shops Traffic Growth UI). |
store_created_from, store_created_to |
Inclusive calendar window YYYY-MM-DD (both required). Filters indexed first_product_date (first catalog signal). Does not filter Shopify metadata.created_at (shop provision / replatform). Successful responses include mcp_sorting with the applied sort and allow-list. |
include_wlads |
Varsayılan false: includeWlads=0 in POST (same as dashboard Explore table — no per-store explore_wlads_ads Meta preview hydration). Set true for previews (includeWlads=1). |
shopify_themes |
Comma/semicolon-separated theme names, or JSON string array (each 1–128 chars). Discover current theme names with list_shopify_store_filter_options(section=themes). Invalid/empty theme payloads return invalid_argument. |
sayfa, boyut, sort_by, sort_order |
Pagination and sort. sayfa must be ≥ 1; boyut must be 1–50; sort_order must be asc ya da açıklama. |
find_similar_stores_by_image takes image_url (required) plus the same filters as above except anahtar kelime (similarity replaces text search).
Note: TikTok MCP tools also use a ülke argument — there it is marketplace/country context, değil the same field as Shopify merchant ülke.
Brand tracker
| Tool | Varsayılan | İzin verilir sıralama |
|---|---|---|
list_tracked_brands |
date_added |
date_added, ad, new_ads, growth |
Takma adlar: recent / added / newest / latest / date → date_added; alphabetical / alpha / a-z → ad; new / newads → new_ads; trending / momentum → growth.
Exploding Topics
| Tool | Varsayılan | İzin verilir sorting |
İzin verilir zaman aralığı |
|---|---|---|---|
search_exploding_topics |
(dashboard preselects exponent) |
default, growth, gradient, exponent, absolute_volume, date_added |
default (all time), 3, 6, 12, 24 (months) |
Aliases for sorting: volume → absolute_volume; exponential → exponent; recent / newest / latest → date_added; trending → growth. kategori accepts dashboard slugs (e.g. moda, güzellik, skincare, Fitness, technology, ai, …) or default for all categories.
mcp_sorting response block
Every search/list tool that accepts sort_by (or sıralama/sorting) attaches an mcp_sorting object to the response payload:
{
"mcp_sorting": {
"requested_sort_by": "revenue_30d",
"applied_sort_by": "revenue_30_days",
"applied_sort_order": "desc",
"allowed_sort_by": ["revenue", "name", "revenue_30_days", "..."],
"normalized_from": "revenue_30d"
}
}
If you pass an unknown sort key, mcp_sorting.warning says it fell back to the default — the tool does not error out.
Slice values for detail tools
Use one of these slice values:
get_tiktok_product:detail,history,metrics,yaratıcılar,videolarget_tiktok_shop:detail,history,metrics,ürünler,videolar,yaratıcılar,strategyget_tiktok_creator:detail,history,metrics,mağazalar,ürünler,videolarget_tiktok_video:detail,history,metrics,ürünler,similar
Two easy mistakes
-
Trending confusion
get_tiktok_trending_productsis TikTok Shop product momentum- Exploding Topics is separate (
search_exploding_topics+get_exploding_topic_detail)
-
Write actions
- MCP is read-only
- Favorites, presets, transcripts, and other writes must use REST API
Copy block for AI instructions
Paste this into agent instructions:
Use WinningHunter MCP at https://app.winninghunter.com/mcp.
Auth can be either OAuth bearer token (connector flow) or X-API-Key (header-capable clients).
All MCP tools are read-only.
Successful tools/call costs 1 API credit.
If user asks for writes (favorites/presets/transcripts), use REST /api/v1/tiktok-shop/* instead.
When unsure about exact schema, call tools/list first.
Need the full technical detail?
For full filter semantics and endpoint behavior: