Feature

Narrative Context Protocol (NCP)

An open-source Narrative Context format that expresses a full Dramatica Storyform so every collaborator and tool can keep your story aligned.

Introduce the protocol, see an example Storyform encoded as data, and connect to the public GitHub repo to start using it in your own workflows.

Why NCP

  • Open-source representation of a Dramatica Storyform co-developed with USC's Entertainment Technology Center.
  • Structured to keep Objective Story, Main Character, Influence Character, and Relationship Story contexts together.
  • Built to plug into tools, classrooms, and writers' rooms that want a portable, testable narrative model.

Portable Storyforms for writers, researchers, and tool builders

Example

Narrative Context snapshot

A Dramatica Storyform expressed as data that travels with your project. Keep the four Throughlines synchronized while you design beats, drafts, or diagnostics.

{
    "premise": "In a drought-stricken territory, a stateless young hydrologist must help her adopted town secure legal control of the last remaining reservoir before her looming deportation, while a guilt-ridden smuggler driven by buried desires pushes her toward choices that could transform their uneasy alliance into something far more dangerous.",
    "objective_story": {
        "domain": "Physics",
        "concern": "Obtaining",
        "issue": "Approach",
        "problem": "Pursuit",
        "solution": "Avoid",
        "story_limit": "Options",
        "outcome": "Success",
        "judgement": "Good"
    },
    "main_character": {
        "domain": "Universe",
        "concern": "Future",
        "problem": "Control"
    },
    "influence_character": {
        "domain": "Mind",
        "concern": "Subconscious",
        "problem": "Avoid"
    },
    "relationship_story": {
        "domain": "Psychology",
        "concern": "Becoming",
        "problem": "Reconsider"
    }
}

Store this alongside scripts, import it into Narrova, or feed it to your own agents so every suggestion aligns with the Storyform.

Use cases

Where NCP fits

Creative tooling

Describe a consistent Storyform that multiple assistants or services can enforce while generating beats or pages.

Education & research

Share portable Throughline examples for classes, labs, or workshops without locking to a proprietary format.

Analysis pipelines

Run structural diagnostics against drafts by comparing them to a declared Narrative Context.

How it works

Bring NCP into your workflow

Each Narrative Context file describes the state of a Storyform at a point in time. Use it to seed a new project, keep drafts aligned, or invite collaborators to explore alternatives without losing the core logic.

What the Narrative Context Protocol is

The NCP captures a Dramatica Storyform as data: four Throughlines, their Drivers, and the storywide outcome. It keeps your thematic intent intact so collaborators and AI copilots can respond with suggestions that fit.

Why it matters

Most schemas only describe events. The NCP carries the relationships between conflict, character perspective, and theme—so you can generate, analyze, and test narrative while protecting the story's spine.

How to start using it

Clone the repo, review the schema, and export or import Narrative Context files wherever you manage story data. Pair it with Narrova or your own tools to keep Storyforms synchronized.

Next steps

  • Clone narrative-first/narrative-context-protocol to review the schema.
  • Map your current Storyform into Narrative Context fields to make conflicts and outcomes explicit.
  • Plug it into Narrova, Subtxt, or your own services to keep suggestions aligned with the Storyform.