Skroll CLI
A terminal client with the same OAuth 2.1 flow as the MCP server, and one command per MCP tool. Install @skrollai/cli, run skroll login, then call the tools by name.
Install and sign in
Login opens your browser, you approve access, and the CLI stores tokens in ~/.config/skroll/credentials.json. Pass --token or SKROLL_TOKEN to use an organization API key instead.
pnpm add -g @skrollai/cli
skroll login
skroll whoami
skroll list_decks --scope mineAgent skill
Coding agents (Claude Code, Cursor, Codex, and others) can install a skill that teaches them when and how to drive this CLI. The skill lives in the hamburgerlabs/skroll repo and is listed on skills.sh.
npx skills add hamburgerlabs/skrollHow to create a skroll
You write the skroll, in one deck-tsx module. skroll instructions prints the brief to write it from: the rules a deck has to meet, how the module is compiled, what it may import, and what the engine already does. That command is essential. Do not write a skroll until you have run it and read it in full. Do not skip it. Do not write from memory of what slides usually look like.
skroll instructions
skroll create_deck --title "Q3 review"
skroll set_deck_content --id <deck-id> --source @deck.tsx --tokens-css @tokens.css
skroll update_deck --id <deck-id> --visibility publicA module that does not compile is rejected with the compiler's message and nothing is saved, so fix and send it again. To change a skroll later, read it back with skroll get_deck and save the whole module again.
After publishing, the JSON includes publicUrl in the form https://skrollai.com/d/{slug} (example: https://skrollai.com/d/f4zqohxo7d). Share that field. Do not invent a link from the deck id.
Templates
A template is an ordinary skroll your organization starts new work from: same versions, same editing, same export. Find one with --kind template and build on it with --from-deck-id, which accepts any skroll you can read. To create one, pass --kind template rather than making a skroll and converting it.
skroll list_decks --kind template
skroll create_deck --title "Q3 board" --from-deck-id <template-id>
skroll set_deck_content --id <deck-id> --source @deck.tsx
skroll create_deck --title "Monthly board update" --kind template \
--description "Numbers first, one slide per business unit"A starting point is not a copy: the first version is written fresh into that design. This API only authors slides, so a webpage starting point is refused. Brand comes from it unless you pass --brand-id. Use update_deck --kind template to promote a skroll the team already likes, and --archived true to retire one: skrolls built from a retired template still name it.
Commands
Each command is the MCP tool of the same name. See the MCP guide and the API reference for fields. Prefix a flag value with @ to read it from a file.
- get_authoring_instructions
- list_decks
- create_deck
- get_deck
- update_deck
- delete_deck
- set_deck_content
- list_deck_versions
- get_deck_version
- revert_deck_version
- create_export
- get_export
- list_brands
- get_brand
- delete_brand
- download_export (HTTP only: follows the file redirect)