Skip to content
Back to skills

Kappmaker Revenuecat

ASecurity

Configure RevenueCat for a KAppMaker app — entitlements, connected store products, offerings and packages, via the CLI or the RevenueCat MCP server. Use when the user mentions RevenueCat, or asks who handles entitlements, subscription state or paywall delivery and their project uses RevenueCat. To create the store products themselves use kappmaker-monetization; for Adapty use kappmaker-adapty.

  • 3 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 3, 2026
developmentgoapi

Works with

  • cli
  • api
  • mcp

Security analysis

A92/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 3, 2026

npx -y skills add KAppMaker/KAppMaker-CLI --skill kappmaker-revenuecat --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Kappmaker Revenuecat?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Kappmaker Revenuecat
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kappmaker-kappmaker-revenuecat/badge)](https://www.skillsdirectory.com/skills/kappmaker-kappmaker-revenuecat)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: kappmaker-revenuecat
description: Configure RevenueCat for a KAppMaker app — entitlements, connected store products, offerings and packages, via the CLI or the RevenueCat MCP server. Use when the user mentions RevenueCat, or asks who handles entitlements, subscription state or paywall delivery and their project uses RevenueCat. To create the store products themselves use kappmaker-monetization; for Adapty use kappmaker-adapty.
---

# KAppMaker — RevenueCat

## Before running any command

1. **Prerequisites** — `kappmaker --version` (install: `npm i -g kappmaker`). If a credential is
   missing the CLI says so; re-run `kappmaker config init`.
2. **Read `AiGuidelines/` first** — the PRD, positioning and UI spec already answer most questions.
3. **API key** — a **secret API v2 key** (`sk_…`) from the RevenueCat dashboard (Project settings →
   API keys → V2). A v1 key will not work — and **v2 keys are per-project**: the key is minted
   inside one project and can only see that project, so each app needs its own. Pass it once with
   `kappmaker revenuecat setup --api-key sk_...` and it is saved for that app (keyed by bundle ID in
   `~/.config/kappmaker/revenuecat-keys.json`); every later command finds it automatically.
   Resolution order: `--api-key` → `REVENUECAT_API_KEY` env → the per-app map → the global
   `revenuecatApiKey` config value (a fine shortcut when the account has only one app).

### revenuecat setup — Provider Setup

**Syntax**: `kappmaker revenuecat setup [--config <path>]`

**Syntax**: `kappmaker revenuecat setup [--config <path>] [--api-key <sk_...>]`

**Prerequisites**: an API key resolvable per the order above (no external CLI — talks straight to
`api.revenuecat.com/v2`). The RevenueCat **project** must already exist in the dashboard. Because
the key is project-scoped, it identifies the project by itself — no project ID to configure. The
command also cross-checks: a config carrying one project's ID with a key from another fails loudly
instead of writing into the wrong project.

**Config file**: `./Assets/revenuecat-config.json`. If missing, prompts for app name / bundle ID /
package ID and writes one from the built-in template (2 subscriptions + 3 credit packs, same
defaults as the Adapty template).

**What it does** (7 steps): validate key → load config → find/create the App Store + Play Store
apps → entitlements (`premium`, `credit_pack_access`) → connect store products → attach products
to entitlements → offerings (`default`, `credits_pack`) with one package per product.

**Product ID alignment** — same generator as ASC / Play / Adapty, so IDs line up with what
`create-appstore-app` and `gpc setup` created. One RevenueCat-specific rule: **Play subscriptions
are connected as `productId:basePlanId`** (e.g. `myapp.premium.weekly.v1:autorenew-weekly-699-v1`)
— RevenueCat rejects the bare subscription ID as ambiguous. Play one-time products and all iOS
products use their plain IDs.

**Packages** use RevenueCat's standard keys (`$rc_weekly`, `$rc_monthly`, `$rc_annual`, …); credit
packs get `credit_pack_<credits>`. The credits offering identifier is `credits_pack` — the same
constant the app code already uses for Adapty's placement, so the mobile code keeps one constant
regardless of provider.

**Idempotent re-runs**: everything is find-before-create (entitlements by lookup_key, products by
store identifier, offerings/packages by lookup key); "already attached" errors on re-attach are
swallowed. Safe to rerun any time.

**Dashboard-only steps** (the command prints this checklist): App Store Connect API key upload,
Play service credentials upload, copying the per-app public SDK keys (`appl_…` / `goog_…`) into the
mobile app, and marking `default` as the current offering. RevenueCat cannot validate purchases
until the store credentials are uploaded.

### The RevenueCat MCP server — dashboard work in conversation

RevenueCat also ships an MCP server: endpoint `https://mcp.revenuecat.ai/mcp`, authenticated with
the same v2 secret key (Bearer) or OAuth. When it is connected in the session, you can inspect and
manage projects, apps, products, entitlements, offerings and packages conversationally — useful for
one-off questions ("what offerings exist?", "attach this product to premium") without running the
full setup. The CLI flow above remains the right tool for the repeatable, config-driven setup;
the MCP is for ad-hoc inspection and small corrections. Do not mix the two mid-flow — finish a
`revenuecat setup` run before making MCP-side edits, or the run's find-before-create logic will
see half-finished state.

### Pushing ONE new product later

Don't re-run the full setup to add a product — `kappmaker subscription add` / `kappmaker iap add`
push to the stores AND mirror into the provider(s) the project uses. See **kappmaker-monetization**
for the flags; `--provider revenuecat` forces the RevenueCat push when no config file exists yet.

---

## Where this sits in the flow

- **Before this:** **kappmaker-monetization** — create the store products first; RevenueCat
  connects to them by store identifier.
- **After this:** Paywall work in the app itself (fetch offering `default` / `credits_pack` via the
  RevenueCat SDK).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.