Stripe MCP Setup
Requires Stripe MCP connected via OAuth or restricted key. Docs: https://docs.stripe.com/mcp
GetMcpToolswithserver: "user-Stripe"(orplugin-stripe-stripe) before any call- Prefer
stripe_api_search→stripe_api_details→stripe_api_readfor list/retrieve - Always paginate —
limit: 100, followhas_morewithstarting_after - Amounts are in cents unless noted
- Never expose secret keys in output
Workflow
GetSubscriptionswithstatus: past_dueandstatus: unpaid— paginate all- Expand
default_payment_methodandlatest_invoice - Per sub record:
- Plan(s) + MRR
latest_invoice.attempt_count,amount_due,status- Card: brand, last4,
funding, country, wallet type
- Sum MRR at risk
Dunning Checklist (Dashboard)
- Smart Retries enabled (Billing → Revenue recovery)
- Customer emails: failed payment, card expiring
- Customer Portal: payment method update enabled
- Webhook:
invoice.payment_failedhandled in app
Output Template
Past Due Report ([date])
| # | Sub | Plan | MRR | Attempts | Card | Country |
|---|-----|------|-----|----------|------|---------|
Total: [N] subs | $[MRR]/mo at risk
Funding mix: credit [n] | debit [n] | prepaid [n]
Priority actions:
1. [highest $ sub with most attempts]
Route email gaps to email-dunning-setup; card patterns to card-funding-risk.