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개