Skip to main content
The Appeeky MCP Server lets AI assistants like Claude, ChatGPT, Cursor, and any MCP-compatible client query App Store and Google Play intelligence data directly.
MCP Endpoint: https://mcp.appeeky.com

Connect Your Client

Claude Desktop uses OAuth — no API key needed. You’ll sign in with your Appeeky account when prompted.
  1. Open Claude Desktop and go to Settings → Connectors (or click the button in your Appeeky dashboard).
  2. Click Add Connector and paste the MCP URL:
https://mcp.appeeky.com
  1. Claude will redirect you to sign in with your Appeeky account (Google, GitHub, or email).
  2. Once authenticated, the Appeeky MCP tools will be available in your conversations.
You can also add the connector from appeeky.com → Settings → API Key — the “Claude Desktop” button copies the URL and opens the Connectors page for you.
Claude Desktop uses OAuth (no API key required). All other clients use your API key via Authorization: Bearer header or X-API-Key header. Get your key from appeeky.com → Settings or the API Dashboard.

Available Tools

Apps

ToolDescription
search_appsSearch Apple App Store or Google Play by keyword, app ID, or package name
get_appGet detailed metadata for a specific Apple or Google Play app
get_app_intelligenceFull intelligence report: downloads/installs, listing data, screenshots, sentiment fields
get_app_similarSimilar and competing apps
get_app_reviewsFetch Apple or Google Play reviews with pagination
get_country_rankingsApp rankings across supported countries

Screenshots

ToolDescription
get_app_screenshotsGet all screenshots for an Apple or Google Play app
get_competitor_screenshotsCompare screenshots between an app and its competitors
get_category_screenshotsGet screenshots for top apps in an Apple or Google Play category

Keywords

ToolDescription
get_keyword_ranksApple or Google Play apps ranking for a keyword with rich metadata (supports countries)
get_keyword_suggestionsApple autocomplete or Google Play suggest ideas from a seed term
get_keyword_metricsVolume/difficulty-style metrics (Google uses live Play search result counts today; supports countries; 10 req/min burst per API key)
get_app_keywordsKeywords an Apple or Google Play app ranks for
get_keyword_trendsHistorical rank data over time (7-90 days)
get_keyword_ranks_historyHistorical apps-per-day counts for a tracked keyword
compare_keywordsCompare keyword overlap between two Apple apps or two Google Play apps
compare_keyword_clusterYour app + 1–5 competitors: lifecycle buckets + gap keywords
track_keywordAdd Apple or Google keyword to daily tracking
get_trending_keywordsKeywords with fastest-growing reach in stored Apple or Google rank data

Account

ToolDescription
get_api_usagePlan, credits used/remaining, reset date, per-endpoint usage (0 credits)

ASO (App Store Optimization)

ToolDescription
aso_full_auditFull ASO health audit for Apple or Google Play — score (0-100), breakdown, prioritized recommendations
aso_briefApple-only: audit + opportunities + storefront score; optional countries, intent_clusters
aso_validate_metadataValidate title/subtitle/keywords against Apple or Google character limits
aso_suggest_metadataApple-sourced metadata suggestions that include Apple and Google fields
aso_find_opportunitiesApple-only: discover untapped keyword opportunities
aso_competitor_reportApple-only: deep ASO comparison between two apps with keyword gap analysis
ToolDescription
get_featured_appsApple-only: App of the Day, Game of the Day, and curated editorial collections
get_categoriesList Apple App Store or Google Play categories
get_category_topTop Apple or Google Play apps by category and chart type
get_downloads_to_topApple-only: estimated downloads to reach chart positions
get_new_releasesApple-only: recently released apps
discoverApple-only: curated discovery feed (new releases + new #1 apps)
get_new_number_1Apple-only: apps that recently hit #1 in their category

Market Intelligence

ToolDescription
get_market_moversTop gainers, losers, new entries, and apps that dropped out of charts
get_market_activityLive feed of chart movements: new entries, rank ups/downs, exits
ToolDescription
asc_get_metricsOverview: totals, per-app breakdown, daily rows (2 credits)
asc_list_metrics_appsList app IDs with metrics data (2 credits)
asc_get_app_metricsApp detail: daily series + country breakdown (2 credits)
asc_subscription_metricsMRR / ARR / ARPU / churn / trial conversion + daily series (2 credits)
Pro feature — requires Indie plan or higher. ASC Metrics need your App Store Connect account connected in appeeky.com → Settings → Integrations. Data syncs daily. 2 credits per request.

ASC Reviews (synced + write-through)

ToolDescription
asc_search_reviewsSearch reviews with rich filters: rating, territory, hasResponse, full-text
asc_reviews_summaryAggregated stats: total, avg rating, distribution, response rate, by-territory
asc_respond_to_reviewPost or update a developer response (handles Apple’s edit-by-DELETE flow)
asc_delete_review_responseDelete a developer response
asc_refresh_reviewForce-refresh one review from Apple (e.g. after replying)
Pro feature — requires Indie plan or higher. Reviews data syncs daily; mutations write through to Apple immediately.

App Store Connect (requires your ASC credentials)

ToolDescription
asc_list_appsList apps in your App Store Connect account
asc_get_appGet app details by App Store Connect app ID
asc_list_app_versionsList versions for an app
asc_create_app_versionCreate a new app version (version string + platform)
asc_update_app_versionPatch attributes on an app version
asc_list_app_infosList app info resources for an app
asc_list_app_info_localizationsList app info localizations (name, subtitle, privacy)
asc_update_app_info_localizationUpdate app info localization fields
asc_list_version_localizationsList metadata localizations for a version
asc_get_version_localizationGet one version localization by ID
asc_update_localizationUpdate description, keywords, whatsNew, etc.
asc_list_customer_reviewsList customer reviews live from Apple (legacy — prefer asc_search_reviews for filtering)
asc_list_app_analytics_requestsList analytics report requests
asc_create_analytics_requestCreate analytics report request
asc_list_reports_for_requestList reports for a request
asc_list_analytics_report_instancesList instances for an analytics report
asc_list_analytics_report_segmentsList segments for a report instance
asc_get_analytics_report_segmentGet one segment (download metadata)
ASC tools require issuer_id, key_id, and private_key — your App Store Connect API key. See App Store Connect Overview.

Google Play Console (requires your service account)

Owned Google Play apps — separate from public platform=google ASO data. Connect once at POST /v1/connect/google-play/credentials, or pass optional per-call credentials (service_account_json, or client_email + private_key) to the MCP tools.
ToolDescription
google_play_credentials_statusWhether Google Play is connected on your account
google_play_list_appsList apps visible to the Play service account
google_play_list_reviewsList owned-app Play reviews
google_play_get_reviewGet one review by ID
google_play_reply_reviewReply to or update a review response
google_play_get_vitals_metricGet Android vitals metric metadata/freshness
google_play_query_vitalsQuery Android vitals metrics
google_play_list_anomaliesList vitals anomalies
google_play_list_subscriptionsList subscription products
google_play_list_one_time_productsList one-time products
google_play_get_release_filter_optionsRelease/version filters for Reporting API queries
google_play_list_tracksList release tracks
google_play_get_trackGet one release track
google_play_list_track_releasesList releases on a track
google_play_update_trackPatch a track; supports validate_only
google_play_list_listingsList store listing localizations
google_play_get_listingGet one localized store listing
google_play_update_listingPatch title/description/video; supports validate_only
google_play_list_report_objectsList GCS report files for sales, earnings, stats, store performance
google_play_get_report_objectGet one report object metadata
google_play_import_store_performance_reportImport one GCS stats CSV into synced analytics data
google_play_import_reportsBulk-import GCS stats reports by prefix
google_play_analytics_overviewImported Play analytics overview across apps
google_play_app_analyticsImported Play analytics metrics for one app
google_play_sync_app_vitalsSync crash/ANR vitals into synced analytics data
google_play_app_analytics_sourcesTraffic source, country, and UTM breakdowns
google_play_app_search_termsPlay Console search-term visitors, acquisitions, and conversion
For Play installs, ratings, crashes, search-term, and store-listing conversion reports, use google_play_import_reports after saving a reportsBucket, or discover files with google_play_list_report_objects. Report bucket names usually start with pubsite_prod_.

Apple Search Ads

Paid App Store search campaigns — separate from App Store Connect. Connect once at POST /v1/connect/apple-ads/credentials, then manage your org via REST or MCP with only your Appeeky API key. Coverage: credentials · campaigns & ad groups (list + pause/resume/budget) · targeting keywords (list, find, create, update, delete, recommendations, bid suggestions) · negative keywords (campaign + ad group CRUD) · keyword performance + search terms reports. See Apple Search Ads for full endpoint reference and examples.
ToolDescription
asa_credentials_statusWhether Search Ads is connected on your account
asa_list_campaignsList campaigns (IDs, names, status, budget)
asa_update_campaignEnable/pause campaign or update daily budget
asa_list_adgroupsAd groups inside a campaign
asa_update_adgroupEnable/pause ad group or update default bid
asa_list_targeting_keywordsList targeting keywords in an ad group
asa_get_targeting_keywordGet one targeting keyword by ID
asa_find_targeting_keywordsFind targeting keywords across a campaign
asa_create_targeting_keywordsBulk-create targeting keywords
asa_update_targeting_keywordsBulk-update keyword bid / status
asa_delete_targeting_keywordsDelete targeting keywords
asa_targeting_keyword_recommendationsApple keyword suggestions
asa_bid_recommendationsSuggested bids for keyword texts
asa_profitabilityJoin Apple Ads spend with RevenueCat revenue, profit, and ROAS
asa_list_campaign_negative_keywordsList campaign-level negative keywords
asa_find_campaign_negative_keywordsFind campaign negative keywords
asa_create_campaign_negative_keywordsCreate campaign negative keywords
asa_update_campaign_negative_keywordsUpdate campaign negative keywords
asa_delete_campaign_negative_keywordsDelete campaign negative keywords
asa_list_adgroup_negative_keywordsList ad group negative keywords
asa_find_adgroup_negative_keywordsFind ad group negative keywords
asa_create_adgroup_negative_keywordsCreate ad group negative keywords
asa_update_adgroup_negative_keywordsUpdate ad group negative keywords
asa_delete_adgroup_negative_keywordsDelete ad group negative keywords
asa_report_keywordsKeyword performance: impressions, taps, installs, spend
asa_report_search_termsReal search queries users typed before tapping your ad
Indie plan or higher. Requires an Apple Search Ads API key (not your ASC key). Optional per-call credentials: client_id, team_id, key_id, org_id, private_key.

AI Visibility (LLM mind-share tracking)

How often your app is recommended by AI assistants — ChatGPT, Claude, Gemini, and Perplexity — for the intents users actually search for, partitioned per country and per model.
ToolDescription
ai_visibility_overviewComposite score, sentiment, intent coverage, and prior-period delta
ai_visibility_intentsAll tracked intents with per-intent visibility, sentiment, and average position
ai_visibility_intent_detailOne intent + its prompts + the latest AI answers per prompt
ai_visibility_competitorsApps that AI recommends instead of (or alongside) yours over the last N days
ai_visibility_trendDaily time series — app-level or scoped to a single intent
ai_visibility_answerVerbatim raw model output, extracted app mentions in rank order, citations
ai_visibility_settings_getCurrent config + tier policy + AI Visibility credit budget
ai_visibility_settings_updateToggle enabled/models/cadence (tier-capped, 0 credits)
ai_visibility_intent_create / _update / _archiveManually manage tracked intents (0 credits)
ai_visibility_prompt_create / _update / _archiveManually manage prompts under an intent (0 credits)
ai_visibility_bootstrapAuto-generate intents+prompts from App Store metadata, then run an initial scan
ai_visibility_scanRun an on-demand scan across every active prompt × enabled model (dynamic credits)
Indie plan or higher. AI Visibility uses a separate credit pool from API credits — see AI Visibility Overview. Bootstrap and Scan are fire-and-forget queued tasks; they return a taskRunId immediately and write results back as scans finish.

RevenueCat (your credentials: X-RC-Key / X-RC-Project)

ToolDescription
rc_overviewSnapshot: MRR, actives, trials, revenue, etc.
rc_chart_optionsValid filters (countries, products, …) for a chart name
rc_revenue, rc_mrr, rc_active_subscriptions, rc_churnCommon chart shortcuts
rc_chartGeneric chart by name

Example Prompts

Once connected, ask your AI assistant in natural language: Market research:
Show me the top 10 apps for "meditation" and analyze
their ratings and review counts.
Keyword intelligence:
Find keyword suggestions for "screen recorder" and
tell me which ones have high volume but low difficulty.
Competitor analysis:
Compare keyword overlap between Headspace (id: 493145008)
and Calm (id: 571800810). What keywords is Calm ranking
for that Headspace is missing?
App intelligence:
Give me the full intelligence report for Duolingo.
How many downloads does it get? What's the revenue estimate?
Featured apps:
What apps are featured on the App Store today?
What's the App of the Day and Game of the Day?
Trending keywords:
What keywords are trending on the App Store this week?
Show me keywords with the highest growth in the US.
Downloads to top:
How many downloads does it take to reach the top 10
in the Games category? Show me the current apps at each rank.
New releases:
What new apps were released in the last 3 days?
Are any of them in the Games category?
ASO audit:
Run a full ASO audit on Duolingo (id: 570060128).
What's its score and what should they improve?
ASO decision brief (orchestration):
Give me an ASO decision brief for Brilliant (id: 913335252) in the US.
Summarize prioritized actions and top keyword opportunities.
ASO metadata optimization:
I want to optimize my app (id: 913335252) for the keywords
"learn math", "science education", and "brain training".
Suggest optimized metadata for Apple and Google.
ASC Metrics (synced Sales & Trends):
What's my app's revenue and downloads for the last 30 days?
Use asc_get_metrics or asc_get_app_metrics.
Keyword opportunities:
Find keyword opportunities for Headspace (id: 493145008).
Which keywords should they target next?
Market movers:
Which apps gained the most ranks in the top-free chart today?
Show me the top gainers and any new entries in Games.
Market activity:
What's happening in the App Store right now?
Show me the latest chart activity for the US free apps chart.
ASO competitor analysis:
Run a full ASO competitor report comparing Brilliant (id: 913335252)
vs Khan Academy (id: 1157115554). Where is Brilliant falling behind?
App Store Connect reviews (synced + write-through):
Find every unanswered 1- or 2-star review for app 6759740679 from the last
two weeks that mentions "crash" or "bug", and reply with an empathetic
message that points to support@example.com. Then show me the updated
unanswered count.
Subscription health (MRR / Churn):
Pull subscription metrics for the last 90 days. Tell me whether MRR
growth is being driven by new subscribers, lower churn, or higher
trial conversion — and which app contributes most to MRR.
Apple Search Ads — real search queries:
List my Search Ads campaigns, then pull the search terms report for
the main campaign over the last 30 days. Which queries have high
impressions but few installs? Suggest ASO keywords to add.
Apple Search Ads — keyword efficiency:
For campaign 2143596801, show keyword performance for the last month.
Which keywords have the best tap-through rate and lowest cost per install?
AI Visibility — how often does AI recommend my app?
For app 6759740679 in the US, give me my AI Visibility on ChatGPT:
overall score, the 3 lowest-visibility intents, and the top 5 apps
ChatGPT recommends instead of mine.
AI Visibility — see exactly what the model said:
For app 6759740679, find the worst-performing intent on ChatGPT,
pick its top prompt, and show me the verbatim ChatGPT response
(including which competitor apps it ranked above mine).
AI Visibility — track a new intent manually:
Add a new AI Visibility intent for app 6759740679 in the US:
"Find a privacy-respecting note-taking app for students".
Then add 3 prompts a real user would type for it (mix of
unbranded and comparison styles), and run a scan.

Tool Reference

search_apps

Search the App Store by keyword or numeric App ID.
ParameterTypeDefaultDescription
querystringrequiredSearch keyword or App ID
countrystringusISO country code
limitnumber20Max results (1-50)

get_app

Get metadata for a specific app.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID (numeric) or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google

get_app_intelligence

Full intelligence report with downloads, revenue, and sentiment.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google

get_app_similar

Similar and competing apps. Apple uses the 3-layer matching pipeline; Google uses public Play Store similar apps.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google

get_keyword_ranks

All apps ranking for a keyword with metadata (rating, reviews, category, price).
ParameterTypeDefaultDescription
keywordstringrequiredKeyword to search
platformstringappleapple or google
countrystringusISO country code
countriesstringComma-separated ISO codes for multi-country lookup
devicestringiphoneApple only: iphone or ipad; ignored for Google
langstringenGoogle Play language code when platform=google

get_keyword_suggestions

Keyword ideas from a seed term with optional volume/difficulty metrics.
ParameterTypeDefaultDescription
termstringrequiredSeed term
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
expandbooleanfalseLong-tail expansion
metricsbooleantrueInclude volume/difficulty

get_keyword_metrics

Detailed metrics for a keyword. Burst rate limit: 10 requests per minute per API key (sliding window). This is separate from monthly credits. HTTP 429 responses include a Retry-After header (seconds). Best practices for agents:
  • Batch storefronts: countries=us,gb,de in one call instead of three separate calls.
  • Do not loop over large keyword lists sequentially — prioritize high-value terms and space calls out.
  • On 429, wait for Retry-After then retry; use get_keyword_suggestions or get_app_keywords for broader discovery.
ParameterTypeDefaultDescription
keywordstringrequiredKeyword to analyze
platformstringappleapple or google
countrystringusISO country code (ignored if countries is set)
langstringenGoogle Play language code when platform=google
countriesstringComma-separated ISO codes (e.g. us,gb,de) — one burst slot for all storefronts

get_app_keywords

All keywords an app ranks for with trend data.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
include_weakbooleanfalseInclude ranks 21-50
forcebooleanfalseForce rediscovery where supported
Historical rank data for a keyword + app pair.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
keywordstringrequiredKeyword to track
countrystringusISO country code
langstringenGoogle Play language code when platform=google
daysnumber30History length (7-90)

compare_keywords

Compare keyword rankings between two Apple apps or two Google Play apps.
ParameterTypeDefaultDescription
app_idstringrequiredYour Apple App ID or Google Play package name
competitor_idstringrequiredCompetitor Apple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code

compare_keyword_cluster

Multi-competitor keyword lifecycle for Apple or Google Play (your app + 1–5 competitors).
ParameterTypeDefaultDescription
app_idstringrequiredYour Apple App ID or Google Play package name
platformstringappleapple or google
competitorsstringrequiredComma-separated competitor Apple App IDs or Google Play package names (1–5)
countrystringusISO country code

get_keyword_ranks_history

Historical apps-per-day counts for a tracked keyword.
ParameterTypeDefaultDescription
keywordstringrequiredKeyword
platformstringappleapple or google
countrystringusISO country code
devicestringiphoneApple only: iphone or ipad; ignored for Google
daysnumber14Lookback (1–90)

get_api_usage

Current billing period usage (0 credits).
ParameterTypeDefaultDescription
(none)

get_categories

List Apple App Store or Google Play categories.
ParameterTypeDefaultDescription
platformstringappleapple or google

get_category_top

Top apps in a specific category or all categories.
ParameterTypeDefaultDescription
genre_idstringallApple genre ID (e.g. 6014) or Google category ID (e.g. TOOLS, GAME)
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
chartstringtop-freetop-free, top-paid, or top-grossing
limitnumber25Max results (1-100)

get_downloads_to_top

Apple-only. Estimated daily downloads needed to reach specific chart positions (#1, #5, #10, #25, #50, #100).
ParameterTypeDefaultDescription
genre_idstringallGenre ID (e.g. 6014 for Games)
countrystringusISO country code
chartstringtop-freetop-free, top-paid, or top-grossing
Keywords with the fastest-growing reach in Apple or Google stored rank data.
ParameterTypeDefaultDescription
platformstringappleapple or google
countrystringusISO country code
daysnumber7Trend window in days (1-30)
limitnumber50Max keywords to return (1-100)
Apps currently featured on the App Store Today tab.
ParameterTypeDefaultDescription
countrystringusISO country code

get_new_releases

Recently released apps.
ParameterTypeDefaultDescription
countrystringusISO country code
max_daysnumber7Show releases from last N days

aso_full_audit

Full ASO health audit with scoring, breakdown, and recommendations.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google

aso_validate_metadata

Validate metadata against Apple or Google character limits.
ParameterTypeDefaultDescription
platformstringrequiredapple or google
titlestringoptionalApp title
subtitlestringoptionalApple subtitle
keywordsstringoptionalApple keyword field (comma-separated)
short_descriptionstringoptionalGoogle short description
full_descriptionstringoptionalGoogle full description

aso_suggest_metadata

Generate optimized metadata from target keywords.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID
keywordsstring[]requiredTarget keywords array
countrystringusISO country code

aso_find_opportunities

Discover untapped keyword opportunities.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID
countrystringusISO country code

aso_brief

Orchestrated ASO brief: audit + opportunities, storefront readiness score, optional intent clusters, optional multi-country.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID
countrystringusISO country code (ignored if countries set)
countriesstringoptionalComma-separated ISO codes for per-country briefs
freshbooleanfalseForce fresh re-analysis (slower)
intent_clustersbooleanfalseSemantic intent clustering (+2 credits)

aso_competitor_report

Deep ASO comparison between two apps.
ParameterTypeDefaultDescription
app_idstringrequiredYour app’s ID
competitor_idstringrequiredCompetitor’s ID
countrystringusISO country code

get_app_screenshots

Get all screenshots for an Apple or Google Play app.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
devicestringallApple device filter: iphone, ipad, or all; Google returns android/phone/tablet groups

get_competitor_screenshots

Compare screenshots between an app and its competitors.
ParameterTypeDefaultDescription
app_idstringrequiredApple App ID or Google Play package name
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
limitnumber5Number of competitor apps to include (1-10)

get_category_screenshots

Get screenshots for top-ranked apps in an Apple App Store or Google Play category.
ParameterTypeDefaultDescription
genre_idstringallApple genre ID (e.g. 6014) or Google category ID (e.g. TOOLS, GAME), or all
platformstringappleapple or google
countrystringusISO country code
langstringenGoogle Play language code when platform=google
chartstringtop-freetop-free, top-paid, or top-grossing
limitnumber10Number of apps (1-25)

asc_list_customer_reviews

List customer reviews for your app from App Store Connect. Requires ASC credentials.
ParameterTypeDefaultDescription
issuer_idstringrequiredApp Store Connect Issuer ID
key_idstringrequiredApp Store Connect Key ID
private_keystringrequiredApp Store Connect private key (PEM)
app_idstringrequiredApp Store Connect app ID
limitnumber50Max results per page (1-200)
cursorstringoptionalPagination cursor from previous response

asc_respond_to_review

Create or update your response to a single customer review. Transparently handles Apple’s edit-by-DELETE-then-POST flow — you always make a single tool call.
ParameterTypeDefaultDescription
issuer_idstringoptionalApp Store Connect Issuer ID (omit if ASC connected on your Appeeky account)
key_idstringoptionalApp Store Connect Key ID
private_keystringoptionalApp Store Connect private key (PEM)
review_idstringrequiredCustomer review ID (from asc_search_reviews or asc_list_customer_reviews)
response_bodystringrequiredYour response text (max 5970 chars — Apple’s hard limit)

asc_search_reviews

Search persisted customer reviews with rich filters. Reads from a synced copy of your App Store Connect reviews — much faster than asc_list_customer_reviews and supports filtering Apple’s API does not.
ParameterTypeDefaultDescription
app_idstringoptionalApp Store Connect app ID — omit to search across all your connected apps
ratingnumberoptionalFilter by exact star rating (1–5)
territorystringoptionalISO 3-letter country code (e.g. USA, GBR, DEU)
has_responsebooleanoptionaltrue for answered, false for unanswered, omit for both
qstringoptionalCase-insensitive substring match in title or body
limitnumber50Max results (1–200)
beforestringoptionalISO timestamp cursor — returns reviews created strictly before this date

asc_reviews_summary

Aggregated review stats: total count, average rating, star distribution, response rate, top territories.
ParameterTypeDefaultDescription
app_idstringoptionalFilter by app — omit for portfolio-wide summary

asc_delete_review_response

Delete your developer response to a review (idempotent — calling on a review with no response succeeds with response: null).
ParameterTypeDefaultDescription
issuer_idstringoptionalASC Issuer ID (omit if connected on Appeeky)
key_idstringoptionalASC Key ID
private_keystringoptionalASC private key (PEM)
review_idstringrequiredCustomer review ID whose response should be deleted

asc_refresh_review

Force-refresh a single review from Apple, bypassing the daily sync. Useful right after responding to confirm the PUBLISHED state.
ParameterTypeDefaultDescription
issuer_idstringoptionalASC Issuer ID (omit if connected on Appeeky)
key_idstringoptionalASC Key ID
private_keystringoptionalASC private key (PEM)
review_idstringrequiredCustomer review ID to refresh

asc_subscription_metrics

SaaS-grade subscription health: MRR, ARR, ARPU, churn rate, trial conversion rate, plus daily event counts (new, canceled, refunded, reactivated, trial starts/conversions, expired). Computed from Apple’s SUBSCRIPTION + SUBSCRIPTION_EVENT reports, FX-converted to USD using historical rates.
ParameterTypeDefaultDescription
app_idstringoptionalApp Store Connect app ID — omit to roll up across all your apps
start_datestring30 days agoISO date YYYY-MM-DD
end_datestringtodayISO date YYYY-MM-DD

asa_credentials_status

Check whether Apple Search Ads credentials are saved for your Appeeky account.
ParameterTypeDefaultDescription
(none)Uses your Appeeky API key only

asa_list_campaigns

List Search Ads campaigns in your connected organization.
ParameterTypeDefaultDescription
client_idstringoptionalSearch Ads Client ID (omit if connected on Appeeky)
team_idstringoptionalTeam ID
key_idstringoptionalKey ID
org_idstringoptionalOrg ID
private_keystringoptionalEC private key PEM
limitnumber50Max campaigns (1–200)
offsetnumber0Pagination offset

asa_list_adgroups

List ad groups for a campaign.
ParameterTypeDefaultDescription
campaign_idstringrequiredCampaign ID from asa_list_campaigns
client_idprivate_keystringoptionalSame as above — omit if connected
limitnumber50Max rows (1–200)
offsetnumber0Pagination offset

asa_update_campaign

Enable, pause, rename, or set daily budget on a campaign.
ParameterTypeDefaultDescription
campaign_idstringrequiredCampaign ID
status"ENABLED" | "PAUSED"optionalUser-controlled status
namestringoptionalNew name
daily_budget_amountstringoptionale.g. 2.00 (requires daily_budget_currency)
daily_budget_currencystringoptionale.g. EUR
client_idprivate_keystringoptionalPer-call credentials

asa_update_adgroup

Enable, pause, rename, or set default bid on an ad group.
ParameterTypeDefaultDescription
campaign_idstringrequiredCampaign ID
ad_group_idstringrequiredAd group ID
status"ENABLED" | "PAUSED"optionalUser-controlled status
namestringoptionalNew name
default_bid_amountstringoptionale.g. 0.56 (requires default_bid_currency)
default_bid_currencystringoptionale.g. EUR
client_idprivate_keystringoptionalPer-call credentials

asa_report_keywords

Keyword-level performance report for a campaign.
ParameterTypeDefaultDescription
campaign_idstringrequiredCampaign ID
fromstringoptionalStart date YYYY-MM-DD
tostringoptionalEnd date YYYY-MM-DD
daysnumberoptionalTrailing window when from/to omitted (default 30)
limitnumber50Max rows (1–200)
client_idprivate_keystringoptionalPer-call credentials

asa_report_search_terms

Search terms report — actual App Store queries that matched your ads.
ParameterTypeDefaultDescription
campaign_idstringrequiredCampaign ID
fromstringoptionalStart date YYYY-MM-DD
tostringoptionalEnd date YYYY-MM-DD
daysnumberoptionalTrailing window (default 30)
limitnumber50Max rows (1–200)
client_idprivate_keystringoptionalPer-call credentials

asa_profitability

Apple Search Ads spend joined with RevenueCat revenue, profit, and ROAS.
ParameterTypeDefaultDescription
rc_keystringrequiredRevenueCat secret API key
rc_projectstringoptionalRevenueCat project ID
level"keyword" | "campaign" | "adgroup" | "search_term"keywordRollup level
campaign_idsstring[]optionalCampaign IDs to scan. Omit to scan first campaigns.
fromstringoptionalStart date YYYY-MM-DD
tostringoptionalEnd date YYYY-MM-DD
daysnumber14Trailing day window
limitnumber200Max Apple rows per campaign
campaign_limitnumber25Max campaigns when campaign_ids is omitted
currencystringUSDRevenueCat currency
min_spendnumber20Spend threshold for insight buckets
insightsbooleantrueInclude optimization insights
client_idprivate_keystringoptionalPer-call Apple Search Ads credentials
Use this for questions like “what keywords are wasting spend?”, “which keywords have the best ROAS?”, and “what should I scale this week?”.

My Apps Tools

Manage your appeeky.com apps, competitors, tracked keywords, metadata versions, and reports directly from your AI assistant. All tools cost 0 credits and require an API key generated from appeeky.com → Settings → API Key.
These tools operate on your appeeky.com account data — the same data visible in the web dashboard. The key must have the apps:read scope for reads and apps:write for writes (unrestricted keys have both by default).

list_my_apps

List all apps in your appeeky.com tracked app list.
ParameterTypeDefaultDescription
(none)Returns all your tracked apps

add_my_app

Add an app to your tracked list by its App Store ID.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric Apple App Store ID
appNamestringoptionalDisplay name
developerNamestringoptionalDeveloper name
bundleIdstringoptionalBundle identifier
subtitlestringoptionalApp subtitle
descriptionstringoptionalApp description
languagesstring[]optionalSupported language codes
isLivebooleanoptionalWhether the app is live on the App Store
categorystringoptionalApp category
platformstringiosios, macos, or tvos

update_my_app

Update metadata for an existing app in your tracked list.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric App Store ID of the app to update
appNamestringoptionalNew display name
isLivebooleanoptionalLive status
categorystringoptionalApp category
subtitlestringoptionalApp subtitle
descriptionstringoptionalApp description
languagesstring[]optionalSupported language codes

delete_my_app

Remove an app from your tracked list.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric App Store ID of the app to remove

list_competitors

List competitor apps tracked for one of your apps.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric App Store ID of your tracked app

add_competitor

Add a competitor app to one of your tracked apps.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
competitorAppIdnumberrequiredCompetitor’s App Store ID
competitorNamestringoptionalDisplay name for the competitor

remove_competitor

Remove a competitor from one of your tracked apps.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
competitorAppIdnumberrequiredCompetitor’s App Store ID to remove

list_tracked_keywords

List keywords tracked for one of your apps.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric App Store ID of your tracked app

add_tracked_keyword

Start tracking a keyword for one of your apps.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
keywordstringrequiredKeyword to track (e.g. "aso tool")
countrystringusISO country code
languagestringenISO language code

remove_tracked_keyword

Stop tracking a keyword.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
keywordIdstringrequiredUUID of the tracked keyword row (from list_tracked_keywords)

list_app_versions

List saved metadata versions for one of your apps.
ParameterTypeDefaultDescription
appIdnumberrequiredNumeric App Store ID of your tracked app

create_app_version

Save a new set of ASO metadata as a named version.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
versionNamestringrequiredLabel for this version (e.g. "v2.1 Spring")
titlestringoptionalApp title (max 30 chars)
subtitlestringoptionalApp subtitle (max 30 chars)
descriptionstringoptionalFull app description
keywordsstringoptionalComma-separated keyword field
languagestringen-USLocale code

update_app_version

Update fields on an existing metadata version.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
versionIdstringrequiredUUID of the version to update
versionNamestringoptionalNew label
titlestringoptionalUpdated title
subtitlestringoptionalUpdated subtitle
descriptionstringoptionalUpdated description
keywordsstringoptionalUpdated keyword field

release_app_version

Mark a metadata version as the currently released version.
ParameterTypeDefaultDescription
appIdnumberrequiredYour tracked app’s App Store ID
versionIdstringrequiredUUID of the version to mark as released

list_reports

List saved ASO reports for your account.
ParameterTypeDefaultDescription
appIdnumberoptionalFilter by a specific App Store ID
typestringoptionalFilter by report type (e.g. aso_audit, competitor)
limitnumber20Max results (max 100)
offsetnumber0Pagination offset

get_report

Retrieve the full content of a saved report.
ParameterTypeDefaultDescription
reportIdstringrequiredUUID of the report

delete_report

Permanently delete a saved report.
ParameterTypeDefaultDescription
reportIdstringrequiredUUID of the report to delete

AI Visibility Tools

Track how often LLM assistants (ChatGPT, Claude, Gemini, Perplexity) recommend your app for the intents your users actually search for. Data is partitioned per (app, country, model) because the same prompt yields very different answers in different markets.
Indie plan or higher. AI Visibility uses a separate credit pool from API credits. Read tools cost AI Visibility credits per call (cheap), _scan and _bootstrap cost dynamically based on prompt count × enabled models. See AI Visibility Overview for the credit model.

ai_visibility_overview

Top-line scorecard for one model: composite score (0-100), letter grade, sentiment %, intent coverage, and prior-period delta.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric Apple App Store ID
countrystringusISO country code
modelstringchatgptOne of chatgpt, claude, gemini, perplexity

ai_visibility_intents

List every tracked intent with its visibility, sentiment, average position, and top competitor apps.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
modelstringchatgptOne of chatgpt, claude, gemini, perplexity

ai_visibility_intent_detail

Drill into one intent: returns its metrics plus all of its prompts and the latest AI answers per prompt. Use when you want to inspect “why is this intent under-performing?”.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
intent_idstringrequiredIntent UUID (from ai_visibility_intents)
countrystringusISO country code
modelstringchatgptAI model

ai_visibility_competitors

Apps that the model recommended instead of (or alongside) yours, ranked by appearances in the last N days.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
modelstringchatgptAI model
window_daysnumber14Lookback in days (1–90)

ai_visibility_trend

Daily time series for one model — app-level by default, or scoped to a single intent when intent_id is set.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
modelstringchatgptAI model
window_daysnumber30Trend window in days (1–90)
intent_idstringoptionalScope the series to one intent

ai_visibility_answer

Fetch the verbatim raw model output for a single prompt, plus extracted app mentions in rank order, sentiment, and citations. The proof layer behind every visibility number.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
answer_idstringrequiredAnswer UUID (from ai_visibility_intent_detail.prompts[].latestAnswers)

ai_visibility_settings_get

Per-app config for one country: enabled state, models, scan cadence, last bootstrap/scan timestamps, your tier policy, and your AI Visibility credit budget.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code

ai_visibility_settings_update

Toggle AI Visibility, change which models are scanned, or adjust scan cadence. Tier-capped: number of models cannot exceed tier.maxModels. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
enabledbooleanoptionalEnable/disable scheduled scans
modelsstring[]optionalSubset of chatgpt, claude, gemini, perplexity
scan_cadence_daysnumberoptionalCadence in days (0–30; 0 pauses scheduled scans)
languagestringoptionalISO language code (e.g. en, tr, de)

ai_visibility_intent_create

Manually add a user-intent to track. Source is recorded as user, so it sits alongside LLM-generated intents and is included in every scan. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
languagestringenISO language code
labelstringrequiredUser-facing intent label (≥8 chars), phrased from the user’s POV
descriptionstringoptionalOne-sentence “who has this intent and what they want”

ai_visibility_intent_update

Rename, edit description, or change status (active / paused / archived). Pausing keeps history but stops including the intent in scheduled scans. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
intent_idstringrequiredIntent UUID
labelstringoptionalNew label
descriptionstringoptionalNew description
statusstringoptionalactive, paused, or archived

ai_visibility_intent_archive

Archive an intent (soft-delete). The intent and its prompts stop being scanned, but historical scores stay in ai_visibility_trend. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
intent_idstringrequiredIntent UUID to archive

ai_visibility_prompt_create

Add a manual prompt under an intent. Each prompt is sent verbatim to every enabled AI assistant on the next scan. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
intent_idstringrequiredParent intent UUID
countrystringusISO country code
languagestringenISO language code
textstringrequiredPrompt text (≥15 chars), in the user’s voice
stylestringunbrandedbranded, unbranded, problem, use_case, or comparison

ai_visibility_prompt_update

Edit prompt text, style, or status (active / paused / archived). Pausing keeps history but excludes the prompt from upcoming scans. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
prompt_idstringrequiredPrompt UUID
textstringoptionalNew prompt text
stylestringoptionalbranded, unbranded, problem, use_case, or comparison
statusstringoptionalactive, paused, or archived

ai_visibility_prompt_archive

Archive a prompt (soft-delete). Historical answers remain queryable via ai_visibility_answer. Costs 0 credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
prompt_idstringrequiredPrompt UUID to archive

ai_visibility_bootstrap

Fire-and-forget Trigger.dev task that auto-generates intents and prompts for an app from its App Store metadata, then kicks off an initial scan. Run this once per (app, country) when first enabling AI Visibility. Returns a taskRunId you can poll later. Hard-fails on tier-block or zero AI Visibility credits.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code
languagestringenISO language code

ai_visibility_scan

Fire-and-forget scan: queries every active prompt against every enabled model and updates the app’s metrics. Returns taskRunId, promptsTotal, models[], and estimatedCost (AI Visibility credits). Hard-fails when projected cost exceeds remaining quota — call ai_visibility_settings_get first to check budget.
ParameterTypeDefaultDescription
app_idnumberrequiredNumeric App Store ID
countrystringusISO country code