1. Conduid
  2. Search
  3. App Store Optimization CLI
MCP server · Search

App Store Optimization CLI

Research ASO keywords and analyze competitors using a CLI and dashboard

44Fair

Scored 5 months ago · breakdown

About App Store Optimization CLI

App Store Optimization CLI is an MCP server in the Search category: research ASO keywords and analyze competitors using a CLI and dashboard.

Install

From source
git clone https://github.com/semihcihan/App-Store-Optimization-CLI

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about App Store Optimization CLI

Powered by Claude · Grounded in docs

I know everything about App Store Optimization CLI. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Research ASO keywords, inspect competition, and manage results from one local-first CLI.

What Is It?

  • Fast, free keyword research and visibility tracking
  • Keyword scoring with popularity + difficulty + brand classification in one command
  • Local ASO dashboard for reviewing keyword/app data
  • MCP tool (aso_evaluate_keywords) for agent workflows and automated keyword research

The dashboard keywords shown above were discovered and added automatically by an agent using the MCP tool.

Install

npm install -g aso-cli

Note: requires Node.js >=18.14.1.

Apple Search Ads Setup

ASO commands require Apple Search Ads setup.

Prerequisites

  • App Store Connect account
  • App ID of a published app you can access
  • No campaign creation required
  • No billing information required

Setup

  1. Create/sign in: https://searchads.apple.com
    • If your country is not available during signup, select United States.
  2. Open Apple Search Ads Advanced: https://searchads.apple.com/advanced
  3. Click your account name in the top-left corner.
  4. Under Campaign Groups, click Settings.
  5. Click Link Accounts.
  6. Select your App Store Connect account and save.
    • If this is your first time using Apple Search Ads, you will usually have only one campaign group.
  7. Copy an App ID from your App Store URL (number after id) Example App Store URL:
    https://apps.apple.com/us/app/example-app/id123456789
    
    App ID is 123456789 in this example.
  8. Run aso auth and complete Apple ID + password + 2FA in terminal

Notes:

Quick Start

# Authenticate once
aso auth

# Fetch keyword metrics
aso keywords "meditation,sleep sounds,white noise"

# Open dashboard
aso

Command Reference

Command What it does
aso Starts the local dashboard (default command)
aso keywords "k1,k2,k3" Fetches keyword popularity/difficulty and prints JSON
aso keywords "k1,k2" --stdout Machine-readable mode for automation/agents
aso auth Reauthenticates Apple Search Ads session
aso reset-credentials Clears saved credentials/cookies
aso --primary-app-id <id> Sets primary App ID used for popularity requests

Supported flags

  • --country <code>: currently US only
  • --primary-app-id <id>: saved locally for future runs
  • --min-popularity <number>: filters out low-popularity keywords before enrichment
  • --max-difficulty <number>: filters out high-difficulty keywords after enrichment
  • --app-id <id>: associates keywords to this local app id (default: research)
  • --no-associate: skips app-keyword association writes for the current aso keywords run

Association behavior for aso keywords:

  • Association writes happen only after a successful command return.
  • Without filters, requested keywords are associated.
  • With --min-popularity and/or --max-difficulty, only accepted items are associated.
  • With --no-associate, no association write occurs.

Output Example (aso keywords "meditation")

{
  "items": [
    {
      "keyword": "meditation",
      "popularity": 45,
      "difficultyScore": 62,
      "minDifficultyScore": 38,
      "isBrandKeyword": false
    }
  ],
  "failedKeywords": [],
  "filteredOut": []
}

--stdout Contract

aso keywords "<comma-separated-keywords>" --stdout is the machine-readable contract.

  • Success: exit code 0, stdout contains exactly one JSON object with:
    • items
    • failedKeywords
    • filteredOut
  • Failure: exit code != 0, stdout contains exactly one JSON object with:
    • error.code (CLI_VALIDATION_ERROR or CLI_RUNTIME_ERROR)
    • error.message
    • optional error.help
  • In --stdout mode, CLI logs and prompts are kept off stdout so parsers can read one JSON payload safely.

Failure example:

{
  "error": {
    "code": "CLI_RUNTIME_ERROR",
    "message": "Primary App ID is missing. Run 'aso --primary-app-id <id>' or run 'aso' in a terminal to set it, then retry this command with --stdout."
  }
}

MCP

This package also installs aso-mcp with tool: aso_evaluate_keywords.

aso_evaluate_keywords runs aso keywords ... --stdout with default filters:

  • minPopularity = 6 (floor: 6)
  • maxDifficulty = 70

MCP returns only accepted rows (keyword, popularity, difficulty, minDifficultyScore, isBrandKeyword).

Example MCP config:

{
  "mcpServers": {
    "aso": {
      "command": "aso-mcp"
    }
  }
}

Current Scope

  • Storefront support: US
  • Multi-storefront support is planned

Project Docs

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About App Store Optimization CLI

How do I install App Store Optimization CLI?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is App Store Optimization CLI safe to use with an AI agent?

Its trust score is 44 out of 100 (fair). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is App Store Optimization CLI still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.