Mushu Documentation
Mushu is a multi-tenant authentication and push notification platform. It provides Apple Sign In for iOS and web apps, plus APNs push notifications with simple REST APIs.
Quick Start
Get up and running in 5 minutes. Install the CLI, authenticate, and send your first push notification.
Deployment Guide
Set up staging and production environments, manage API keys, and integrate with CI/CD.
MCP Server
Connect Mushu to Claude, Cursor, and other AI tools using the Model Context Protocol.
CLI Reference
Complete reference for all mushu-cli commands and options.
API Reference
OpenAPI documentation for the Auth and Notify REST APIs.
Architecture
Data model, service map, and how orgs, apps, and users relate.
Core Concepts
Authentication (mushu-auth)
Mushu Auth provides Apple Sign In for your apps. Users authenticate once and get JWT tokens that work across your iOS app and any web services. Key features:
- Apple Sign In - Native iOS and Web OAuth flows
- Google Sign In - Native mobile, One Tap, and Web OAuth
- Facebook Sign In - Web OAuth flow
- Organizations - Group users into teams with role-based access
- Sessions - Automatic token refresh and multi-device support
- Connections - Link external services (Facebook) to orgs with auto-refreshing tokens
- Web SPA Guide - Integrate auth into React and other browser apps
Push Notifications (mushu-notify)
Mushu Notify handles APNs push notifications with multi-tenant support. Register device tokens, send individual or bulk pushes, all with simple API calls:
- Tenants - Each iOS app gets its own tenant with APNs credentials
- Device Registration - Associate device tokens with user IDs
- Push Sending - Send to individual users or bulk send to many
- API Keys - Generate keys for server-to-server calls
Payments (mushu-pay)
Mushu Pay provides prepaid wallet with Stripe integration. No webhook code needed - we handle payment processing and wallet deposits:
- Org Billing - Connect your Stripe account
- Products - Define wallet packages with prices
- Wallet - Track balances per organization (in micro-dollars)
- Transactions - Full audit trail of deposits and charges
Media Hosting (mushu-media)
Mushu Media provides image and video hosting with automatic processing. Direct uploads, automatic image resizing, and optimized video transcoding:
- Direct Uploads - Presigned URLs for secure uploads
- Image Variants - Automatic thumbnail, small, medium, large
- Video Transcoding - Optimized MP4 + WebM with thumbnails
- Zero Egress - No bandwidth charges with Cloudflare R2
Utilities
Stateless utility APIs:
- Geo - Geohash encoding, distance calculations, radius search
Engagement Services
Optional services for building engaging user experiences:
- Streaks - Daily activity tracking with timezone-aware streak calculation
- Leaderboards - Boards, scores, rankings with time windows and anti-cheat
Architecture
Mushu consists of the following services:
Core Services
| Service | URL | Purpose |
|---|---|---|
mushu-auth | auth.mushucorp.com | Authentication, users, organizations |
mushu-notify | notify.mushucorp.com | Push notifications, devices, tenants |
mushu-pay | pay.mushucorp.com | Payments, wallet, Stripe integration |
mushu-media | media.mushucorp.com | Media hosting, images, videos |
Utilities
| Service | URL | Purpose |
|---|---|---|
mushu-geo | geo.mushucorp.com | Geospatial utilities (no auth required) |
Engagement Services
| Service | URL | Purpose |
|---|---|---|
mushu-streaks | streaks.mushucorp.com | Activity tracking and streaks |
mushu-leaderboards | leaderboards.mushucorp.com | Rankings and scoreboards |
Infrastructure
| Service | URL | Purpose |
|---|---|---|
mushu-admin | admin.mushucorp.com | Web dashboard (this site) |
Next Steps
- Follow the Quick Start guide to send your first push
- Install the CLI for command-line access
- Set up MCP to use Mushu with AI assistants