# App Store Tracker (remote · www.appstoretracker.com)

iOS App Store chart rankings, app details, reviews, keywords and revenue estimates.

- Trust score: 82/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `www.appstoretracker.com`: 82/100 (this document), [markdown](https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp.md), [page](https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp)

## Channel facts

- Endpoint: `https://www.appstoretracker.com/api/mcp`
- Transports: `streamable-http`
- Auth: `required (not validated)`
- Version: `1.0.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 89/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 70/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2527 tokens (~157/item across 16 items; 16 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 67/100
  - Stability observed for 20 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 16 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 17 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 20/100
  - Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28.

## Install

### How do I install the App Store Tracker MCP server?

App Store Tracker is a hosted endpoint at https://www.appstoretracker.com/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-appstoretracker-mcp 'https://www.appstoretracker.com/api/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-appstoretracker-mcp": {
      "url": "https://www.appstoretracker.com/api/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-appstoretracker-mcp": {
      "type": "http",
      "url": "https://www.appstoretracker.com/api/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-appstoretracker-mcp]
url = "https://www.appstoretracker.com/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-appstoretracker-mcp": {
      "type": "remote",
      "url": "https://www.appstoretracker.com/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-appstoretracker-mcp --url 'https://www.appstoretracker.com/api/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-appstoretracker-mcp:
    url: "https://www.appstoretracker.com/api/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-appstoretracker-mcp": {
      "Transport": "http",
      "Url": "https://www.appstoretracker.com/api/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-appstoretracker-mcp -t streamable-http -u 'https://www.appstoretracker.com/api/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-appstoretracker-mcp": {
      "type": "http",
      "url": "https://www.appstoretracker.com/api/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 82, +1)

No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-02 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-30 (score 80, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional regression] Schema quality: 2209 → 2527
- [functional] New tool “list_design_apps”
- [cosmetic] “search_designs” reworded the description of “offset”
- [cosmetic] “search_designs” reworded the description of “pattern”

### 2026-10-28 (score 79, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-26 (score 78, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-24 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-21 (score 76, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional regression] Schema quality: 1881 → 2209
- [functional] New tool “search_designs”

### 2026-10-20 (score 75, −1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “get_app_details” rewrote its description, which is the text the model reads
- [security] Tool “get_categories” rewrote its description, which is the text the model reads
- [security] Tool “get_ranking_history” rewrote its description, which is the text the model reads
- [security] Tool “get_rankings” rewrote its description, which is the text the model reads
- [security] Tool “get_reviews” rewrote its description, which is the text the model reads
- [security] Tool “get_similar_apps” rewrote its description, which is the text the model reads
- [security] Tool “search_apps” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: pass → fail
- [cosmetic] “get_rankings” reworded the description of “chart”

## MCP tools (16)

### `search_apps` (~145 tokens)

Search apps

Find iOS apps by name or keyword, using Apple's iTunes Search API at call time (a text search over Apple's catalogue, not our own data). Returns app_store_id, name, developer, category id, rating, rating count and price for each match. Call this first to turn an app name into the app_store_id (the 'app_id' argument) that every per-app tool needs.

Input parameters:

- `country` (string): Two-letter country code (default: "us")
- `limit` (integer): Maximum number of results (1-50, default: 25)
- `query` (string, required): Search query (e.g., "fitness tracker", "photo editor")

### `get_app_details` (~169 tokens)

Get app details

Get the listing for one iOS app by app_id: name, developer, subtitle, description, version, price, languages, content rating, screenshot URLs, an AI-written short summary, plus the storefront's rating and rating count, its latest recorded chart position (and the one before it), and the latest revenue and downloads estimate. Use this for a single app's current snapshot; use get_ranking_history for positions over time, get_revenue_history for estimates over time and get_timeline for listing changes. Errors with 'App not found' when the id is not in our data. Get the id from search_apps.

Input parameters:

- `app_id` (integer, required): App Store ID (numeric ID from the app URL)
- `country` (string): Two-letter country code (default: "us")

### `get_rankings` (~224 tokens)

Get top chart rankings

Get the App Store top free chart for a country, in chart order with #1 first: the overall chart by default, or one category via category_id (see get_categories). Each app comes with its position, previous position, name, developer, rating and revenue and download estimates, and the response gives the chart day it describes. Only top free is collected; top paid and top grossing are not. Use get_ranking_history for how one app's position moved over time.

Input parameters:

- `category_id` (string): App Store category ID (default: "36", the overall chart; e.g. "6015" for Finance, "6014" for Games). get_categories lists them.
- `chart` (string): Which chart. Only top_free is collected (top paid and top grossing are not, and return no items), so this is the default and the only option.
- `country` (string): Two-letter country code (default: "us")
- `limit` (integer): Maximum number of results (1-200, default: 100)

### `add_to_watchlist` (~119 tokens)

Add app to watchlist

Add an app to your watchlist, and with a keyword_id also track that keyword for the app. A keyword is tracked only for an app on your watchlist. Needs an API key bound to an account.

Input parameters:

- `app_id` (integer, required): App Store ID of the app to watch
- `country_code` (string): Two-letter storefront code (default: "us"); with keyword_id it must match the keyword's storefront
- `keyword_id` (string): Keyword uuid to track for the app (optional; from the keyword tools)

### `get_similar_apps` (~138 tokens)

Get similar apps

Find apps similar in meaning to one app, using embedding similarity over their listings (limited to the given storefront). Each result has rating, rating count, revenue and downloads estimates and a distance (lower means closer). Results are sorted by downloads estimate, biggest first, not by distance. Use it to build a competitor list; use search_apps to look up an app by name instead.

Input parameters:

- `app_id` (integer, required): App Store ID of the reference app
- `country` (string): Two-letter country code (default: "us")
- `limit` (integer): Maximum number of similar apps (1-50, default: 12)

### `get_reviews` (~115 tokens)

Get app reviews

Get the most recent user reviews we have stored for one iOS app, newest first: title, text, star rating (rating), author, app version reviewed and date. Takes no country argument. Use it to read what users say; use get_app_details for the overall rating and rating count. Returns an empty list when we hold no reviews for the app.

Input parameters:

- `app_id` (integer, required): App Store ID of the app
- `limit` (integer): Maximum number of reviews (1-50, default: 10)

### `get_timeline` (~78 tokens)

Get app timeline

Get every recorded change to one iOS app listing: version, name, subtitle, price, screenshots and description, newest first, with the day each change was first seen.

Input parameters:

- `app_id` (integer, required): App Store ID (numeric ID from the app URL)
- `country` (string): Two-letter country code (default: "us")

### `get_categories` (~56 tokens)

List categories

List every App Store category as a category_id and category_name pair (a fixed list, no arguments, no network call). Use it to find the category_id to pass to get_rankings; the overall chart is category_id 36.

### `get_ranking_history` (~153 tokens)

Get ranking history

Get one app's top-free chart position per day in one storefront, as ranking_position and created_at points. The chart is the overall chart when the app has ever ranked there, otherwise the app's own category chart. Look back 1 to 3650 days (default 30). Use it for trends and for explaining a move; use get_rankings for a whole chart on one day. Top paid and top grossing history is not collected.

Input parameters:

- `app_id` (integer, required): App Store ID of the app
- `country` (string): Two-letter country code (default: "us")
- `days` (integer): Number of days of history (1-3650, default: 30)

### `get_revenue_history` (~96 tokens)

Get revenue history

Get the worldwide monthly downloads and revenue estimates for one iOS app, one point per data month (dated its first day). Values are Sensor Tower buckets; downloadsFloor/revenueFloor mark the stored 1,000, which means "< 5K", not an exact figure.

Input parameters:

- `app_id` (integer, required): App Store ID (numeric ID from the app URL)
- `range` (string): How far back to read

### `get_keywords` (~71 tokens)

Get keywords

Get the App Store search terms one iOS app is collected as ranking for, with its position and the day that position was observed.

Input parameters:

- `app_id` (integer, required): App Store ID (numeric ID from the app URL)
- `limit` (integer): Maximum keywords (1-200, default: 50)

### `get_ads` (~100 tokens)

Get ads

Get the ad creatives one iOS app is running, with the ad library each came from and how many that library holds for the app.

Input parameters:

- `app_id` (integer, required): App Store ID (numeric ID from the app URL)
- `limit` (integer): Ads per page (1-100, default: 30)
- `offset` (integer): Ads to skip (default: 0)
- `platform` (string): Narrow to one ad library

### `get_tracked_apps` (~73 tokens)

Get tracked apps

Get the apps this API key's own account is monitoring, newest first. Scoped to the caller: a key bound to another account sees a different set, and a key bound to no account is refused.

Input parameters:

- `limit` (integer): Maximum number of tracked apps (1-1000, default: 200)

### `get_keyword_watchlist` (~92 tokens)

Get keyword watchlist

Get the keywords this API key's own account has asked us to track, with each keyword's next scheduled SERP sweep. Scoped to the caller, same as get_tracked_apps.

Input parameters:

- `app_id` (integer): Only return keywords watched for this App Store ID (default: every app the account watches)
- `limit` (integer): Maximum number of keywords (1-200, default: 100)

### `search_designs` (~337 tokens)

Search app designs

Search real iPhone app screens that App Store Tracker captured itself (the library at /designs) by describing what you want to see, e.g. "paywall with a free trial toggle and the yearly plan preselected", "onboarding that asks for the user's goals", "notification permission pre-prompt". Describe one screen in plain words; narrow with pattern or app_id rather than with negations or keyword lists. Ranked by meaning, with exact on-screen words counting extra, and at most per_app screens per app. Each item gives the app_id for every per-app tool, the flow and screen it belongs to, a short summary, the image URL and the App Store Tracker page to cite. Covers only the apps we captured, not the whole App Store; an empty list means none of those matched.

Input parameters:

- `app_id` (integer): Only this app's screens (App Store ID, from search_apps)
- `limit` (integer): Screens per page (1-20, default: 8)
- `offset` (integer): Screens to skip, for the next page (use next_offset; at most 500, enough for every screen of one app)
- `pattern` (string): Only screens of this category: onboarding, paywall (paywall & subscription), features (the app itself after first run) or other (settings, account, help...). Default: any
- `per_app` (integer): Most screens from one app (1-5, default: 2; ignored with app_id)
- `query` (string, required): What the screen shows, in plain language (at most 300 characters)

### `list_design_apps` (~263 tokens)

List apps with captured designs

List every app whose screens App Store Tracker captured itself (the library at /designs), best US chart position first, with its screen count, the design categories captured (onboarding, paywall, features, other) and its page. Page through the whole library with offset, or narrow it: by category name, by words in the app's name, by a design category, or by app_ids, which keeps the apps of another answer (for example a get_rankings chart) that we have screens for, in that order. Then search_designs with an app_id shows that app's screens.

Input parameters:

- `app_ids` (array): App Store ids from another answer, best first: only these apps, kept in this order
- `category` (string): App Store category name, e.g. "Health & Fitness", "Finance", "Games"; ignored when query names an app
- `limit` (integer): Apps per page (1-100, default: 10)
- `offset` (integer): Apps to skip, for the next page (use next_offset)
- `pattern` (string): Only apps with screens of this category
- `query` (string): Words in the app's or developer's name (at most 200 characters)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp#diagnostics

## Score history

- 2026-11-05: 82
- 2026-11-04: 82
- 2026-11-03: 81
- 2026-11-02: 81
- 2026-11-01: 80
- 2026-10-31: 80
- 2026-10-30: 80
- 2026-10-29: 79
- 2026-10-28: 79
- 2026-10-27: 78
- 2026-10-26: 78
- 2026-10-25: 77
- 2026-10-24: 77
- 2026-10-23: 76
- 2026-10-22: 76
- 2026-10-21: 76
- 2026-10-20: 75
- 2026-10-19: 76
- 2026-10-18: 75
- 2026-10-17: 75
- 2026-10-16: 74
- 2026-10-15: 36
- 2026-10-14: 36
- 2026-10-13: 36
- 2026-10-12: 36
- 2026-10-11: 36
- 2026-10-10: 36
- 2026-10-07: 36
- 2026-10-06: 36

## Common questions

### What is the App Store Tracker MCP server?

App Store Tracker is an MCP server listed in the public MCP registry as com.appstoretracker/mcp. iOS App Store chart rankings, app details, reviews, keywords and revenue estimates. This page covers its hosted endpoint (https://www.appstoretracker.com/api/mcp).

### Is the App Store Tracker MCP server safe to use?

App Store Tracker scores 82 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the App Store Tracker MCP server expose?

App Store Tracker exposes 16 tools: search_apps, get_app_details, get_rankings, add_to_watchlist, get_similar_apps, and 11 more. Their descriptions and schemas cost roughly 2,229 tokens of context every time the server is loaded.

### Does the App Store Tracker MCP server require authentication?

Yes. App Store Tracker asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the App Store Tracker MCP server still maintained?

App Store Tracker is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://www.appstoretracker.com/api/mcp
- Authorisation metadata: https://www.appstoretracker.com/.well-known/oauth-protected-resource/api/mcp
- Repository: https://github.com/top-init/appstoretracker-mcp-registry-listing
- Website: https://www.appstoretracker.com/mcp
- Changelog RSS feed: https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-appstoretracker-mcp/api-mcp
