aso-mcp 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -21
- package/build/cache/sqlite-cache.d.ts.map +1 -1
- package/build/cache/sqlite-cache.js +10 -4
- package/build/cache/sqlite-cache.js.map +1 -1
- package/build/data-sources/app-store-connect.d.ts.map +1 -1
- package/build/data-sources/app-store-connect.js +19 -14
- package/build/data-sources/app-store-connect.js.map +1 -1
- package/build/data-sources/aso-scoring.d.ts.map +1 -1
- package/build/data-sources/aso-scoring.js +57 -35
- package/build/data-sources/aso-scoring.js.map +1 -1
- package/build/data-sources/custom-scoring.d.ts +18 -1
- package/build/data-sources/custom-scoring.d.ts.map +1 -1
- package/build/data-sources/custom-scoring.js +73 -9
- package/build/data-sources/custom-scoring.js.map +1 -1
- package/build/server.js +6 -1
- package/build/server.js.map +1 -1
- package/build/tools/analyze-competitors.d.ts.map +1 -1
- package/build/tools/analyze-competitors.js +27 -7
- package/build/tools/analyze-competitors.js.map +1 -1
- package/build/tools/analyze-reviews.d.ts.map +1 -1
- package/build/tools/analyze-reviews.js +19 -9
- package/build/tools/analyze-reviews.js.map +1 -1
- package/build/tools/connect-get-metadata.js +1 -1
- package/build/tools/connect-update-metadata.js +1 -1
- package/build/tools/discover-keywords.d.ts.map +1 -1
- package/build/tools/discover-keywords.js +43 -16
- package/build/tools/discover-keywords.js.map +1 -1
- package/build/tools/generate-aso-brief.d.ts.map +1 -1
- package/build/tools/generate-aso-brief.js +140 -37
- package/build/tools/generate-aso-brief.js.map +1 -1
- package/build/tools/get-aso-report.js +1 -1
- package/build/tools/localized-keywords.d.ts.map +1 -1
- package/build/tools/localized-keywords.js +3 -1
- package/build/tools/localized-keywords.js.map +1 -1
- package/build/tools/optimize-metadata.js +4 -4
- package/build/tools/optimize-metadata.js.map +1 -1
- package/build/tools/suggest-keywords.d.ts.map +1 -1
- package/build/tools/suggest-keywords.js +3 -1
- package/build/tools/suggest-keywords.js.map +1 -1
- package/build/tools/track-ranking.d.ts.map +1 -1
- package/build/tools/track-ranking.js +7 -5
- package/build/tools/track-ranking.js.map +1 -1
- package/build/types/index.d.ts +9 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/utils/formatters.d.ts +12 -0
- package/build/utils/formatters.d.ts.map +1 -1
- package/build/utils/formatters.js +21 -1
- package/build/utils/formatters.js.map +1 -1
- package/build/utils/localization.d.ts.map +1 -1
- package/build/utils/localization.js +10 -2
- package/build/utils/localization.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://nodejs.org)
|
|
6
6
|
[](https://modelcontextprotocol.io)
|
|
7
7
|
|
|
8
|
-
**App Store Optimization toolkit for AI assistants.** Keyword research, competitor analysis, review sentiment, metadata optimization
|
|
8
|
+
**App Store Optimization toolkit for AI assistants.** Keyword research, competitor analysis, review sentiment, and metadata optimization. All through the Model Context Protocol.
|
|
9
9
|
|
|
10
10
|
> **No API key required.** Works out of the box with real App Store data. Supports 155+ countries.
|
|
11
11
|
|
|
@@ -23,13 +23,13 @@ npm install -g aso-mcp
|
|
|
23
23
|
|
|
24
24
|
## Why aso-mcp?
|
|
25
25
|
|
|
26
|
-
- **
|
|
27
|
-
- **Real App Store data
|
|
28
|
-
- **Custom scoring engine
|
|
29
|
-
- **No API key needed
|
|
30
|
-
- **Smart caching
|
|
31
|
-
- **Rate limiting
|
|
32
|
-
- **Multi-country
|
|
26
|
+
- **19 specialized ASO tools**: from keyword discovery to App Store Connect metadata management
|
|
27
|
+
- **Real App Store data**: live search results, ratings, reviews, and suggestions
|
|
28
|
+
- **Custom scoring engine**: proprietary algorithm independent of Apple Search Ads API issues
|
|
29
|
+
- **No API key needed**: zero configuration, install and go
|
|
30
|
+
- **Smart caching**: SQLite-backed cache for fast repeated queries
|
|
31
|
+
- **Rate limiting**: built-in request management to avoid Apple throttling
|
|
32
|
+
- **Multi-country**: analyze keywords across 155+ App Store markets
|
|
33
33
|
|
|
34
34
|
## Integration
|
|
35
35
|
|
|
@@ -82,7 +82,7 @@ Any MCP-compatible client (ChatGPT, Cursor, Windsurf, etc.) can connect via stdi
|
|
|
82
82
|
|
|
83
83
|
## Tools
|
|
84
84
|
|
|
85
|
-
### Phase 1
|
|
85
|
+
### Phase 1: Keyword Research
|
|
86
86
|
|
|
87
87
|
| Tool | Description |
|
|
88
88
|
|------|-------------|
|
|
@@ -90,7 +90,7 @@ Any MCP-compatible client (ChatGPT, Cursor, Windsurf, etc.) can connect via stdi
|
|
|
90
90
|
| `suggest_keywords` | Keyword suggestions by app ID (category, similar, competition strategies) |
|
|
91
91
|
| `get_app_details` | Full ASO info for an app + metadata analysis |
|
|
92
92
|
|
|
93
|
-
### Phase 2
|
|
93
|
+
### Phase 2: Competitor Analysis & Optimization
|
|
94
94
|
|
|
95
95
|
| Tool | Description |
|
|
96
96
|
|------|-------------|
|
|
@@ -100,21 +100,21 @@ Any MCP-compatible client (ChatGPT, Cursor, Windsurf, etc.) can connect via stdi
|
|
|
100
100
|
| `track_ranking` | App's ranking position across multiple keywords |
|
|
101
101
|
| `keyword_gap` | Keyword difference between two apps + opportunity analysis |
|
|
102
102
|
|
|
103
|
-
### Phase 3
|
|
103
|
+
### Phase 3: Localization & Reporting
|
|
104
104
|
|
|
105
105
|
| Tool | Description |
|
|
106
106
|
|------|-------------|
|
|
107
107
|
| `localized_keywords` | Keyword performance comparison across different countries |
|
|
108
108
|
| `get_aso_report` | Comprehensive ASO report: scores + competitors + reviews in one call |
|
|
109
109
|
|
|
110
|
-
### Phase 4
|
|
110
|
+
### Phase 4: ASO Generation
|
|
111
111
|
|
|
112
112
|
| Tool | Description |
|
|
113
113
|
|------|-------------|
|
|
114
114
|
| `discover_keywords` | Keyword discovery from scratch for a new app |
|
|
115
115
|
| `generate_aso_brief` | Complete ASO brief with keyword pool, competitor patterns, and metadata suggestions |
|
|
116
116
|
|
|
117
|
-
### Phase 5
|
|
117
|
+
### Phase 5: App Store Connect
|
|
118
118
|
|
|
119
119
|
Directly read and update your app's metadata on App Store Connect without leaving the AI assistant.
|
|
120
120
|
|
|
@@ -124,6 +124,7 @@ Directly read and update your app's metadata on App Store Connect without leavin
|
|
|
124
124
|
| `connect_get_app` | Find app by bundle ID, get ASC ID + version status |
|
|
125
125
|
| `connect_get_metadata` | Read current metadata (title, subtitle, keywords, description) for a locale |
|
|
126
126
|
| `connect_update_metadata` | Update metadata with character limit validation + before/after diff |
|
|
127
|
+
| `connect_batch_update_metadata` | Batch update metadata for multiple locales in one call (max 40 locales) |
|
|
127
128
|
| `connect_list_localizations` | List all locales and metadata completeness status |
|
|
128
129
|
|
|
129
130
|
<details>
|
|
@@ -131,14 +132,14 @@ Directly read and update your app's metadata on App Store Connect without leavin
|
|
|
131
132
|
|
|
132
133
|
Requires an [App Store Connect API Key](https://developer.apple.com/documentation/appstoreconnectapi/creating_api_keys_for_app_store_connect_api):
|
|
133
134
|
|
|
134
|
-
**Option A
|
|
135
|
+
**Option A: Environment variables**
|
|
135
136
|
```bash
|
|
136
137
|
export ASC_ISSUER_ID="your-issuer-id"
|
|
137
138
|
export ASC_KEY_ID="your-key-id"
|
|
138
139
|
export ASC_PRIVATE_KEY_PATH="/path/to/AuthKey_XXXXX.p8"
|
|
139
140
|
```
|
|
140
141
|
|
|
141
|
-
**Option B
|
|
142
|
+
**Option B: Use the setup tool**
|
|
142
143
|
```
|
|
143
144
|
"Set up App Store Connect with issuer ID xxx, key ID yyy, and key at /path/to/AuthKey.p8"
|
|
144
145
|
```
|
|
@@ -190,7 +191,7 @@ The server calculates its own scores, independent of Apple Search Ads API:
|
|
|
190
191
|
| **Opportunity** | High traffic + low difficulty = high opportunity |
|
|
191
192
|
| **Overall** | Weighted combination of all scores (0-10) |
|
|
192
193
|
|
|
193
|
-
When the `aso` npm package fails to reach Apple (503 errors), the server automatically falls back to custom scoring using search result analysis
|
|
194
|
+
When the `aso` npm package fails to reach Apple (503 errors), the server automatically falls back to custom scoring using search result analysis. Scores are always available.
|
|
194
195
|
|
|
195
196
|
## Development
|
|
196
197
|
|
|
@@ -212,11 +213,11 @@ npx tsx test-generation.ts # ASO generation tests (8)
|
|
|
212
213
|
## Tech Stack
|
|
213
214
|
|
|
214
215
|
- **TypeScript** + **Node.js 22+**
|
|
215
|
-
- **[MCP SDK](https://modelcontextprotocol.io)
|
|
216
|
-
- **[app-store-scraper](https://www.npmjs.com/package/app-store-scraper)
|
|
217
|
-
- **[aso](https://www.npmjs.com/package/aso)
|
|
218
|
-
- **[better-sqlite3](https://www.npmjs.com/package/better-sqlite3)
|
|
219
|
-
- **[Zod](https://www.npmjs.com/package/zod)
|
|
216
|
+
- **[MCP SDK](https://modelcontextprotocol.io)**: Model Context Protocol
|
|
217
|
+
- **[app-store-scraper](https://www.npmjs.com/package/app-store-scraper)**: App Store data
|
|
218
|
+
- **[aso](https://www.npmjs.com/package/aso)**: ASO scoring with automatic fallback
|
|
219
|
+
- **[better-sqlite3](https://www.npmjs.com/package/better-sqlite3)**: Cache layer
|
|
220
|
+
- **[Zod](https://www.npmjs.com/package/zod)**: Schema validation
|
|
220
221
|
|
|
221
222
|
## License
|
|
222
223
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-cache.d.ts","sourceRoot":"","sources":["../../src/cache/sqlite-cache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sqlite-cache.d.ts","sourceRoot":"","sources":["../../src/cache/sqlite-cache.ts"],"names":[],"mappings":"AAWA,wBAAgB,SAAS,IAAI,IAAI,CAyBhC;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQvD;AAED,wBAAgB,QAAQ,CACtB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,UAAU,GAAE,MAAa,GACxB,IAAI,CAiBN;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,UAAU,IAAI,IAAI,CAEjC;AAED,wBAAgB,aAAa,IAAI;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAgBA"}
|
|
@@ -3,7 +3,9 @@ import path from "path";
|
|
|
3
3
|
import os from "os";
|
|
4
4
|
import fs from "fs";
|
|
5
5
|
const MAX_CACHE_ENTRIES = 5000;
|
|
6
|
+
const SIZE_CHECK_INTERVAL = 100;
|
|
6
7
|
let db;
|
|
8
|
+
let writesSinceLastCheck = 0;
|
|
7
9
|
export function initCache() {
|
|
8
10
|
const dataDir = path.join(os.homedir(), ".aso-mcp");
|
|
9
11
|
if (!fs.existsSync(dataDir)) {
|
|
@@ -34,10 +36,14 @@ export function getFromCache(key) {
|
|
|
34
36
|
export function setCache(key, value, ttlSeconds = 3600) {
|
|
35
37
|
const expiresAt = Math.floor(Date.now() / 1000) + ttlSeconds;
|
|
36
38
|
db.prepare("INSERT OR REPLACE INTO cache (key, value, expires_at) VALUES (?, ?, ?)").run(key, value, expiresAt);
|
|
37
|
-
//
|
|
38
|
-
|
|
39
|
-
if (
|
|
40
|
-
|
|
39
|
+
// Throttle: only check size every SIZE_CHECK_INTERVAL writes (avoids O(N) COUNT per write).
|
|
40
|
+
writesSinceLastCheck++;
|
|
41
|
+
if (writesSinceLastCheck >= SIZE_CHECK_INTERVAL) {
|
|
42
|
+
writesSinceLastCheck = 0;
|
|
43
|
+
const count = db.prepare("SELECT COUNT(*) as count FROM cache").get().count;
|
|
44
|
+
if (count > MAX_CACHE_ENTRIES) {
|
|
45
|
+
enforceSizeLimit();
|
|
46
|
+
}
|
|
41
47
|
}
|
|
42
48
|
}
|
|
43
49
|
export function deleteCache(keyPattern) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-cache.js","sourceRoot":"","sources":["../../src/cache/sqlite-cache.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,iBAAiB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite-cache.js","sourceRoot":"","sources":["../../src/cache/sqlite-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-store-connect.d.ts","sourceRoot":"","sources":["../../src/data-sources/app-store-connect.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAS3B,wBAAgB,UAAU,IAAI,aAAa,GAAG,IAAI,CAqBjD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAKtD;AAwFD,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,MAAa,GACpB,OAAO,CAAC,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"app-store-connect.d.ts","sourceRoot":"","sources":["../../src/data-sources/app-store-connect.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAS3B,wBAAgB,UAAU,IAAI,aAAa,GAAG,IAAI,CAqBjD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAKtD;AAwFD,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,MAAa,GACpB,OAAO,CAAC,mBAAmB,CAAC,CA8F9B;AA2HD,wBAAsB,cAAc,CAClC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,YAAO,EACrB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAiGtE;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,0BAA0B,EAAE,CAAC,CA8EvC"}
|
|
@@ -88,7 +88,7 @@ async function apiRequest(config, endpoint, method = "GET", body) {
|
|
|
88
88
|
try {
|
|
89
89
|
const parsed = JSON.parse(errorBody);
|
|
90
90
|
if (parsed.errors?.[0]?.detail) {
|
|
91
|
-
errorMsg +=
|
|
91
|
+
errorMsg += `: ${parsed.errors[0].detail}`;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
catch {
|
|
@@ -106,7 +106,7 @@ export async function validateCredentials(config) {
|
|
|
106
106
|
if (!fs.existsSync(config.privateKeyPath)) {
|
|
107
107
|
throw new Error(`Private key file not found: ${config.privateKeyPath}`);
|
|
108
108
|
}
|
|
109
|
-
// Test API call
|
|
109
|
+
// Test API call: list apps (limit 1)
|
|
110
110
|
await apiRequest(config, "/v1/apps?limit=1");
|
|
111
111
|
return true;
|
|
112
112
|
}
|
|
@@ -129,7 +129,7 @@ export async function getApp(config, bundleId) {
|
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
catch {
|
|
132
|
-
// No editable version
|
|
132
|
+
// No editable version. Not a fatal error.
|
|
133
133
|
}
|
|
134
134
|
return {
|
|
135
135
|
id: app.id,
|
|
@@ -146,13 +146,14 @@ export async function getMetadata(config, appId, locale = "tr") {
|
|
|
146
146
|
let name = null;
|
|
147
147
|
let subtitle = null;
|
|
148
148
|
let appInfoLocalizationId = null;
|
|
149
|
+
let resolvedAppInfoId = null;
|
|
149
150
|
try {
|
|
150
151
|
const appInfosResponse = await apiRequest(config, `/v1/apps/${appId}/appInfos`);
|
|
151
152
|
const allInfos = appInfosResponse.data ?? [];
|
|
152
153
|
const editableInfo = allInfos.find((info) => info.attributes?.appStoreState !== "READY_FOR_SALE");
|
|
153
|
-
|
|
154
|
-
if (
|
|
155
|
-
const locResponse = await apiRequest(config, `/v1/appInfos/${
|
|
154
|
+
resolvedAppInfoId = editableInfo?.id ?? allInfos[0]?.id ?? null;
|
|
155
|
+
if (resolvedAppInfoId) {
|
|
156
|
+
const locResponse = await apiRequest(config, `/v1/appInfos/${resolvedAppInfoId}/appInfoLocalizations?filter[locale]=${resolvedLocale}`);
|
|
156
157
|
const loc = locResponse.data?.[0];
|
|
157
158
|
if (loc) {
|
|
158
159
|
appInfoLocalizationId = loc.id;
|
|
@@ -172,12 +173,12 @@ export async function getMetadata(config, appId, locale = "tr") {
|
|
|
172
173
|
let supportUrl = null;
|
|
173
174
|
let marketingUrl = null;
|
|
174
175
|
let versionLocalizationId = null;
|
|
176
|
+
let resolvedVersionId = null;
|
|
175
177
|
try {
|
|
176
|
-
// Get the editable version
|
|
177
178
|
const versionsResponse = await apiRequest(config, `/v1/apps/${appId}/appStoreVersions?filter[appStoreState]=PREPARE_FOR_SUBMISSION&limit=1`);
|
|
178
|
-
|
|
179
|
-
if (
|
|
180
|
-
const verLocResponse = await apiRequest(config, `/v1/appStoreVersions/${
|
|
179
|
+
resolvedVersionId = versionsResponse.data?.[0]?.id ?? null;
|
|
180
|
+
if (resolvedVersionId) {
|
|
181
|
+
const verLocResponse = await apiRequest(config, `/v1/appStoreVersions/${resolvedVersionId}/appStoreVersionLocalizations?filter[locale]=${resolvedLocale}`);
|
|
181
182
|
const verLoc = verLocResponse.data?.[0];
|
|
182
183
|
if (verLoc) {
|
|
183
184
|
versionLocalizationId = verLoc.id;
|
|
@@ -211,6 +212,8 @@ export async function getMetadata(config, appId, locale = "tr") {
|
|
|
211
212
|
marketingUrl,
|
|
212
213
|
appInfoLocalizationId,
|
|
213
214
|
versionLocalizationId,
|
|
215
|
+
appInfoId: resolvedAppInfoId,
|
|
216
|
+
versionId: resolvedVersionId,
|
|
214
217
|
};
|
|
215
218
|
}
|
|
216
219
|
// ─── Helper: Get App Info ID ───
|
|
@@ -315,8 +318,10 @@ export async function updateMetadata(config, appId, locale = "tr", updates) {
|
|
|
315
318
|
});
|
|
316
319
|
}
|
|
317
320
|
else {
|
|
318
|
-
// CREATE new app info localization
|
|
319
|
-
|
|
321
|
+
// CREATE new app info localization. 'name' is required by the API.
|
|
322
|
+
// Reuse the appInfoId getMetadata already resolved (saves one API call
|
|
323
|
+
// per locale, multiplied across batch updates).
|
|
324
|
+
const appInfoId = before.appInfoId ?? (await getAppInfoId(config, appId));
|
|
320
325
|
if (!appInfoId) {
|
|
321
326
|
throw new Error(`Could not find appInfo for app "${appId}". Cannot create localization.`);
|
|
322
327
|
}
|
|
@@ -353,8 +358,8 @@ export async function updateMetadata(config, appId, locale = "tr", updates) {
|
|
|
353
358
|
});
|
|
354
359
|
}
|
|
355
360
|
else {
|
|
356
|
-
// CREATE new version localization
|
|
357
|
-
const versionId = await getEditableVersionId(config, appId);
|
|
361
|
+
// CREATE new version localization. Reuse versionId from getMetadata.
|
|
362
|
+
const versionId = before.versionId ?? (await getEditableVersionId(config, appId));
|
|
358
363
|
if (!versionId) {
|
|
359
364
|
throw new Error(`No PREPARE_FOR_SUBMISSION version found for app "${appId}". ` +
|
|
360
365
|
`Create a new version in App Store Connect first.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-store-connect.js","sourceRoot":"","sources":["../../src/data-sources/app-store-connect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app-store-connect.js","sourceRoot":"","sources":["../../src/data-sources/app-store-connect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aso-scoring.d.ts","sourceRoot":"","sources":["../../src/data-sources/aso-scoring.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aso-scoring.d.ts","sourceRoot":"","sources":["../../src/data-sources/aso-scoring.ts"],"names":[],"mappings":"AAgFA,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BlD;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,aAAa,EAChD,OAAO,GAAE,MAAa,EACtB,GAAG,GAAE,MAAW,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,CA8BnB;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE,MAAa,EACtB,WAAW,GAAE,MAAU,GACtB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAmBrE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { withRateLimit } from "../utils/rate-limiter.js";
|
|
2
2
|
import { RATE_LIMITS } from "../utils/constants.js";
|
|
3
|
-
import { searchApps, getSuggestions } from "./app-store.js";
|
|
4
|
-
import { calculateCompetitiveScore } from "./custom-scoring.js";
|
|
3
|
+
import { searchApps, getSuggestions, getAppDetails } from "./app-store.js";
|
|
4
|
+
import { calculateCompetitiveScore, extractTitleKeywords, } from "./custom-scoring.js";
|
|
5
5
|
const RL = RATE_LIMITS["aso-scores"];
|
|
6
6
|
let asoModule = null;
|
|
7
7
|
let asoAvailable = true;
|
|
@@ -20,19 +20,28 @@ async function getClient(country = "tr") {
|
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
22
|
* If the aso package returns 503, calculate our own scores from search results.
|
|
23
|
-
* Traffic
|
|
24
|
-
*
|
|
23
|
+
* Traffic uses three independent signals so a single noisy data point
|
|
24
|
+
* (e.g. one blockbuster app) cannot dominate the estimate:
|
|
25
|
+
* 1) Result count: how many apps Apple returns for the term (popular = many)
|
|
26
|
+
* 2) Top result strength: blockbuster apps cluster around high-traffic terms
|
|
27
|
+
* 3) Average review depth: many established apps signals broad interest
|
|
28
|
+
* Difficulty is calculated from rating/review strength of top-ranking apps.
|
|
25
29
|
*/
|
|
26
30
|
async function fallbackScores(keyword, country) {
|
|
27
31
|
const results = await searchApps(keyword, country, 20);
|
|
28
32
|
if (results.length === 0) {
|
|
29
33
|
return { traffic: 1, difficulty: 1 };
|
|
30
34
|
}
|
|
31
|
-
|
|
35
|
+
const top1Reviews = results[0]?.reviews || 0;
|
|
32
36
|
const avgReviews = results.reduce((s, a) => s + (a.reviews || 0), 0) /
|
|
33
37
|
results.length;
|
|
34
|
-
|
|
35
|
-
|
|
38
|
+
// Signal 1: result count (0-3). Apple caps responses around 20+ for popular terms.
|
|
39
|
+
const resultCountSignal = Math.min(3, results.length / 6.67);
|
|
40
|
+
// Signal 2: top result review depth (0-4). 1M+ review apps mark high-traffic terms.
|
|
41
|
+
const top1Signal = Math.min(4, Math.log10(Math.max(1, top1Reviews)) / 1.5);
|
|
42
|
+
// Signal 3: average review depth across results (0-3).
|
|
43
|
+
const avgSignal = Math.min(3, Math.log10(Math.max(1, avgReviews)) / 1.8);
|
|
44
|
+
const traffic = Math.min(10, Math.max(1, resultCountSignal + top1Signal + avgSignal));
|
|
36
45
|
const difficulty = calculateCompetitiveScore(results.slice(0, 10).map((a) => ({
|
|
37
46
|
rating: a.score || 0,
|
|
38
47
|
reviews: a.reviews || 0,
|
|
@@ -52,22 +61,23 @@ export async function getScores(keyword, country = "tr") {
|
|
|
52
61
|
// Retry: enough time has passed
|
|
53
62
|
asoAvailable = true;
|
|
54
63
|
}
|
|
55
|
-
|
|
56
|
-
|
|
64
|
+
// Let withRateLimit's exponential backoff retry handle transient 503/429
|
|
65
|
+
// before we give up and switch to fallback for the full retry interval.
|
|
66
|
+
try {
|
|
67
|
+
return await withRateLimit("aso-scores", RL, async () => {
|
|
57
68
|
const client = await getClient(country);
|
|
58
69
|
const result = await client.scores(keyword);
|
|
59
70
|
return {
|
|
60
71
|
traffic: result.traffic ?? 0,
|
|
61
72
|
difficulty: result.difficulty ?? 0,
|
|
62
73
|
};
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
});
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
asoAvailable = false;
|
|
78
|
+
asoFailedAt = Date.now();
|
|
79
|
+
return fallbackScores(keyword, country);
|
|
80
|
+
}
|
|
71
81
|
}
|
|
72
82
|
export async function suggestKeywords(appId, strategy, country = "tr", num = 20) {
|
|
73
83
|
// If aso package unavailable, check if enough time passed to retry
|
|
@@ -77,8 +87,8 @@ export async function suggestKeywords(appId, strategy, country = "tr", num = 20)
|
|
|
77
87
|
}
|
|
78
88
|
asoAvailable = true;
|
|
79
89
|
}
|
|
80
|
-
|
|
81
|
-
|
|
90
|
+
try {
|
|
91
|
+
return await withRateLimit("aso-scores", RL, async () => {
|
|
82
92
|
const client = await getClient(country);
|
|
83
93
|
const strategyMap = {
|
|
84
94
|
category: client.CATEGORY,
|
|
@@ -90,13 +100,13 @@ export async function suggestKeywords(appId, strategy, country = "tr", num = 20)
|
|
|
90
100
|
appId,
|
|
91
101
|
num,
|
|
92
102
|
});
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
asoAvailable = false;
|
|
107
|
+
asoFailedAt = Date.now();
|
|
108
|
+
return fallbackSuggest(appId, strategy, country, num);
|
|
109
|
+
}
|
|
100
110
|
}
|
|
101
111
|
/**
|
|
102
112
|
* Score multiple keywords in parallel with a concurrency limit.
|
|
@@ -121,19 +131,31 @@ export async function batchGetScores(keywords, country = "tr", concurrency = 5)
|
|
|
121
131
|
}
|
|
122
132
|
/**
|
|
123
133
|
* When the aso package is unavailable, generate keyword suggestions via app-store-scraper.
|
|
124
|
-
*
|
|
134
|
+
* Fetches the app's actual title and seeds App Store autocomplete with each
|
|
135
|
+
* meaningful title keyword. Bundle IDs ('com.spotify.client') alone are
|
|
136
|
+
* useless to autocomplete, so we always resolve the app first.
|
|
125
137
|
*/
|
|
126
138
|
async function fallbackSuggest(appId, _strategy, country, num) {
|
|
127
139
|
try {
|
|
128
|
-
//
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
|
|
140
|
+
// Resolve the app to get its real title (works for both bundle ID and numeric ID)
|
|
141
|
+
const app = await getAppDetails(appId, country);
|
|
142
|
+
const titleKeywords = extractTitleKeywords(app.title || "");
|
|
143
|
+
if (titleKeywords.length === 0) {
|
|
144
|
+
return [];
|
|
145
|
+
}
|
|
146
|
+
const allSuggestions = new Set();
|
|
147
|
+
// Seed autocomplete with the full title (catches multi-word brand suggestions)
|
|
148
|
+
try {
|
|
149
|
+
const titleSuggestions = await getSuggestions(app.title);
|
|
150
|
+
titleSuggestions.forEach((s) => allSuggestions.add(s));
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
// continue
|
|
132
154
|
}
|
|
133
|
-
//
|
|
134
|
-
const
|
|
135
|
-
|
|
136
|
-
|
|
155
|
+
// Then seed with each meaningful title keyword
|
|
156
|
+
for (const term of titleKeywords.slice(0, 3)) {
|
|
157
|
+
if (allSuggestions.size >= num)
|
|
158
|
+
break;
|
|
137
159
|
try {
|
|
138
160
|
const more = await getSuggestions(term);
|
|
139
161
|
more.forEach((s) => allSuggestions.add(s));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aso-scoring.js","sourceRoot":"","sources":["../../src/data-sources/aso-scoring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"aso-scoring.js","sourceRoot":"","sources":["../../src/data-sources/aso-scoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,9 +44,26 @@ export declare function calculateOverallScore(params: {
|
|
|
44
44
|
competitiveScore: number;
|
|
45
45
|
opportunityScore: number;
|
|
46
46
|
}): number;
|
|
47
|
+
/**
|
|
48
|
+
* Canonicalize a keyword to its singular/root form so plural variants do
|
|
49
|
+
* not double-count in keyword pools. App Store search treats these the same:
|
|
50
|
+
* indexing "trackers" already covers "tracker" and vice versa, so suggesting
|
|
51
|
+
* both wastes one of the precious 100 keyword-field characters.
|
|
52
|
+
*
|
|
53
|
+
* Conservative rules only (false positives like "us" → "u" must be avoided):
|
|
54
|
+
* English: -ies → -y, -ches/-shes/-xes/-ses → strip -es, plain -s with safe stem
|
|
55
|
+
* Turkish: -lar / -ler suffix removal
|
|
56
|
+
*/
|
|
57
|
+
export declare function canonicalKeyword(kw: string): string;
|
|
58
|
+
/**
|
|
59
|
+
* Deduplicate keywords by their canonical form, preserving the first
|
|
60
|
+
* occurrence's original surface (so "Tracker" wins over "trackers" if it
|
|
61
|
+
* appeared first in the input order).
|
|
62
|
+
*/
|
|
63
|
+
export declare function dedupeKeywords(keywords: string[]): string[];
|
|
47
64
|
/**
|
|
48
65
|
* Extracts keywords from an app's title.
|
|
49
|
-
* Filters out stop words.
|
|
66
|
+
* Filters out stop words and dedupes plural variants.
|
|
50
67
|
*/
|
|
51
68
|
export declare function extractTitleKeywords(title: string): string[];
|
|
52
69
|
//# sourceMappingURL=custom-scoring.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-scoring.d.ts","sourceRoot":"","sources":["../../src/data-sources/custom-scoring.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,WAAW;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG,MAAM,CAiBT;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf,EAAE,GAAG,MAAM,CAoBX;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,MAAM,CAKR;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GAAG,MAAM,CAST;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"custom-scoring.d.ts","sourceRoot":"","sources":["../../src/data-sources/custom-scoring.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,WAAW;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG,MAAM,CAiBT;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf,EAAE,GAAG,MAAM,CAoBX;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,MAAM,CAKR;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GAAG,MAAM,CAST;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAgCnD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAS3D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA4B5D"}
|