Anthra developer platform
Build with Anthra
Anthra exposes two programmatic surfaces on top of the same studio that powers /dashboard:
- REST API at
/api/v1/*— JSON in, JSON out (plus streamedtext/plainfor chapter generation). - MCP server at
/api/mcp— connect Claude, Cursor, or any Model Context Protocol client with a personal access token and Anthra appears as a set of callable tools.
Both surfaces use the same authentication, the same scopes, and the same underlying database — you can mix them freely.
Start here
- Quickstart — mint a key, create a book, write its first chapter end-to-end with
curl. - Authentication & keys — tokens, scopes, expiry, revocation.
- Connect via MCP — Claude Desktop, Cursor, and Claude Code configs.
What you can do
| Capability | REST | MCP tool | Scope |
|---|---|---|---|
| List / read books | GET /v1/books | list_books, get_book | books:read |
| Create or edit a book | POST /v1/books, PATCH /v1/books/{id} | create_book, update_book | books:write |
| Generate outline | POST /v1/books/{id}/outline | generate_outline | generation:run |
| Write / rewrite a chapter | POST …/chapters/{cid}/write (stream) | write_chapter, rewrite_chapter | generation:run |
| Narrate with ElevenLabs | POST …/chapters/{cid}/narrate | narrate_chapter | generation:run |
| Publish / unpublish | POST /v1/books/{id}/publish | publish_book, unpublish_book | publish:write |
| Reader analytics | GET /v1/books/{id}/analytics | get_reader_analytics | analytics:read |
| Account + token usage | GET /v1/account, GET /v1/usage | get_usage | account:read |
| Planning surface (theme, promise, comp, locks) | GET / PATCH /v1/books/{id}/plan | get_plan, set_plan | books:read · books:write |
| Characters (want / fear / lie) | GET / POST /v1/books/{id}/characters | list_characters, create_character | books:read · books:write |
| Writer's bible (characters, plot, world, glossary…) | GET /v1/books/{id}/documents, GET / PUT /v1/books/{id}/documents/{kind} | list_book_documents, read_book_document,write_book_document, draft_book_document | books:read · books:write |
| Beat sheets (Save the Cat, Freytag, …) | GET /v1/books/{id}/beat-sheets | list_beat_sheets | books:read |
| Sensitivity flags | GET / POST /v1/books/{id}/sensitivity | run_sensitivity_scan, list_sensitivity_flags, dismiss_sensitivity_flag | generation:run · analytics:read |
| Background jobs | GET /v1/jobs, GET /v1/jobs/{jobId} | list_jobs, get_job_status | account:read |
| Narration voice directory | GET /v1/voices | list_voices | books:read |
| Batch narration (whole book) | loop POST …/chapters/{cid}/narrate | narrate_book | generation:run |
| Cover art / chapter illustrations | POST /v1/books/{id}/cover-image, POST /v1/books/{id}/back-cover, POST /v1/books/{id}/spine, POST /v1/books/{id}/cover/compose, POST /v1/chapters/{cid}/image | generate_cover_art, generate_back_cover,generate_spine, compose_cover_spread,generate_chapter_image, choose_cover_color | generation:run |
| Chapter restructuring | PATCH /v1/books/{id}/chapters/{cid} | list_chapters, update_chapter, split_chapter, merge_chapters, reorder_chapters, set_chapter_meta, list_chapter_revisions, restore_chapter_revision | books:read · books:write |
| Manuscript export (EPUB / DOCX / PDF / Markdown) | POST /v1/books/{id}/produce | export_book_markdown, produce_book, get_production_job_status | generation:run |
| Translation (clone into another language) | POST /v1/books/{id}/translate | translate_book | generation:run |
| Editorial & quality (lint, critique, continuity, drift, repetition, cliches) | — | lint_prose, critique_chapter, check_continuity, find_repetition, suggest_cliche_replacements, spoken_readability, style_drift, set_forbidden_words | books:read · generation:run |
| Collaborators & author preferences | — | list_collaborators, invite_collaborator, remove_collaborator, list_author_preferences, set_author_preference | books:read · books:write · account:read |
Planning surface (added 2026-06)
The studio's planning workbench is now fully programmable. Both REST and MCP can:
- Read and write the theme statement, reader promise, comp authors, beat sheet, POV / tense locks, and POV depth dial.
- Manage the character roster with Truby-style
want/fear/lieaxes and the inter-character conflict matrix. - Generate and apply outline variants, grade the current outline, run the premise-sharpening interview, pick one of three premise pitches, auto-detect genre, and run era research with citation links.
- List tone / mood references and roll the outline back via snapshots.
Versioning
The REST surface is namespaced by version (/api/v1). Anthra will introduce a new namespace before making any breaking change; v1 is stable and additive-only.