CreativeScope — Mobile Game Ad Creative Intelligence
Mobile-game ad creative intelligence across SDK ad networks: search, rankings, AI hook analysis.
我该使用它吗
质量与安全性
发现(4)
- LOW在 get_reference_image_search_status 中
- LOW在 get_game_publisher_platform_trend 中
- LOW在 get_game_publisher_platform_ratio 中
- LOW在 get_reference_image_search_results 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"creative-intelligence": {
"url": "https://mcp.creativescope.ai/mcp"
}
}
}远程端点
https://mcp.creativescope.ai/mcpstreamable-http它能做什么
工具清单
工具(35)
🟢get_game_trend(game_id, date_from, date_to)
Get daily game delivery trends for the requested date range. Creative and ad counts represent delivery activity; exposure is a lifetime reference, not daily incremental exposure.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by this service. Pass unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Default: 90 days ago; maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD. Default: today.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_game_rank_markets(game_id, date_from, date_to, store, rank_types, ...)
List the countries, app-store categories, stores, and ranking types where a game appeared on a chart during a date range. Returns each observed dimension with best rank, latest rank, and ranked-day count. Ranking types are free, store-paid, and top-grossing. Only Google Play and iPhone App Store are exposed; iPad rankings are excluded. Date range defaults to the last 90 days and cannot exceed 365 days.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Encrypted game ID returned by search_games or as game_id/advertiser_id in other results.",
"type": "string"
},
"date_from": {
"description": "Start date in YYYY-MM-DD. Defaults to 89 days before date_to.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date in YYYY-MM-DD. Defaults to today.",
"type": [
"string",
"null"
],
"default": null
},
"store": {
"description": "Store: all, google_play, or app_store. Defaults to all.",
"type": [
"string",
"null"
],
"default": null
},
"rank_types": {
"description": "Ranking types: free, store_paid, grossing. Defaults to all three.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"limit": {
"description": "Maximum dimension rows to return. Maximum 200; defaults to 100.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_game_investment_trend(game_id, date_from, date_to, metrics)
Get daily newly launched creatives, reused creatives, ad plans and exposure references to analyze delivery growth and creative refresh cadence. Exposure is a lifetime reference for newly launched creatives, not a daily increment. Default 90 days; maximum 180 days.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"metrics": {
"description": "Comma-separated metrics: materials, ads, or all (default). Chinese aliases are also accepted.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_game_overview(game_id, date_from, date_to, sections)
Get a game's identity, deduplicated creatives/ad plans, market and platform coverage, and delivery-cadence summary in one call. Require explicit dates, maximum 180 days. Exposure is global creative lifetime estimated exposure, not period increments or country exposure. Country shares are overlapping ad-plan target coverage. No standalone creative/ad IDs are returned.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Required.",
"type": "string"
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Required. Maximum range 180 days.",
"type": "string"
},
"sections": {
"description": "Optional sections: identity, summary, markets, platforms, trend_summary. Omit for all.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
}
},
"required": [
"game_id",
"date_from",
"date_to"
]
}🟢get_game_summary(game_id, date_from, date_to)
Summarize creatives, ad plans, lifetime exposure references and Google Play net download increments within a date range. download_increment sums daily increments over actual coverage, not cumulative downloads or public store ranges. Includes the legacy nested summary alongside the primary delivery fields.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by this service. Pass unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Default: 90 days ago; maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD. Default: today.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_material_detail_v2(detail_url, include)
Get creative summary, media and owning-game information using a complete material_reference returned by this service. Resolve the exact material, game, source platform, date and month in that reference. Use material_reference for follow-up tool calls and media_url to view images, play videos or open HTML playable ads.
输入模式
{
"type": "object",
"properties": {
"detail_url": {
"description": "Opaque material_reference returned by creative search. Pass unchanged in this legacy-named detail_url parameter. Previously issued detail URLs remain accepted as input only.",
"type": "string"
},
"include": {
"description": "Requested sections: summary (default, including owning-game and download/delivery information), media. Multiple sections are allowed.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
}
},
"required": [
"detail_url"
]
}🟢search_games(keyword, category, sort_by, limit, offset, ...)
Search mobile games by name or category across global markets. Return identity, active ads and creatives in the last 30 days, and their lifetime estimated exposure as a delivery-heat reference, not 30-day incremental exposure. Supply keyword or category. Category accepts English or Chinese.
输入模式
{
"type": "object",
"properties": {
"keyword": {
"description": "Search text in the user's original language. Supply keyword or category.",
"type": [
"string",
"null"
],
"default": null
},
"category": {
"description": "Game category in English or Chinese, such as strategy, RPG or casual. Supply keyword or category.",
"type": [
"string",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: ad_heat, material_count, ad_count, downloads. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 50.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
},
"region": {
"description": "Optional delivery region or ISO2 country code.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platform": {
"description": "Optional delivery platform alias, such as facebook or tiktok.",
"type": [
"string",
"null"
],
"default": null
}
}
}🟢get_game_install_trend(game_id, date_from, date_to)
Get daily Google Play net download increments and cumulative snapshots for a game. Return requested and actual coverage dates, download_increment_total and latest_download_snapshot. Sum increments only; never sum cumulative snapshots.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_similar_materials_v2(detail_url, date_from, date_to, cross_game, sort_by, ...)
Find visually similar creatives from a complete material_reference using stored video-content vectors. Return games, developers, delivery dates, heat, media and material references. Require dates, maximum 180 days. Similarity does not establish reuse; use get_material_reuse_clues for recorded cross-game reuse and chronology.
输入模式
{
"type": "object",
"properties": {
"detail_url": {
"description": "Opaque material_reference returned by creative search. Pass unchanged in this legacy-named detail_url parameter. Previously issued detail URLs remain accepted as input only.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Required.",
"type": "string"
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Required. Maximum range 180 days.",
"type": "string"
},
"cross_game": {
"description": "true (default) searches all games; false restricts results to the seed creative's game.",
"type": [
"boolean",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: similarity, heat, latest. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 10; maximum 20.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0. Maximum 5000.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"detail_url",
"date_from",
"date_to"
]
}🟢search_materials_by_keyword(keyword, game_id, date_from, date_to, video_type, ...)
Search creative copy and labels by keyword, optionally within a game and date range. Return opaque material references and direct video addresses. Keyword length is 2-200 characters. This performs text matching, not arbitrary visual-description vector search. Use search_materials_v2 with query for bilingual concept expansion.
输入模式
{
"type": "object",
"properties": {
"keyword": {
"description": "Search text in the user's original language. Required; 2-200 characters.",
"type": "string"
},
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": [
"string",
"null"
],
"default": null
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: heat, latest. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 50.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"keyword"
]
}🟢get_material_reuse_clues(detail_url, limit)
Find directly recorded reuse relationships for a creative material_reference. Return related games, developers, first/last appearances, relative appearance days and representative material references, grouped by game. These are direct bidirectional reuse relationships, not vector similarity or proof of ownership.
输入模式
{
"type": "object",
"properties": {
"detail_url": {
"description": "Opaque material_reference returned by creative search. Pass unchanged in this legacy-named detail_url parameter. Previously issued detail URLs remain accepted as input only.",
"type": "string"
},
"limit": {
"description": "Number of results; default 20; maximum 50.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"detail_url"
]
}🟢get_reference_image_search_status(job_id)
Get the processing status of a reference-image search job. Example: 'Is my reference-image search finished yet?'
输入模式
{
"type": "object",
"properties": {
"job_id": {
"description": "Job ID returned by submit_reference_image_search.",
"type": "string"
}
},
"required": [
"job_id"
]
}🟢get_context
Get CreativeScope business context, current date, supported platforms, registered tool catalog, date limits, freshness and capability boundaries. Use the tool catalog to select the appropriate discovery, aggregate or ranking contract.
输入模式
{
"type": "object",
"properties": {}
}🟢get_store_game_rank(country_code, platform, rank_type, period, date, ...)
Get official Google Play or iPhone App Store free, paid or grossing charts by day, week or month and official category. country_code must be explicitly specified by the user; otherwise get_store_game_rank_filter and ask for the country. Return current, best and previous ranks, movement, hourly rank curves and game tokens.
输入模式
{
"type": "object",
"properties": {
"country_code": {
"description": "ISO 3166-1 alpha-2 country code, such as US or TR. Follow this tool's country-selection rules.",
"type": "string"
},
"platform": {
"description": "Store platform: 1=Google Play, 2=iPhone App Store.",
"type": [
"integer",
"null"
],
"default": null
},
"rank_type": {
"description": "Chart type: 0=free (default), 1=paid, 2=grossing.",
"type": [
"integer",
"null"
],
"default": null
},
"period": {
"description": "Chart period: day (default), week, month.",
"type": [
"string",
"null"
],
"default": null
},
"date": {
"description": "Chart date: YYYY-MM-DD, or YYYY-MM for monthly charts. Omit for the latest available period.",
"type": [
"string",
"null"
],
"default": null
},
"categories": {
"description": "Official store category code or canonical category name. Use get_store_game_rank_filter to obtain valid platform-specific values.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 100.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"country_code"
]
}🟢get_filter_options(types)
Get valid game categories, countries and 14 delivery-platform aliases. Map user conditions to the returned standard values before exact filtering. Country options include codes and names. Keep canonical filter values unchanged when using them as parameters.
输入模式
{
"type": "object",
"properties": {
"types": {
"description": "Comma-separated filter dictionaries: game_category, country, platform. Omit or use all for every dictionary.",
"type": [
"string",
"null"
],
"default": null
}
}
}🟢get_store_game_rank_trend(package_name, country_code, date_from, date_to, categories, ...)
Get game-level official daily chart trends using a game token or an app identifier resolved through the official package mapping. Best mode selects leading dimensions across Google Play and iPhone App Store; exact mode fixes store, country and category. Includes current-day realtime data when available. Returns daily ranks, first-entry flags and optional 24-hour curves.
输入模式
{
"type": "object",
"properties": {
"package_name": {
"description": "Optional Android package name or numeric iOS app ID. Resolves the owning game through the official package mapping; supply this or game_id, not both.",
"type": [
"string",
"null"
],
"default": null
},
"country_code": {
"description": "ISO 3166-1 alpha-2 country code, such as US or TR. Follow this tool's country-selection rules.",
"type": [
"string",
"null"
],
"default": null
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Maximum range 365 days.",
"type": [
"string",
"null"
],
"default": null
},
"categories": {
"description": "Official store category code or canonical category name. Use get_store_game_rank_filter to obtain valid platform-specific values.",
"type": [
"string",
"null"
],
"default": null
},
"rank_types": {
"description": "Array of chart types: 0=free, 1=paid, 2=grossing. Omit for all.",
"type": [
"array",
"null"
],
"items": {
"type": "integer"
},
"default": null
},
"include_rank_curve": {
"description": "Include a fixed 24-entry hourly rank curve for each day; default false.",
"type": [
"boolean",
"null"
],
"default": null
},
"game_id": {
"description": "Game token from search_games or store rankings. Queries every associated official-store package, matching the game-level API.",
"type": [
"string",
"null"
],
"default": null
},
"mode": {
"description": "best selects the strongest observed dimensions across both stores; exact fixes platform, country and category. Defaults to exact when country_code is supplied, otherwise best.",
"type": [
"string",
"null"
],
"default": null
},
"platform": {
"description": "Store for exact mode: 1=Google Play, 2=iPhone App Store. Defaults to the supplied app identifier's store, otherwise Google Play.",
"type": [
"integer",
"null"
],
"default": null
},
"max_series": {
"description": "Maximum chart series in best mode; default 20, maximum 50.",
"type": [
"integer",
"null"
],
"default": null
}
}
}🟢get_game_materials(game_id, date_from, date_to, publisher_platform, video_type, ...)
List a game advertiser's creatives by delivery performance, including material_reference, delivery dates, heat, reuse status and media. No standalone material tokens are returned. Each material_reference belongs to the same result item. No exact match total is returned. For platform totals, use get_game_platform_stats; never count by repeatedly paging.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platform": {
"description": "Delivery platform: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle. admob includes the Google advertising subchannels.",
"type": [
"string",
"null"
],
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: heat, reinvestment, latest, ending. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 100.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢search_materials_distribution(date_from, date_to, game_ids, keyword, country_codes, ...)
Aggregate ad-plan and creative counts/shares by delivery platform and country using discovery filters. Return aggregates only. Each creative or plan can cover multiple countries/platforms, so sums count attributions rather than deduplicated totals. Require explicit dates (maximum 180 days) and at least one of game_ids, keyword, country_codes, publisher_platforms, languages or a creative-label filter. Use get_game_platform_stats for single-game/platform deduplicated totals.
输入模式
{
"type": "object",
"properties": {
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Required.",
"type": "string"
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Required. Maximum range 180 days.",
"type": "string"
},
"game_ids": {
"description": "Game tokens returned by this service; maximum 20. For compare_games, supply 2-5 tokens.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"keyword": {
"description": "Search text in the user's original language. Maximum 100 characters.",
"type": [
"string",
"null"
],
"default": null
},
"country_codes": {
"description": "Array of ISO 3166-1 alpha-2 delivery-country codes, for example [\"TR\",\"US\"]; maximum 20.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"country_match": {
"description": "contains (default): match any specified country. exclusive: the complete delivery-country set must exactly equal the specified set.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platforms": {
"description": "Array of delivery platforms: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"material_types": {
"description": "Array of formats: image, video, playable. Mutually exclusive with video_type.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"languages": {
"description": "Array of exact canonical creative-language values; maximum 20.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"aspect_ratio": {
"description": "landscape, portrait, or square. Omit for any orientation.",
"type": [
"string",
"null"
],
"default": null
},
"duration_min_seconds": {
"description": "Inclusive minimum duration in seconds; must be nonnegative.",
"type": [
"number",
"null"
],
"default": null
},
"duration_max_seconds": {
"description": "Exclusive maximum duration in seconds; must be positive and greater than the minimum.",
"type": [
"number",
"null"
],
"default": null
},
"device": {
"description": "ios or android; omit or use all for either.",
"type": [
"string",
"null"
],
"default": null
},
"quality": {
"description": "hd: short edge at least 720 pixels; sd: below 720. Omit or use all for any quality.",
"type": [
"string",
"null"
],
"default": null
},
"creative_topics": {
"description": "Array of canonical creative-topic values; maximum 20; matches any value.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"content_topics": {
"description": "Array of canonical content-topic values; maximum 20; matches any value.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"only_discover": {
"description": "true: first discovery falls within the range. false or omitted: creative lifetime overlaps the range.",
"type": [
"boolean",
"null"
],
"default": null
}
},
"required": [
"date_from",
"date_to"
]
}🟢get_game_publisher_platform_trend(game_id, date_from, date_to, publisher_platform)
Get a game delivery-platform trend for a date range. Use the returned metric and dates consistently when comparing platforms.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by this service. Pass unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Default: 90 days ago; maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD. Default: today.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platform": {
"description": "Optional delivery platform alias, such as facebook, youtube or tiktok. See get_context for the full list.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟡submit_reference_image_search(image_url, country, genre, platform, format, ...)
Submit a reference-image similarity search as an asynchronous job. Use this when the user provides a directly downloadable public HTTPS image URL. The URL must resolve to image bytes without login or hotlink protection; HTML pages, local paths, and base64 are not supported. The embedding provider validates image format and size asynchronously and returns IMAGE_FETCH_FAILED, INVALID_IMAGE, or EMBEDDING_MODEL_ERROR when processing cannot continue. Genre aliases are normalized internally. If a normalized genre produces no candidates, the completed result explicitly marks a visual-only fallback instead of silently returning an empty set. Example: 'Find ads visually similar to this reference image.'
输入模式
{
"type": "object",
"properties": {
"image_url": {
"description": "Directly downloadable public HTTPS image URL. It must return image bytes without login or hotlink protection. Do not pass an HTML page, local path, base64, or expiring authenticated URL.",
"type": "string"
},
"country": {
"description": "Optional ISO 3166-1 alpha-2 country code, for example US, JP, KR, GB.",
"type": [
"string",
"null"
],
"default": null
},
"genre": {
"description": "Optional game genre or sub-genre, for example SLG, match-3, puzzle, RPG. Aliases are normalized internally. If the normalized genre has no candidates, results may use an explicitly disclosed visual-only fallback.",
"type": [
"string",
"null"
],
"default": null
},
"platform": {
"description": "Optional platform filter, for example facebook, instagram, tiktok, youtube, admob.",
"type": [
"string",
"null"
],
"default": null
},
"format": {
"description": "Optional creative format: image, video, or playable.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of similar creatives to return when the job completes. Maximum 20.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"image_url"
]
}⚪resolve_game_by_identifier(identifier, type, limit)
Resolve an Android package name or numeric iOS app ID to game tokens and identity. Return all matching regional editions, ordered by lifetime estimated exposure of creatives active in the last 30 days. This is a delivery-heat reference, not incremental exposure.
输入模式
{
"type": "object",
"properties": {
"identifier": {
"description": "Android package name or numeric iOS app ID. Required, at least 3 characters.",
"type": "string"
},
"type": {
"description": "Identifier type: auto (default), package, or ios.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 5; maximum 10.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"identifier"
]
}🟢compare_games(game_ids, date_from, date_to, country_code, rank_by)
Compare 2-5 games with the same date range, deduplication and metric definitions. Return creative, reused-creative and ad-plan counts plus global creative lifetime estimated exposure. Optional country filtering means target-list inclusion, not country exposure or preference. Maximum 180 days; no standalone creative/ad IDs are returned.
输入模式
{
"type": "object",
"properties": {
"game_ids": {
"description": "Game tokens returned by this service; maximum 20. For compare_games, supply 2-5 tokens.",
"type": "array",
"items": {
"type": "string"
}
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Required.",
"type": "string"
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Required. Maximum range 180 days.",
"type": "string"
},
"country_code": {
"description": "ISO 3166-1 alpha-2 country code, such as US or TR. Follow this tool's country-selection rules.",
"type": [
"string",
"null"
],
"default": null
},
"rank_by": {
"description": "material_count (default), ad_plan_count, lifecycle_exposure, or reinvestment_count.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_ids",
"date_from",
"date_to"
]
}🟢get_game_daily_impressions(game_id, date_from, date_to)
Get daily and cumulative estimated exposure across all Android/iOS packages associated with a game. daily_impressions is the daily increment; snapshot_impressions is cumulative through that date; daily_impressions_total is the period increment total. For historical total exposure with no date, query yesterday in Asia/Shanghai and use its snapshot_impressions. For the past N days, use daily_impressions_total. Default 90 days, maximum 365 days. Label exposure as estimated.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Earliest supported date: 2025-06-30.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Maximum range 365 days.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_game_detail(game_id)
Get game identity, delivery platforms, countries, active ad and creative counts, and download snapshots. Exposure for active creatives is lifetime estimated exposure, not 30-day incremental exposure. Google Play download_count is the latest cumulative snapshot; download_count_label is a public store range, neither is a period increment.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
}
},
"required": [
"game_id"
]
}🟢get_game_country_distribution(game_id, date_from, date_to, publisher_platform)
Get game delivery-country coverage for a date range. Country coverage can overlap and does not represent country-specific exposure or audience preference.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by this service. Pass unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Default: 90 days ago; maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD. Default: today.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platform": {
"description": "Optional delivery platform alias, such as facebook, youtube or tiktok. See get_context for the full list.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟢get_material_rank(rank_type, period, date, class_name, tag_name, ...)
Get rising or evergreen creative rankings by period and optional primary/secondary category. Return rank, material_reference, video media, creative labels, delivery duration, heat, ad count and associated games. Always use the same item's material_reference when citing a creative. No standalone material identifiers are returned. Platform/country filtering is not supported.
输入模式
{
"type": "object",
"properties": {
"rank_type": {
"description": "1=rising creatives (default), 2=evergreen creatives.",
"type": [
"integer",
"null"
],
"default": null
},
"period": {
"description": "Chart period: day (default), week, month.",
"type": [
"string",
"null"
],
"default": null
},
"date": {
"description": "Chart date: YYYY-MM-DD, or YYYY-MM for monthly charts. Omit for the latest available period.",
"type": [
"string",
"null"
],
"default": null
},
"class_name": {
"description": "Primary creative category; omit for all. Use canonical category values from get_filter_options.",
"type": [
"string",
"null"
],
"default": null
},
"tag_name": {
"description": "Optional secondary creative category; use a canonical value from get_filter_options.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 100.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
}
}🟢get_store_first_seen_games(date_from, date_to, platform, country_code, categories, ...)
Find games first observed in official daily app-store charts, defined per package, platform, country, category and rank type. This is not a release date. Complete coverage starts 2025-09-15; exclude the baseline day by default to avoid labeling existing games as new. Default game grouping deduplicates package/platform; dimension grouping returns original chart dimensions.
输入模式
{
"type": "object",
"properties": {
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Earliest supported date: 2025-09-15.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Maximum range 365 days.",
"type": [
"string",
"null"
],
"default": null
},
"platform": {
"description": "Store platform: 1=Google Play, 2=iPhone App Store.",
"type": [
"integer",
"null"
],
"default": null
},
"country_code": {
"description": "ISO 3166-1 alpha-2 country code, such as US or TR. Follow this tool's country-selection rules.",
"type": [
"string",
"null"
],
"default": null
},
"categories": {
"description": "Official store category code or canonical category name. Use get_store_game_rank_filter to obtain valid platform-specific values.",
"type": [
"string",
"null"
],
"default": null
},
"rank_types": {
"description": "Array of chart types: 0=free, 1=paid, 2=grossing. Omit for all.",
"type": [
"array",
"null"
],
"items": {
"type": "integer"
},
"default": null
},
"group_by": {
"description": "game (default): deduplicate package/platform; dimension: retain country/category/chart-type dimensions.",
"type": [
"string",
"null"
],
"default": null
},
"include_baseline": {
"description": "Include the initial coverage day 2025-09-15; default false.",
"type": [
"boolean",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: first_date, first_rank. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 100.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
}
}🟢get_game_platform_stats(game_id, publisher_platform, date_from, date_to)
Get deduplicated creative count, first-discovered creative count and ad-plan count for one game, platform and explicit date range (maximum 180 days). Creative count uses lifetime overlap; first-discovered count uses first appearance within the range. No paging is needed. Always use this tool for platform totals rather than counting pages from discovery tools.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"publisher_platform": {
"description": "Delivery platform: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle. admob includes the Google advertising subchannels.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints. Required.",
"type": "string"
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required. Required. Maximum range 180 days.",
"type": "string"
}
},
"required": [
"game_id",
"publisher_platform",
"date_from",
"date_to"
]
}🟢search_materials_by_filter(game_id, game_class, game_tag, mood, creative_theme, ...)
Search creatives by game category, creative labels, country, platform and format. Each label dimension accepts one standard value; different dimensions may be combined. Country means the delivery list includes that country, not exclusive targeting. Exposure is global lifetime estimated exposure, not country-specific. Cite metrics and material_reference from the same item. Use get_filter_options for game categories, countries and platforms.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": [
"string",
"null"
],
"default": null
},
"game_class": {
"description": "Optional canonical primary game category.",
"type": [
"string",
"null"
],
"default": null
},
"game_tag": {
"description": "Optional canonical secondary game category.",
"type": [
"string",
"null"
],
"default": null
},
"mood": {
"description": "Optional single canonical mood label.",
"type": [
"string",
"null"
],
"default": null
},
"creative_theme": {
"description": "Optional single canonical creative-topic label.",
"type": [
"string",
"null"
],
"default": null
},
"content_theme": {
"description": "Optional single canonical content-topic label.",
"type": [
"string",
"null"
],
"default": null
},
"country_code": {
"description": "ISO 3166-1 alpha-2 country code, such as US or TR. Follow this tool's country-selection rules.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platform": {
"description": "Delivery platform: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle. admob includes the Google advertising subchannels.",
"type": [
"string",
"null"
],
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: heat, latest. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 50.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
}
}🟡search_materials_v2(game_ids, keyword, country_codes, country_match, publisher_platforms, ...)
Discover creatives by games, countries, platforms, formats, languages, aspect ratio, duration, device, quality and discovery dates. Each result has an atomically associated material_reference, without standalone creative/ad IDs. country_match contains matches any country; exclusive requires exact set equality. Exposure is global lifetime estimated exposure, not country-specific. Pagination reports has_more, not an exact total. Use get_game_platform_stats for totals, never repeated paging. Arbitrary visual-description semantic search is not supported.
输入模式
{
"type": "object",
"properties": {
"game_ids": {
"description": "Game tokens returned by this service; maximum 20. For compare_games, supply 2-5 tokens.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"keyword": {
"description": "Search text in the user's original language. Maximum 100 characters.",
"type": [
"string",
"null"
],
"default": null
},
"country_codes": {
"description": "Array of ISO 3166-1 alpha-2 delivery-country codes, for example [\"TR\",\"US\"]; maximum 20.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"country_match": {
"description": "contains (default): match any specified country. exclusive: the complete delivery-country set must exactly equal the specified set.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platforms": {
"description": "Array of delivery platforms: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"material_types": {
"description": "Array of formats: image, video, playable. Mutually exclusive with video_type.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"languages": {
"description": "Array of exact canonical creative-language values; maximum 20.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"aspect_ratio": {
"description": "landscape, portrait, or square. Omit for any orientation.",
"type": [
"string",
"null"
],
"default": null
},
"duration_min_seconds": {
"description": "Inclusive minimum duration in seconds; must be nonnegative.",
"type": [
"number",
"null"
],
"default": null
},
"duration_max_seconds": {
"description": "Exclusive maximum duration in seconds; must be positive and greater than the minimum.",
"type": [
"number",
"null"
],
"default": null
},
"device": {
"description": "ios or android; omit or use all for either.",
"type": [
"string",
"null"
],
"default": null
},
"quality": {
"description": "hd: short edge at least 720 pixels; sd: below 720. Omit or use all for any quality.",
"type": [
"string",
"null"
],
"default": null
},
"only_discover": {
"description": "true: first discovery falls within the range. false or omitted: creative lifetime overlaps the range.",
"type": [
"boolean",
"null"
],
"default": null
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: heat, latest, ending, reinvestment. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 50.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
},
"query": {
"description": "Optional natural-language creative query, 2-200 characters. English concepts are expanded to Chinese source labels internally. Unlike keyword, this uses concept matching, not exact text matching. Not arbitrary scene-description vector search.",
"type": [
"string",
"null"
],
"default": null
},
"genre": {
"description": "Optional game genre in English or Chinese. Combined with the other discovery filters.",
"type": [
"string",
"null"
],
"default": null
}
}
}🟢get_game_publisher_platform_ratio(game_id, date_from, date_to, country_code)
Get a game delivery-platform distribution for a date range. Platform coverage can overlap; shares are not exclusive audience or exposure shares.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by this service. Pass unchanged.",
"type": "string"
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Default: 90 days ago; maximum range 180 days.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD. Default: today.",
"type": [
"string",
"null"
],
"default": null
},
"country_code": {
"description": "Optional ISO2 delivery-country code; matches target-country-list inclusion.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}🟡get_game_ads_v2(game_id, country_codes, country_match, publisher_platforms, material_type, ...)
Discover a game's ad plans by countries, platforms, format and dates. Deduplicate cross-month snapshots; each result represents one plan with its associated creative material_reference and response-local plan_sequence, without standalone ad/creative IDs. contains matches any specified country; exclusive requires exact set equality. Pagination reports has_more, not an exact total. Use get_game_platform_stats for totals.
输入模式
{
"type": "object",
"properties": {
"game_id": {
"description": "Game token returned by game search, rankings or details. Pass the token unchanged.",
"type": "string"
},
"country_codes": {
"description": "Array of ISO 3166-1 alpha-2 delivery-country codes, for example [\"TR\",\"US\"]; maximum 20.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"country_match": {
"description": "contains (default): match any specified country. exclusive: the complete delivery-country set must exactly equal the specified set.",
"type": [
"string",
"null"
],
"default": null
},
"publisher_platforms": {
"description": "Array of delivery platforms: facebook, instagram, messenger, audience_network, threads, admob, youtube, tiktok, mintegral, unity, applovin, ironsource, vungle or pangle.",
"type": [
"array",
"null"
],
"items": {
"type": [
"string",
"null"
]
},
"default": null
},
"material_type": {
"description": "Format: image, video, playable. Mutually exclusive with video_type.",
"type": [
"string",
"null"
],
"default": null
},
"video_type": {
"description": "Creative format: 0=image, 1=video, 2=playable. Do not combine with material_type/material_types.",
"type": [
"integer",
"null"
],
"default": null
},
"date_from": {
"description": "Start date, YYYY-MM-DD. Follow this tool's required-date and range constraints.",
"type": [
"string",
"null"
],
"default": null
},
"date_to": {
"description": "End date, YYYY-MM-DD; defaults to today unless explicitly required.",
"type": [
"string",
"null"
],
"default": null
},
"sort_by": {
"description": "Sort order: heat, latest, ending. The first value is the default.",
"type": [
"string",
"null"
],
"default": null
},
"limit": {
"description": "Number of results; default 20; maximum 100.",
"type": [
"integer",
"null"
],
"default": null
},
"offset": {
"description": "Pagination offset; default 0.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"game_id"
]
}⚪report_capability_gap(description, triggered_by_tool, example_query)
Record an unmet analysis need for future product improvements when existing tools cannot satisfy the request. Include the missing capability and an example query.
输入模式
{
"type": "object",
"properties": {
"description": {
"description": "Describe the unmet need as specifically as possible.",
"type": "string"
},
"triggered_by_tool": {
"description": "Optional tool or scenario that exposed the capability gap.",
"type": [
"string",
"null"
],
"default": null
},
"example_query": {
"description": "Optional example user query or scenario.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"description"
]
}🟢get_reference_image_search_results(job_id, limit)
Get completed reference-image search results. If the job is still running, returns polling guidance. Example: 'Show the matches from my reference-image search.'
输入模式
{
"type": "object",
"properties": {
"job_id": {
"description": "Job ID returned by submit_reference_image_search.",
"type": "string"
},
"limit": {
"description": "Maximum number of hydrated creative records to return. Maximum 20.",
"type": [
"integer",
"null"
],
"default": null
}
},
"required": [
"job_id"
]
}🟢get_store_game_rank_filter
Get valid platforms, rank types, periods, countries, official categories and dates for official app-store rankings, including the latest Google Play US free-chart date/hour. Use before querying rankings to discover valid country and platform-specific category values.
输入模式
{
"type": "object",
"properties": {}
}推荐提示词
search_gamessearch_gamesget_game_trendget_game_trendsearch_gamesget_game_trend社区
证据