appworth について
appworthはApp Dexのクライアントで、iOS App Storeの個別アプリについて月間収益とダウンロード数を推定します。各結果に信頼度ラベルが付き、検証済みデータとモデル推定を区別できます。
主な機能
- 01名前またはストア IDで検索
- 02月間収益とダウンロード数の推定
- 03推定値の信頼度表示
- 04アプリ名からストア IDを特定
活用シーン
- 01iOSアプリの収益推定を確認する
- 02推定ダウンロード数の範囲を比較する
- 03数値の信頼度を判断する
- 04アプリ名からストア IDを探す
MCP 対応
MCP サーバーとして`estimate_app`と`search_apps`を提供し、MCPクライアントから個別アプリの推定値取得やストア IDの特定を行えます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| app | string | はい | アプリケーション識別子または名前。 |
詳細
appworth
このアプリの価値はいくらでしょうか? appworth は App Dex サービス用の小さなクライアントです。アプリ名または数値の App Store ID を指定すると、iOS App Store の収益とダウンロード数を推定し、モデルによる数値を測定済みの事実として提示するのではなく、各数値の信頼度をラベルで示します。
推定値には信頼度ラベルが付いて返されます。独自の表現で説明すると、verified の数値はモデルによる推定ではなく、実際のデータレイヤーから報告されたものです。calibrated の数値はモデルによる推定ですが、同じ収益クラスのアプリに関する検証済みパネルデータを使って調整されています。modeled の数値は限られた公開シグナルに基づいているため、方向性を示すものとして捉えてください。範囲が重要であり、その中の単一の値が重要なのではありません。特に明記されていない限り、数値はグロス(ストア手数料控除前)で、毎晩再計算され、iOS App Store のみを対象としています。設計上、検索は単一アプリごとに行い、一括エクスポートには対応していません。
レスポンスはサービスが返した内容そのままで返されます。途中でトリミング、名前の変更、要約は行われません。たとえば、Duolingo に対する上流からの応答は次のようになります。
app: Duolingo: Language Lessons
category: Education
monthly_revenue: $48.0M – $48.0M
monthly_downloads: 5.0M – 5.0M
confidence: calibrated
report_url: https://app-dex.com/a/duolingo-language-lessons-570060128
設定
API キーは省略可能です。 元のプロジェクトの設定表では APPDEX_API_KEY を「Required」としていますが、インストール手順の説明では実際の動作が明記されています。ここでは実際の動作を優先します。キーがなくてもサーバーは動作し、1 日あたり 2 件のリクエストが可能なため、まず試すことができます。無料のキーを使うと、1 日あたり 5 件のリクエストが可能になります。キーを設定すると、すべてのリクエストに Authorization: Bearer <key> として送信されます。未設定の場合、リクエストに Authorization ヘッダーは付与されず、それによってエラーになることもありません。
| Env var | Default | Notes |
|---|---|---|
APPDEX_API_KEY | — | 省略可能(上記を参照)。設定すると Bearer トークンとして送信されます。 |
APPDEX_API_URL | https://app-dex.com | セルフホスト環境/ステージング環境の場合にのみ上書きします。 |
APPDEX_TIMEOUT_MS | 15000 | リクエストのタイムアウト(本クライアント側)です。タイムアウトはフェッチ失敗として扱われます。 |
古い環境向けに、APPINTEL_API_KEY/APPINTEL_API_URL も引き続きフォールバックとして読み取られます。それぞれ、対応する APPDEX_* 変数が未設定の場合にのみ使用されます。
ツール
estimate_app— 信頼度ラベル付きで、iOS アプリ 1 件の月間収益とダウンロード数を返します。アプリ名(app)または数値の App Store ID を指定できます。search_apps— 名前(query)から App Store ID を検索します。数値は返しません。estimate_appに渡す ID の検索に使用します。
上流から 2xx 以外の応答が返ると appdex error: HTTP <status> で失敗し、サービスに到達できない場合(タイムアウトを含む)は appdex unreachable で失敗します。
エンドポイントの出典
元のプロジェクトの README には、2 つのツール、推定の使用例、設定変数、キーが省略可能であることが記載されていますが、リクエストパスや Authorization ヘッダーの形式は記載されていません。以下は再構成した内容であり、その旨を明記しています。
GET <base>/api/estimate?app=<urlencoded app>(estimate_appで使用)。GET <base>/api/search?q=<urlencoded query>(search_appsで使用)。- キーを設定した場合の
Authorization: Bearer <key>ヘッダー形式。
CLI
各ツールは、1 つの JSON 引数文字列を受け取るサブコマンドです。
npx @reneturcios/appworth estimate_app '{"app":"Duolingo"}'
npx @reneturcios/appworth estimate_app '{"app":"570060128"}'
npx @reneturcios/appworth search_apps '{"query":"Duolingo"}'
npx @reneturcios/appworth --version
出力はツールの結果テキスト(成功時は上流からのレスポンス本文)です。終了コードは、成功時が 0、実行時エラー時が 1、使用方法のエラー時が 2 です。
MCP サーバー
npx -y @reneturcios/appworth mcp
MCP クライアントの設定(キーは省略可能です。キーがある場合は、クライアントの環境変数から渡してください):
{
"mcpServers": {
"appworth": {
"command": "npx",
"args": ["-y", "@reneturcios/appworth", "mcp"],
"env": {
"APPDEX_API_KEY": "<your key>"
}
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/appworth
docker run --rm ghcr.io/cloudcorprecords/appworth search_apps '{"query":"Duolingo"}'
開発
npm install
npm run build # tsc -> dist/
npm test # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev # run the CLI from source
ライセンス
MIT — Copyright (c) 2026 Rene Turcios
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。