RevenueCat Project Bootstrap
Guide through setting up a complete RevenueCat project from scratch.
Instructions
Important: Use the RevenueCat MCP server or the rc CLI (whichever the user has available) for all operations below; both cover the same actions for these steps. See the revenuecat-cli skill for CLI discovery and conventions. Always list projects first (list-projects or rc projects list) to retrieve all accessible projects. If multiple projects are returned, ask the user which project to use or if they want to create a new one.
Phase 1: Discovery
Ask targeted questions to understand the developer's needs:
- Platforms — "Which platforms are you building for?" (iOS, Android, Web, or multiple)
- Business Model — "What type of monetization are you planning?" (subscriptions, one-time purchases, consumables, or a mix)
- Subscription Tiers (if applicable) — "What subscription options do you want to offer?" (common: Monthly + Annual, single tier, Freemium + Premium)
- App Details — Bundle ID (iOS, e.g.
com.company.appname), package name (Android), and display name
Phase 2: Create Resources
Execute in this order — dependencies matter. Each step names the MCP tool; the equivalent rc commands are rc projects create, rc apps create, rc products create, rc entitlements create, rc entitlements attach, rc offerings create, rc packages create, rc packages attach, and rc apps keys.
Verify/Create Project
list-projects - list accessible projects
If multiple: ask user which to use, or offer to create a new one
To create a new project, use the create-project MCP tool
Store project_id for all subsequent calls
Create Apps (for each platform):
- For mobile apps, ask if the user already has set up their app in App Store Connect / Google Play Console. If so, create an app using the
create-app tool (type: app_store | play_store). If not, use the automatically generated test_store app and tell the user that they can set up the integration with App Store Connect / Google Play Console later.
- For web apps,
create-app with type rc_billing
Create Products (for each subscription/purchase): create-product tool
Create Entitlements (for each feature/access level): create-entitlement tool
Attach Products to Entitlements: attach-products-to-entitlement tool
Create Default Offering: create-offering tool (lookup_key: "default")
Create Packages in Offering: create-package tool (for subscriptions, use $rc_monthly, $rc_annual, etc.)
Attach Products to Packages: attach-products-to-package tool
Get API Keys: list-app-public-api-keys tool
Phase 3: Summary & Next Steps
Provide a complete setup summary:
Project Setup Complete!
=======================
Project: {project_name} ({project_id})
Apps Created:
iOS: {app_name} - API Key: appl_xxxxx
Android: {app_name} - API Key: goog_xxxxx
Products:
- monthly_premium (subscription, P1M)
- annual_premium (subscription, P1Y)
Entitlements:
- premium → monthly_premium, annual_premium
Offering: default (current)
└── $rc_monthly → monthly_premium
└── $rc_annual → annual_premium
Next Steps:
1. Configure store credentials in RevenueCat dashboard
2. Create products in App Store Connect / Play Console
3. Add SDK to your app (see /rc:create-app)
4. Implement paywall UI using the "default" offering
Error Handling
If any step fails:
- Report the specific error clearly
- Suggest fixes (e.g., "Bundle ID may already be in use")
- Offer to retry or skip that step
- Continue with remaining steps if possible
1---2name: create-revenuecat-project3description: Set up a complete RevenueCat project from scratch — creates apps, products, entitlements, offerings, and packages in the correct order. Use when the user wants to create a new RevenueCat project, configure in-app purchases, set up subscriptions or monetization, or bootstrap IAP infrastructure for iOS, Android, or Web.4---5
6# RevenueCat Project Bootstrap
7
8Guide through setting up a complete RevenueCat project from scratch.
9
10## Instructions
11
12**Important:** Use the RevenueCat MCP server or the `rc` CLI (whichever the user has available) for all operations below; both cover the same actions for these steps. See the `revenuecat-cli` skill for CLI discovery and conventions. Always list projects first (`list-projects` or `rc projects list`) to retrieve all accessible projects. If multiple projects are returned, ask the user which project to use or if they want to create a new one.
13
14### Phase 1: Discovery
15
16Ask targeted questions to understand the developer's needs:
17
181. **Platforms** — "Which platforms are you building for?" (iOS, Android, Web, or multiple)
192. **Business Model** — "What type of monetization are you planning?" (subscriptions, one-time purchases, consumables, or a mix)
203. **Subscription Tiers** (if applicable) — "What subscription options do you want to offer?" (common: Monthly + Annual, single tier, Freemium + Premium)
214. **App Details** — Bundle ID (iOS, e.g. `com.company.appname`), package name (Android), and display name
22
23### Phase 2: Create Resources
24
25Execute in this order — dependencies matter. Each step names the MCP tool; the equivalent `rc` commands are `rc projects create`, `rc apps create`, `rc products create`, `rc entitlements create`, `rc entitlements attach`, `rc offerings create`, `rc packages create`, `rc packages attach`, and `rc apps keys`.
26
271. Verify/Create Project
28`list-projects` - list accessible projects
29If multiple: ask user which to use, or offer to create a new one
30To create a new project, use the `create-project` MCP tool
31Store project_id for all subsequent calls
32
332. Create Apps (for each platform):
34 - For mobile apps, ask if the user already has set up their app in App Store Connect / Google Play Console. If so, create an app using the `create-app` tool (type: app_store | play_store). If not, use the automatically generated `test_store` app and tell the user that they can set up the integration with App Store Connect / Google Play Console later.
35 - For web apps, `create-app` with type rc_billing
36
373. Create Products (for each subscription/purchase): `create-product` tool
38
394. Create Entitlements (for each feature/access level): `create-entitlement` tool
40
415. Attach Products to Entitlements: `attach-products-to-entitlement` tool
42
436. Create Default Offering: `create-offering` tool (lookup_key: "default")
44
457. Create Packages in Offering: `create-package` tool (for subscriptions, use $rc_monthly, $rc_annual, etc.)
46
478. Attach Products to Packages: `attach-products-to-package` tool
48
499. Get API Keys: `list-app-public-api-keys` tool
50
51### Phase 3: Summary & Next Steps
52
53Provide a complete setup summary:
54
55```
56Project Setup Complete!
57=======================
58
59Project: {project_name} ({project_id})
60
61Apps Created:
62 iOS: {app_name} - API Key: appl_xxxxx
63 Android: {app_name} - API Key: goog_xxxxx
64
65Products:
66 - monthly_premium (subscription, P1M)
67 - annual_premium (subscription, P1Y)
68
69Entitlements:
70 - premium → monthly_premium, annual_premium
71
72Offering: default (current)
73 └── $rc_monthly → monthly_premium
74 └── $rc_annual → annual_premium
75
76Next Steps:
771. Configure store credentials in RevenueCat dashboard
782. Create products in App Store Connect / Play Console
793. Add SDK to your app (see /rc:create-app)
804. Implement paywall UI using the "default" offering
81```
82
83## Error Handling
84
85If any step fails:
861. Report the specific error clearly
872. Suggest fixes (e.g., "Bundle ID may already be in use")
883. Offer to retry or skip that step
894. Continue with remaining steps if possible