The contract is intentionally small: write LLM-ready text to stdout, emit typed JSON with --json when another step needs machine-readable output, and return stable exit codes when auth, validation, or cache state fails.
That choice keeps rawctx portable instead of binding it to one host-specific MCP or plugin surface. If a system can run a shell command, it can search, snapshot-download, diff, and compress meaning.
rawctx snapshot-download @pasar6987/stripe-subscriptions
rawctx to-prompt @pasar6987/stripe-subscriptions --datasets subscriptions --max-tokens 1200