AI companion API & MCP server
Lusto runs on a versioned REST API (/api/v1) covering characters, story worlds, persistent-memory conversations, relationship state, voice calls, and media generation. We are opening it to developers.

Why build on a companion platform instead of a raw LLM API
Anyone can call a chat completion endpoint. The hard 80% of a companion or roleplay product is everything around the model: characters with stable identities, memory that persists and stays user-controlled, world state that survives sessions, moderation and review pipelines, metered billing, and media generation that keeps a character on-model. Lusto's platform API is that infrastructure — the same versioned /api/v1 surface that powers the Lusto app itself.
What the platform API covers today
- Characters & worlds — versioned, reviewed character and world profiles with immutable publication snapshots, so the exact character version a story started with never shifts under it.
- Roleplay chat — streaming conversations with persistent, user-approved memory, relationship state (warmth, trust, tension, chapters), and per-turn event streams.
- Story state — world state, open threads, checkpoints, and branching for non-linear stories.
- Media — image and video scene generation bound to per-character identity anchors for visual consistency.
- Voice — real-time voice call sessions with per-minute metering and settlement receipts.
- Safety & moderation — input inspection, publication review, reporting and appeals, all with auditable decisions.
What integration will look like
The API is a conventional JSON REST surface. A conversation turn, for illustration:
POST /api/v1/conversations/{id}/messages
Authorization: Bearer <api-key>
Content-Type: application/json
{ "text": "Tea sounds good. What kind of bookshop stays open this late?" }
Responses stream token by token with structured events for relationship changes, memory proposals, and world-state updates — so your client can render a story, not just text.
Live today: public read-only endpoints
A first slice of the API is open now, no key required — read-only JSON over all published content:
GET /api/v1/public/catalog— every published character and story worldGET /api/v1/public/characters/:slug— one character: premise, opening scene, themes, worldGET /api/v1/public/guidesandGET /api/v1/public/guides/:slug— the editorial guide library
MCP server: companion tools for AI assistants
The Model Context Protocol (MCP) is the emerging standard for giving AI assistants tools. lusto-mcp is our open-source, zero-dependency MCP server over the public endpoints above. Version 0.1 ships five discovery tools:
search_characters/get_character— find and inspect characters by theme, world, or premiselist_worlds— persistent story worlds with premises and ruleslist_guides/get_guide— the full guide library
Story tools (start_story, continue_story, generate_scene) arrive with public API keys. npm and registry listings (mcp.so, Smithery, PulseMCP, Glama) land on this page first.
Roadmap
- Public API keys and docs — quotas, webhooks, and usage-based pricing for third-party apps.
- OpenAI-compatible chat endpoint — point an existing OpenAI-client integration at Lusto by changing one base URL, and get character grounding and persistent memory on top.
- lusto-mcp — the MCP server above, with registry listings (mcp.so, Smithery, PulseMCP, Glama).
Get early access
Developer access is rolling out gradually. Create an account in the app and watch this page — documentation and registry links land here first.
Frequently asked questions
Is there a public Lusto API right now?
The versioned REST API (/api/v1) exists and powers the Lusto app in production. Public API keys, documentation, and quotas for third-party developers are rolling out — this page is updated first when access opens.
Will there be an OpenAI-compatible endpoint?
Yes, it is on the roadmap: an OpenAI-compatible chat endpoint so existing clients can switch by changing a base URL, gaining character grounding, persistent memory, and relationship state on top of plain completions.
What is the Lusto MCP server?
lusto-mcp is a planned open-source Model Context Protocol server that exposes Lusto as tools for AI assistants — character search, persistent-memory story conversations, and identity-consistent scene generation. It will be published on npm and GitHub and listed in major MCP registries.
What content does the API allow?
The platform content policy applies to API usage: all characters are fictional adults, publication passes review, and moderation applies to generated content. Full policy documentation ships with the public API docs.
How will API pricing work?
Usage-based, consistent with the product: metered pricing for conversation, voice minutes, and media generation, with quotas per key. Exact pricing publishes with the public docs.