{"sections":[{"title":"Getting started","pages":[{"slug":"getting-started/deploy-from-github","title":"Deploy from GitHub","description":"Connect a GitHub repository, check it is ready, and ship it to a live URL."},{"slug":"getting-started/deploy-from-zip","title":"Deploy from a ZIP","description":"Upload your project as a ZIP archive, check it is ready, and deploy it."},{"slug":"getting-started/what-runs-here","title":"What runs here","description":"The rules your app must follow so the platform can build and run it."}]},{"title":"Concepts","pages":[{"slug":"concepts/apps-builds-deploys","title":"Apps, builds and deploys","description":"What an app, a build and a deploy are, and the states an app moves through."},{"slug":"concepts/readiness-and-fixes","title":"Readiness and fixes","description":"The readiness scan, what it checks, and how the fix loop works."},{"slug":"concepts/plans-and-quotas","title":"Plans and quotas","description":"What the plan tiers include, what counts against your usage, and what a limit message means."},{"slug":"concepts/environment-variables","title":"Environment variables","description":"Set the config and secrets your app reads at runtime, and know when changes apply."},{"slug":"concepts/subdomains-and-domains","title":"Subdomains and domains","description":"Your app's platform subdomain, and how to serve it on a domain you own."},{"slug":"concepts/logs-and-status","title":"Logs and status","description":"Read your app's runtime logs, see its status, and know when to restart versus redeploy."},{"slug":"concepts/database-migrations","title":"Deploying an app that's already live","description":"Why the platform asks whether your app is already running, and what you are agreeing to."}]},{"title":"MCP","pages":[{"slug":"mcp/overview","title":"Overview","description":"Connect your coding agent to OrbitOrca over MCP — read your apps, and let it deploy for you."},{"slug":"mcp/tokens-and-oauth","title":"Tokens","description":"How personal access tokens work — creating, scoping, expiry, and revoking them."},{"slug":"mcp/scopes-and-safety","title":"Scopes & safety","description":"What a read token can do, what a write token can do, and what stops a runaway agent."},{"slug":"mcp/tools","title":"Tool reference","description":"Every MCP tool, grouped by the scope a token needs to call it."}]},{"title":"Connect an agent","pages":[{"slug":"mcp/connect/claude-code","title":"Claude Code","description":"Connect Claude Code to OrbitOrca with one terminal command."},{"slug":"mcp/connect/cursor","title":"Cursor","description":"Connect Cursor to OrbitOrca by adding one block to its MCP config."},{"slug":"mcp/connect/windsurf","title":"Windsurf","description":"Connect Windsurf to OrbitOrca by adding one block to its MCP config."},{"slug":"mcp/connect/claude-ai","title":"Claude.ai / Claude Desktop","description":"Connect OrbitOrca to Claude.ai and Claude Desktop as a custom connector over OAuth."},{"slug":"mcp/connect/other-hosts","title":"Other hosts","description":"Connect any MCP host that speaks Streamable HTTP with a bearer token."}]},{"title":"Features","pages":[{"slug":"features/overview","title":"Overview","description":"The business features you can add to an app, and how the enable-configure-wire model works."},{"slug":"features/payments","title":"Payments","description":"Accept payments in your app with Stripe — enable, verify, build a catalog, and check a paid state."},{"slug":"features/auth","title":"User accounts","description":"Add end-user sign-up and login to your app, backed by its own auth store."},{"slug":"features/analytics","title":"Traffic analytics","description":"Count visitors and pageviews for your app, with nothing to add to your code."}]},{"title":"Help","pages":[{"slug":"troubleshooting","title":"Troubleshooting","description":"Every error you can hit on the import, readiness, build and deploy path, with the fix."},{"slug":"support","title":"Support","description":"How to reach us, and what to include so we can help fast."}]}]}