minradar

App Store opportunity data for coding agents: unmet demand, paying markets, build briefs.

使うべきか

品質と安全性

A
説明の品質
94%
スキーマの完全性
77%
命名の品質
93%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(2)

  • LOWTool 'explain_method' description lacks action verbexplain_method 内
  • LOWTool 'search_open_source_accelerators' name length outside 3-30 rangesearch_open_source_accelerators 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,385トークン数(ツール定義)
~1.5 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.08%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "minradar": {
      "url": "https://minradar.com/mcp"
    }
  }
}

リモートエンドポイント

https://minradar.com/mcpstreamable-http

できること

ツール一覧

ツール(8)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢find_unmet_demand(storefront, limit, min_rating_count, min_rating_count_scaled, max_rating_count, ...)

Rank App Store opportunities in apps that already have a large user base but whose users are clearly unhappy (unmet demand). Returns a ranked table with tier, score, rating and scale. Use this first when deciding what app to build.

入力スキーマ

{
  "type": "object",
  "properties": {
    "storefront": {
      "type": "string",
      "default": "us",
      "description": "Two-letter App Store region. The value is region identity, never a label."
    },
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 200,
      "description": "Maximum number of results to return."
    },
    "min_rating_count": {
      "type": "integer",
      "default": 5000,
      "description": "Rating volume is the install proxy. On /api/lens this remains a legacy alias for the scaled value; /api/hotspots uses it literally."
    },
    "min_rating_count_scaled": {
      "type": "integer",
      "default": 5000,
      "description": "Pre-scaled rating volume filter. /api/lens applies max(300, floor(value / 3)); /api/paying applies max(200, floor(value / 5))."
    },
    "max_rating_count": {
      "type": "integer",
      "default": 0,
      "description": "Optional ceiling to exclude unassailable giants."
    },
    "max_rating": {
      "type": "number",
      "description": "Only include apps at or below this average rating, e.g. 4.0."
    },
    "genre": {
      "type": "string",
      "description": "Restrict to one App Store category, e.g. Productivity."
    },
    "include_institutional": {
      "type": "boolean",
      "default": false,
      "description": "Include institution-locked products that a solo dev cannot win."
    }
  },
  "required": []
}
🔴find_solo_buildable(storefront, limit, min_rating_count, min_rating_count_scaled, max_rating_count, ...)

Find opportunities a single developer can realistically build: clear winnability plus an explicit single-user, local or offline core. Use when solo feasibility is the primary constraint.

入力スキーマ

{
  "type": "object",
  "properties": {
    "storefront": {
      "type": "string",
      "default": "us",
      "description": "Two-letter App Store region. The value is region identity, never a label."
    },
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 200,
      "description": "Maximum number of results to return."
    },
    "min_rating_count": {
      "type": "integer",
      "default": 5000,
      "description": "Rating volume is the install proxy. On /api/lens this remains a legacy alias for the scaled value; /api/hotspots uses it literally."
    },
    "min_rating_count_scaled": {
      "type": "integer",
      "default": 5000,
      "description": "Pre-scaled rating volume filter. /api/lens applies max(300, floor(value / 3)); /api/paying applies max(200, floor(value / 5))."
    },
    "max_rating_count": {
      "type": "integer",
      "default": 0,
      "description": "Optional ceiling to exclude unassailable giants."
    },
    "max_rating": {
      "type": "number",
      "description": "Only include apps at or below this average rating, e.g. 4.0."
    },
    "genre": {
      "type": "string",
      "description": "Restrict to one App Store category, e.g. Productivity."
    },
    "include_institutional": {
      "type": "boolean",
      "default": false,
      "description": "Include institution-locked products that a solo dev cannot win."
    }
  },
  "required": []
}
⚪validate_paying_market(storefront, limit, min_rating_count)

Rank app categories by evidence that users already pay inside them: how many of its apps reach the store-wide Top-Grossing chart, how many charge upfront, paywall language in sampled reviews, and review depth. Call this before building to confirm a market monetises.

入力スキーマ

{
  "type": "object",
  "properties": {
    "storefront": {
      "type": "string",
      "default": "us",
      "description": "Two-letter App Store region. The value is region identity, never a label."
    },
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 200,
      "description": "Maximum number of results to return."
    },
    "min_rating_count": {
      "type": "integer",
      "default": 5000,
      "description": "Rating volume is the install proxy. On /api/lens this remains a legacy alias for the scaled value; /api/hotspots uses it literally."
    }
  },
  "required": []
}
🟢get_opportunity_brief(app_id, storefront, include_github)

Full evidence dossier for one app: score breakdown, plain-language diagnosis, complaint themes with verbatim user quotes, review provenance, and matching open-source accelerators. Use after find_low_hanging_fruit to inspect a specific candidate.

入力スキーマ

{
  "type": "object",
  "properties": {
    "app_id": {
      "type": "integer",
      "description": "App Store track id."
    },
    "storefront": {
      "type": "string",
      "default": "us",
      "description": "Two-letter App Store region. The value is region identity, never a label."
    },
    "include_github": {
      "type": "boolean",
      "default": true,
      "description": "MCP name for the REST with_github switch."
    }
  },
  "required": [
    "app_id"
  ]
}
⚪generate_app_brief(app_id, storefront, target)

Produce a ready-to-build product specification for an opportunity, formatted for a specific AI coding agent (codex, claude, or cursor). Includes the wedge, the verbatim complaints to fix, verified open-source accelerators, and a verification plan.

入力スキーマ

{
  "type": "object",
  "properties": {
    "app_id": {
      "type": "integer",
      "description": "App Store track id."
    },
    "storefront": {
      "type": "string",
      "default": "us",
      "description": "Two-letter App Store region. The value is region identity, never a label."
    },
    "target": {
      "type": "string",
      "enum": [
        "codex",
        "claude",
        "cursor"
      ],
      "default": "codex",
      "description": "AI coding agent that will receive the brief."
    }
  },
  "required": [
    "app_id"
  ]
}
🟢search_open_source_accelerators(genre, theme, limit)

Find maintained, commercially reusable open-source projects for a niche, with license posture. Use to avoid rebuilding infrastructure and to check whether a dependency is safe to ship.

入力スキーマ

{
  "type": "object",
  "properties": {
    "genre": {
      "type": "string",
      "description": "Restrict to one App Store category, e.g. Productivity."
    },
    "theme": {
      "type": "string",
      "description": "Complaint theme key, e.g. data_loss_sync, paywall_aggressive, ai_quality."
    },
    "limit": {
      "type": "integer",
      "default": 6,
      "maximum": 200,
      "description": "Maximum number of results to return."
    }
  },
  "required": []
}
🟢explain_method

Explain the scoring formulas, weights, and the honest limitations of the data. Use when a user questions the numbers.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "required": []
}
⚪market_stats

Report local data coverage (apps, reviews, chart snapshots) and the last ingest run.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "required": []
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 8 件
検証済みバージョンは記録されていませんツール 8 件