MCP quickstart — author with an AI agent
ScryMaster has a full authoring API and a bundled MCP connector with complete Studio parity: an AI assistant can create, edit, validate, simulate, and publish an adventure end-to-end — no browser. This is the ten-step path. The deep reference (every endpoint, every tool, error codes) is the API & MCP reference.
The contract, in one line:
get_vocabulary → get_adventure → edit → save_adventure(baseHash) → validate_adventure → simulate_adventure → dry_publish → publish_adventure. Follow it every time — it’s what keeps AI-authored stories valid, non-clobbering, and safe to publish.The ten steps
- Create an account at scrymaster.com (free).
- Generate a token. In the Studio, open any story → ⚙ Settings → Integrations → API tokens → create one. It starts with
scry_; treat it like a password and revoke it any time. - Configure the MCP. Point your assistant’s MCP config at the bundled server
mcp/scrymaster.mjswithSCRYMASTER_TOKEN= your token andSCRYMASTER_API_URL=https://scrymaster.com. No MCP client? Every tool below maps 1:1 to a REST call in the API reference. - Ground on the vocabulary. Call
get_vocabulary(GET /api/v1/actions) first, always. The engine is default-deny — a verb that isn’t listed is rejected. Never author from memory. - Create the adventure.
create_adventurewith a full document grounded in that vocabulary → you get a draft id. - Read before you write.
get_adventurereturns the doc and adraftHash. Hold onto it. - Save safely.
save_adventurewith that hash asbaseHash. If the draft changed under you (another tab, another tool), you get a409— re-read, re-apply your edit to the fresh doc, save again. Never retry a save blindly. - Validate.
validate_adventure— schema, reachability, and the closed-verb check. Fix anything it flags. - Simulate.
simulate_adventureauto-plays the story to confirm it can be finished and the difficulty reads right (completion rate, death rate, never-reached beats). - Dry-publish, then publish.
dry_publishreturns the full verdict with no write (validation, IP denylist, compatibility, would-be version, any content-loss report). When it’s green — and the human is ready —publish_adventure. Publishing never breaks a player’s in-progress save: runs pin the version they started on.
What you get for free
- No clobbering — the
baseHash/409 contract means two editors (you and a human, or two tools) can never silently overwrite each other. - Real gates — the same validation, denylist, and data-loss checks the Studio enforces run on your publish; you can’t ship something a human couldn’t.
- Labeled authorship — every write you make is recorded in the story’s provenance ledger as an MCP edit, visible to the owner in the publish center’s “Recent activity.” The human always knows what the AI changed.
- Official content is protected —
delete_adventurerefuses the platform tutorial (403).
Deep reference: API & MCP reference →
